Skip to content

Commit 2168ed8

Browse files
GuEe-GUImysterywolf
authored andcommitted
[DM/Feature] Basic PCI/PCIe (Peripheral Component Interconnect Express) bus
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 <[email protected]>
1 parent 802a6ed commit 2168ed8

File tree

27 files changed

+7430
-0
lines changed

27 files changed

+7430
-0
lines changed

components/drivers/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ rsource "hwcrypto/Kconfig"
2323
rsource "wlan/Kconfig"
2424
rsource "virtio/Kconfig"
2525
rsource "ofw/Kconfig"
26+
rsource "pci/Kconfig"
2627
rsource "pic/Kconfig"
2728
rsource "pin/Kconfig"
2829
rsource "pinctrl/Kconfig"

0 commit comments

Comments
 (0)