blob: bdfc0c17963ffdfe7021b7690dc6809899b075c9 [file] [log] [blame]
Tom Rinif48e0252016-10-26 17:15:37 -04001menuconfig PCI
2 bool "PCI support"
Bin Meng00a17fd2017-07-30 06:23:09 -07003 default y if PPC
Tom Rinif48e0252016-10-26 17:15:37 -04004 help
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
7 peripherals.
8
9if PCI
Simon Glassb94dc892015-03-05 12:25:25 -070010
11config DM_PCI
Marcel Ziswiler84c45602016-12-19 15:38:05 +010012 bool "Enable driver model for PCI"
Simon Glassb94dc892015-03-05 12:25:25 -070013 depends on DM
14 help
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.
19
Simon Glasseca7b0d2015-11-26 19:51:30 -070020config DM_PCI_COMPAT
21 bool "Enable compatible functions for PCI"
22 depends on DM_PCI
23 help
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.
28
Wilson Dinga6bdc862018-03-26 15:57:29 +080029config PCI_AARDVARK
30 bool "Enable Aardvark PCIe driver"
31 default n
32 depends on DM_PCI
33 depends on ARMADA_3700
34 help
35 Say Y here if you want to enable PCIe controller support on
36 Armada37x0 SoCs. The PCIe controller on Armada37x0 is based on
37 Aardvark hardware.
38
Bin Meng2f49e2e2016-10-16 23:35:18 -070039config PCI_PNP
40 bool "Enable Plug & Play support for PCI"
41 depends on PCI || DM_PCI
42 default y
43 help
44 Enable PCI memory and I/O space resource allocation and assignment.
45
Tuomas Tynkkynena765f712017-09-19 23:18:06 +030046config PCIE_ECAM_GENERIC
47 bool "Generic ECAM-based PCI host controller support"
48 default n
49 depends on DM_PCI
50 help
51 Say Y here if you want to enable support for generic ECAM-based
52 PCIe host controllers, such as the one emulated by QEMU.
53
Shadi Ammouri3b386452016-10-27 13:29:41 +020054config PCIE_DW_MVEBU
55 bool "Enable Armada-8K PCIe driver (DesignWare core)"
Shadi Ammouri3b386452016-10-27 13:29:41 +020056 depends on DM_PCI
57 depends on ARMADA_8K
58 help
59 Say Y here if you want to enable PCIe controller support on
60 Armada-8K SoCs. The PCIe controller on Armada-8K is based on
61 DesignWare hardware.
62
Hou Zhiqiang25ff98c2019-04-24 22:33:02 +080063config PCIE_FSL
64 bool "FSL PowerPC PCIe support"
65 depends on DM_PCI
66 help
67 Say Y here if you want to enable PCIe controller support on FSL
68 PowerPC MPC85xx, MPC86xx, B series, P series and T series SoCs.
69 This driver does not support SRIO_PCIE_BOOT feature.
70
Marek Vasut5012d1e2018-01-18 14:35:35 +010071config PCI_RCAR_GEN2
72 bool "Renesas RCar Gen2 PCIe driver"
73 depends on DM_PCI
74 depends on RCAR_32
75 help
76 Say Y here if you want to enable PCIe controller support on
77 Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
78 also used to access EHCI USB controller on the SoC.
79
Marek Vasut879b4a32018-10-16 12:49:19 +020080config PCI_RCAR_GEN3
81 bool "Renesas RCar Gen3 PCIe driver"
82 depends on DM_PCI
83 depends on RCAR_GEN3
84 help
85 Say Y here if you want to enable PCIe controller support on
86 Renesas RCar Gen3 SoCs.
87
Simon Glass4d857552015-03-05 12:25:27 -070088config PCI_SANDBOX
89 bool "Sandbox PCI support"
90 depends on SANDBOX && DM_PCI
91 help
92 Support PCI on sandbox, as an emulated bus. This permits testing of
93 PCI feature such as bus scanning, device configuration and device
94 access. The available (emulated) devices are defined statically in
95 the device tree but the normal PCI scan technique is used to find
96 then.
97
Simon Glassc78e3272015-11-19 20:26:55 -070098config PCI_TEGRA
99 bool "Tegra PCI support"
100 depends on TEGRA
Stephen Warren86f6a942016-08-05 16:10:34 -0600101 depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
Simon Glassc78e3272015-11-19 20:26:55 -0700102 help
103 Enable support for the PCIe controller found on some generations of
104 Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
105 3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
106 with a total of 5 lanes. Some boards require this for Ethernet
107 support to work (e.g. beaver, jetson-tk1).
108
Paul Burtonc893f212016-09-08 07:47:31 +0100109config PCI_XILINX
110 bool "Xilinx AXI Bridge for PCI Express"
111 depends on DM_PCI
112 help
113 Enable support for the Xilinx AXI bridge for PCI express, an IP block
114 which can be used on some generations of Xilinx FPGAs.
115
Minghuan Lianc1067842016-12-13 14:54:17 +0800116config PCIE_LAYERSCAPE
117 bool "Layerscape PCIe support"
118 depends on DM_PCI
119 help
120 Support Layerscape PCIe. The Layerscape SoC may have one or several
121 PCIe controllers. The PCIe may works in RC or EP mode according to
122 RCW[HOST_AGT_PEX] setting.
123
Hou Zhiqiange5d79c42019-04-08 10:15:46 +0000124config PCIE_LAYERSCAPE_GEN4
125 bool "Layerscape Gen4 PCIe support"
126 depends on DM_PCI
127 help
128 Support PCIe Gen4 on NXP Layerscape SoCs, which may have one or
129 several PCIe controllers. The PCIe controller can work in RC or
130 EP mode according to RCW[HOST_AGT_PEX] setting.
131
Ley Foon Tandc05e632018-04-20 21:55:45 +0800132config PCIE_INTEL_FPGA
133 bool "Intel FPGA PCIe support"
134 depends on DM_PCI
135 help
136 Say Y here if you want to enable PCIe controller support on Intel
137 FPGA, example Stratix 10.
138
Stefan Roese3179ec62019-01-25 11:52:43 +0100139config PCI_MVEBU
140 bool "Enable Armada XP/38x PCIe driver"
141 depends on ARCH_MVEBU
142 select DM_PCI
143 select MISC
144 help
145 Say Y here if you want to enable PCIe controller support on
146 Armada XP/38x SoCs.
147
Sekhar Nori18db23d2019-08-01 19:12:57 +0530148config PCI_KEYSTONE
149 bool "TI Keystone PCIe controller"
150 depends on DM_PCI
151 help
152 Say Y here if you want to enable PCI controller support on AM654 SoC.
153
Tom Rinif48e0252016-10-26 17:15:37 -0400154endif