5 Enable support for PCI (Peripheral Interconnect Bus), a type of bus
6 used on some devices to allow the CPU to communicate with its
12 bool "Enable driver model for PCI"
15 Use driver model for PCI. Driver model is the new method for
16 orgnising devices in U-Boot. For PCI, driver model keeps track of
17 available PCI devices, allows scanning of PCI buses and provides
18 device configuration support.
21 bool "Enable compatible functions for PCI"
24 Enable compatibility functions for PCI so that old code can be used
25 with CONFIG_DM_PCI enabled. This should be used as an interim
26 measure when porting a board to use driver model for PCI. Once the
27 board is fully supported, this option should be disabled.
30 bool "Enable Aardvark PCIe driver"
33 depends on ARMADA_3700
35 Say Y here if you want to enable PCIe controller support on
36 Armada37x0 SoCs. The PCIe controller on Armada37x0 is based on
40 bool "Enable Plug & Play support for PCI"
41 depends on PCI || DM_PCI
44 Enable PCI memory and I/O space resource allocation and assignment.
46 config PCI_REGION_MULTI_ENTRY
47 bool "Enable Multiple entries of region type MEMORY in ranges for PCI"
48 depends on PCI || DM_PCI
51 Enable PCI memory regions to be of multiple entry. Multiple entry
52 here refers to allow more than one count of address ranges for MEMORY
53 region type. This helps to add support for SoC's like OcteonTX/TX2
54 where every peripheral is on the PCI bus.
57 bool "Enable Single Root I/O Virtualization support for PCI"
58 depends on PCI || DM_PCI
61 Say Y here if you want to enable PCI Single Root I/O Virtualization
62 capability support. This helps to enumerate Virtual Function devices
63 if available on a PCI Physical Function device and probe for
67 bool "Enable Alternate Routing-ID support for PCI"
68 depends on PCI || DM_PCI
71 Say Y here if you want to enable Alternate Routing-ID capability
72 support on PCI devices. This helps to skip some devices in BDF
73 scan that are not present.
75 config PCIE_ECAM_GENERIC
76 bool "Generic ECAM-based PCI host controller support"
80 Say Y here if you want to enable support for generic ECAM-based
81 PCIe host controllers, such as the one emulated by QEMU.
84 bool "Phytium PCIe support"
87 Say Y here if you want to enable PCIe controller support on
91 bool "Enable Armada-8K PCIe driver (DesignWare core)"
95 Say Y here if you want to enable PCIe controller support on
96 Armada-8K SoCs. The PCIe controller on Armada-8K is based on
100 bool "FSL PowerPC PCIe support"
103 Say Y here if you want to enable PCIe controller support on FSL
104 PowerPC MPC85xx, MPC86xx, B series, P series and T series SoCs.
105 This driver does not support SRIO_PCIE_BOOT feature.
108 bool "MPC85XX PowerPC PCI support"
111 Say Y here if you want to enable PCI controller support on FSL
115 bool "Renesas RCar Gen2 PCIe driver"
119 Say Y here if you want to enable PCIe controller support on
120 Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
121 also used to access EHCI USB controller on the SoC.
124 bool "Renesas RCar Gen3 PCIe driver"
128 Say Y here if you want to enable PCIe controller support on
129 Renesas RCar Gen3 SoCs.
132 bool "Sandbox PCI support"
133 depends on SANDBOX && DM_PCI
135 Support PCI on sandbox, as an emulated bus. This permits testing of
136 PCI feature such as bus scanning, device configuration and device
137 access. The available (emulated) devices are defined statically in
138 the device tree but the normal PCI scan technique is used to find
142 bool "Tegra PCI support"
143 depends on ARCH_TEGRA
144 depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
146 Enable support for the PCIe controller found on some generations of
147 Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
148 3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
149 with a total of 5 lanes. Some boards require this for Ethernet
150 support to work (e.g. beaver, jetson-tk1).
153 bool "Xilinx AXI Bridge for PCI Express"
156 Enable support for the Xilinx AXI bridge for PCI express, an IP block
157 which can be used on some generations of Xilinx FPGAs.
159 config PCIE_LAYERSCAPE
163 config PCIE_LAYERSCAPE_RC
164 bool "Layerscape PCIe Root Complex mode support"
166 select PCIE_LAYERSCAPE
168 Enable Layerscape PCIe Root Complex mode driver support. The Layerscape
169 SoC may have one or several PCIe controllers. Each controller can be
170 configured to Root Complex mode by clearing the corresponding bit of
173 config PCIE_LAYERSCAPE_EP
174 bool "Layerscape PCIe Endpoint mode support"
176 select PCIE_LAYERSCAPE
179 Enable Layerscape PCIe Endpoint mode driver support. The Layerscape
180 SoC may have one or several PCIe controllers. Each controller can be
181 configured to Endpoint mode by setting the corresponding bit of
184 config PCIE_LAYERSCAPE_GEN4
185 bool "Layerscape Gen4 PCIe support"
188 Support PCIe Gen4 on NXP Layerscape SoCs, which may have one or
189 several PCIe controllers. The PCIe controller can work in RC or
190 EP mode according to RCW[HOST_AGT_PEX] setting.
192 config FSL_PCIE_COMPAT
193 string "PCIe compatible of Kernel DT"
194 depends on PCIE_LAYERSCAPE_RC || PCIE_LAYERSCAPE_GEN4
195 default "fsl,ls1012a-pcie" if ARCH_LS1012A
196 default "fsl,ls1028a-pcie" if ARCH_LS1028A
197 default "fsl,ls1043a-pcie" if ARCH_LS1043A
198 default "fsl,ls1046a-pcie" if ARCH_LS1046A
199 default "fsl,ls2080a-pcie" if ARCH_LS2080A
200 default "fsl,ls1088a-pcie" if ARCH_LS1088A
201 default "fsl,lx2160a-pcie" if ARCH_LX2160A
202 default "fsl,ls1021a-pcie" if ARCH_LS1021A
204 This compatible is used to find pci controller node in Kernel DT
207 config FSL_PCIE_EP_COMPAT
208 string "PCIe EP compatible of Kernel DT"
209 depends on PCIE_LAYERSCAPE_RC || PCIE_LAYERSCAPE_GEN4
210 default "fsl,lx2160a-pcie-ep" if ARCH_LX2160A
211 default "fsl,ls-pcie-ep"
213 This compatible is used to find pci controller ep node in Kernel DT
216 config PCIE_INTEL_FPGA
217 bool "Intel FPGA PCIe support"
220 Say Y here if you want to enable PCIe controller support on Intel
221 FPGA, example Stratix 10.
224 bool "Iproc PCIe support"
227 Broadcom iProc PCIe controller driver.
228 Say Y here if you want to enable Broadcom iProc PCIe controller,
231 bool "Enable Armada XP/38x PCIe driver"
232 depends on ARCH_MVEBU
236 Say Y here if you want to enable PCIe controller support on
240 bool "TI Keystone PCIe controller"
243 Say Y here if you want to enable PCI controller support on AM654 SoC.
246 bool "MediaTek PCIe Gen2 controller"
248 depends on ARCH_MEDIATEK
250 Say Y here if you want to enable Gen2 PCIe controller,
251 which could be found on MT7623 SoC family.
254 bool "Enable Rockchip PCIe driver"
256 select PHY_ROCKCHIP_PCIE
257 default y if ROCKCHIP_RK3399
259 Say Y here if you want to enable PCIe controller support on
263 bool "Broadcom STB PCIe controller"
265 depends on ARCH_BCM283X
267 Say Y here if you want to enable support for PCIe controller
268 on Broadcom set-top-box (STB) SoCs.
269 This driver currently supports only BCM2711 SoC and RC mode