Merge branch 'master' of git://git.denx.de/u-boot-sh
[platform/kernel/u-boot.git] / drivers / pci / Kconfig
1 menuconfig PCI
2         bool "PCI support"
3         default y if PPC
4         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
9 if PCI
10
11 config DM_PCI
12         bool "Enable driver model for PCI"
13         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
20 config 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
29 config 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
39 config 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
46 config 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
54 config PCIE_DW_MVEBU
55         bool "Enable Armada-8K PCIe driver (DesignWare core)"
56         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
63 config PCI_RCAR_GEN2
64         bool "Renesas RCar Gen2 PCIe driver"
65         depends on DM_PCI
66         depends on RCAR_32
67         help
68           Say Y here if you want to enable PCIe controller support on
69           Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
70           also used to access EHCI USB controller on the SoC.
71
72 config PCI_RCAR_GEN3
73         bool "Renesas RCar Gen3 PCIe driver"
74         depends on DM_PCI
75         depends on RCAR_GEN3
76         help
77           Say Y here if you want to enable PCIe controller support on
78           Renesas RCar Gen3 SoCs.
79
80 config PCI_SANDBOX
81         bool "Sandbox PCI support"
82         depends on SANDBOX && DM_PCI
83         help
84           Support PCI on sandbox, as an emulated bus. This permits testing of
85           PCI feature such as bus scanning, device configuration and device
86           access. The available (emulated) devices are defined statically in
87           the device tree but the normal PCI scan technique is used to find
88           then.
89
90 config PCI_TEGRA
91         bool "Tegra PCI support"
92         depends on TEGRA
93         depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
94         help
95           Enable support for the PCIe controller found on some generations of
96           Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
97           3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
98           with a total of 5 lanes. Some boards require this for Ethernet
99           support to work (e.g. beaver, jetson-tk1).
100
101 config PCI_XILINX
102         bool "Xilinx AXI Bridge for PCI Express"
103         depends on DM_PCI
104         help
105           Enable support for the Xilinx AXI bridge for PCI express, an IP block
106           which can be used on some generations of Xilinx FPGAs.
107
108 config PCIE_LAYERSCAPE
109         bool "Layerscape PCIe support"
110         depends on DM_PCI
111         help
112           Support Layerscape PCIe. The Layerscape SoC may have one or several
113           PCIe controllers. The PCIe may works in RC or EP mode according to
114           RCW[HOST_AGT_PEX] setting.
115
116 config PCIE_LAYERSCAPE_GEN4
117         bool "Layerscape Gen4 PCIe support"
118         depends on DM_PCI
119         help
120           Support PCIe Gen4 on NXP Layerscape SoCs, which may have one or
121           several PCIe controllers. The PCIe controller can work in RC or
122           EP mode according to RCW[HOST_AGT_PEX] setting.
123
124 config PCIE_INTEL_FPGA
125         bool "Intel FPGA PCIe support"
126         depends on DM_PCI
127         help
128           Say Y here if you want to enable PCIe controller support on Intel
129           FPGA, example Stratix 10.
130
131 config PCI_MVEBU
132         bool "Enable Armada XP/38x PCIe driver"
133         depends on ARCH_MVEBU
134         select DM_PCI
135         select MISC
136         help
137           Say Y here if you want to enable PCIe controller support on
138           Armada XP/38x SoCs.
139
140 endif