<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/components/drivers/pci/endpoint, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/pci/endpoint?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/pci/endpoint?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2026-07-08T06:03:38Z</updated>
<entry>
<title>drivers: pci: Fix endpoint MSI setup</title>
<updated>2026-07-08T06:03:38Z</updated>
<author>
<name>Old-Ding</name>
<email>35417409+Old-Ding@users.noreply.github.com</email>
</author>
<published>2026-07-05T20:30:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=c7f21bddeb25a37d03193054592a083e73bba37b'/>
<id>urn:sha1:c7f21bddeb25a37d03193054592a083e73bba37b</id>
<content type='text'>
rt_pci_ep_set_msi() checked the set_msix callback before calling set_msi. That rejects endpoint controllers that implement MSI without MSI-X, and can call through a NULL set_msi pointer when only MSI-X is provided.

The same helper converts a requested MSI vector count into the log2 field passed to the controller. Stop after the first value large enough for the request so smaller requests are not widened by later loop iterations.

Generated-by: OpenAI Codex
Signed-off-by: Old-Ding &lt;35417409+Old-Ding@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>[DM/PCI] Fixup the C99, 6.8.1 Labeled statements p4</title>
<updated>2025-12-04T07:53:55Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-12-01T08:33:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=4337d7fb30905601ce3d3c2a73b79976b6dcbbdd'/>
<id>urn:sha1:4337d7fb30905601ce3d3c2a73b79976b6dcbbdd</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM] Replace spinlock static init by RT_DEFINE_SPINLOCK</title>
<updated>2025-02-11T06:58:18Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-02-10T06:19:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f50607628192b7ad1828e811bba238993b9afd55'/>
<id>urn:sha1:f50607628192b7ad1828e811bba238993b9afd55</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/PCI] Add memory window pool for EP</title>
<updated>2024-11-28T01:46:58Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-11-27T09:13:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=50982cd970fc5b70830be0cb7c71b1bc50fca5b0'/>
<id>urn:sha1:50982cd970fc5b70830be0cb7c71b1bc50fca5b0</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/Feature] Basic PCI/PCIe (Peripheral Component Interconnect Express) bus</title>
<updated>2024-09-06T21:45:03Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-05-30T09:47:56Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=2168ed8e7d408aeada3427ebbb90bb8996885668'/>
<id>urn:sha1:2168ed8e7d408aeada3427ebbb90bb8996885668</id>
<content type='text'>
PCI/PCIe have better performance and more devices support, such as
NVMe, GPU, Powerful NIC (Like RDMA). PCI/PCIe can access control by
IOMMU that the virtualiztion and userspace driver will more safety.
PCI/PCIe device could hot plugging, no design modifications SoC required,
PCI/PCIe on Embedded SoC is popular now.
We make a simple framework to support them.

Feature Lists:
1.PCI INTx: the INT[A-D] pin IRQ for legacy PCI, work with platform PIC.
2.MSI/MSI-X: the message write IRQ for PCIe, work with platform's PIC.
3.PME: we only support the D0, D1, D2, D3HOT, D3COLD init by framework.
4.Endpoint: a simple EP framework for PCI FPGA or NTB function.
5.OFW: we only support work on OFW SoC, ACPI support in the future maybe.

Host controller:
1. Common PCI host controller on ECAM.
2. Generic PCI host controller on ECAM.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
</feed>
