[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 <2991707448@qq.com>
2024-05-30 17:47:56 +08:00
|
|
|
config RT_PCI_HOST_COMMON
|
|
|
|
bool "Common PCI host controller"
|
|
|
|
depends on RT_PCI_ECAM
|
|
|
|
default y
|
|
|
|
|
|
|
|
config RT_PCI_HOST_GENERIC
|
|
|
|
bool "Generic PCI host controller"
|
|
|
|
depends on RT_PCI_ECAM
|
|
|
|
select RT_PCI_HOST_COMMON
|
|
|
|
default y
|
2024-11-27 11:29:48 +08:00
|
|
|
|
|
|
|
rsource "dw/Kconfig"
|