xref: /openbmc/u-boot/drivers/pci/Kconfig (revision e51f2b14c4936daf3e3040bddb15f63d35e6d988)
1af27382eSTom Rinimenuconfig PCI
2af27382eSTom Rini	bool "PCI support"
36bf89de7SBin Meng	default y if PPC
4af27382eSTom Rini	help
5af27382eSTom Rini	  Enable support for PCI (Peripheral Interconnect Bus), a type of bus
6af27382eSTom Rini	  used on some devices to allow the CPU to communicate with its
7af27382eSTom Rini	  peripherals.
8af27382eSTom Rini
9af27382eSTom Riniif PCI
10ff3e077bSSimon Glass
11ff3e077bSSimon Glassconfig DM_PCI
12e090fdbaSMarcel Ziswiler	bool "Enable driver model for PCI"
13ff3e077bSSimon Glass	depends on DM
14ff3e077bSSimon Glass	help
15ff3e077bSSimon Glass	  Use driver model for PCI. Driver model is the new method for
16ff3e077bSSimon Glass	  orgnising devices in U-Boot. For PCI, driver model keeps track of
17ff3e077bSSimon Glass	  available PCI devices, allows scanning of PCI buses and provides
18ff3e077bSSimon Glass	  device configuration support.
19ff3e077bSSimon Glass
203ba5f74aSSimon Glassconfig DM_PCI_COMPAT
213ba5f74aSSimon Glass	bool "Enable compatible functions for PCI"
223ba5f74aSSimon Glass	depends on DM_PCI
233ba5f74aSSimon Glass	help
243ba5f74aSSimon Glass	  Enable compatibility functions for PCI so that old code can be used
253ba5f74aSSimon Glass	  with CONFIG_DM_PCI enabled. This should be used as an interim
263ba5f74aSSimon Glass	  measure when porting a board to use driver model for PCI. Once the
273ba5f74aSSimon Glass	  board is fully supported, this option should be disabled.
283ba5f74aSSimon Glass
29*e51f2b14SWilson Dingconfig PCI_AARDVARK
30*e51f2b14SWilson Ding	bool "Enable Aardvark PCIe driver"
31*e51f2b14SWilson Ding	default n
32*e51f2b14SWilson Ding	depends on DM_PCI
33*e51f2b14SWilson Ding	depends on ARMADA_3700
34*e51f2b14SWilson Ding	help
35*e51f2b14SWilson Ding	  Say Y here if you want to enable PCIe controller support on
36*e51f2b14SWilson Ding	  Armada37x0 SoCs. The PCIe controller on Armada37x0 is based on
37*e51f2b14SWilson Ding	  Aardvark hardware.
38*e51f2b14SWilson Ding
39c4762157SBin Mengconfig PCI_PNP
40c4762157SBin Meng	bool "Enable Plug & Play support for PCI"
41c4762157SBin Meng	depends on PCI || DM_PCI
42c4762157SBin Meng	default y
43c4762157SBin Meng	help
44c4762157SBin Meng	  Enable PCI memory and I/O space resource allocation and assignment.
45c4762157SBin Meng
463675cb04STuomas Tynkkynenconfig PCIE_ECAM_GENERIC
473675cb04STuomas Tynkkynen	bool "Generic ECAM-based PCI host controller support"
483675cb04STuomas Tynkkynen	default n
493675cb04STuomas Tynkkynen	depends on DM_PCI
503675cb04STuomas Tynkkynen	help
513675cb04STuomas Tynkkynen	  Say Y here if you want to enable support for generic ECAM-based
523675cb04STuomas Tynkkynen	  PCIe host controllers, such as the one emulated by QEMU.
533675cb04STuomas Tynkkynen
54182ba1a7SShadi Ammouriconfig PCIE_DW_MVEBU
55182ba1a7SShadi Ammouri	bool "Enable Armada-8K PCIe driver (DesignWare core)"
56182ba1a7SShadi Ammouri	depends on DM_PCI
57182ba1a7SShadi Ammouri	depends on ARMADA_8K
58182ba1a7SShadi Ammouri	help
59182ba1a7SShadi Ammouri	  Say Y here if you want to enable PCIe controller support on
60182ba1a7SShadi Ammouri	  Armada-8K SoCs. The PCIe controller on Armada-8K is based on
61182ba1a7SShadi Ammouri	  DesignWare hardware.
62182ba1a7SShadi Ammouri
635f14f7d7SMarek Vasutconfig PCI_RCAR_GEN2
645f14f7d7SMarek Vasut	bool "Renesas RCar Gen2 PCIe driver"
655f14f7d7SMarek Vasut	depends on DM_PCI
665f14f7d7SMarek Vasut	depends on RCAR_32
675f14f7d7SMarek Vasut	help
685f14f7d7SMarek Vasut	  Say Y here if you want to enable PCIe controller support on
695f14f7d7SMarek Vasut	  Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
705f14f7d7SMarek Vasut	  also used to access EHCI USB controller on the SoC.
715f14f7d7SMarek Vasut
72537849aaSSimon Glassconfig PCI_SANDBOX
73537849aaSSimon Glass	bool "Sandbox PCI support"
74537849aaSSimon Glass	depends on SANDBOX && DM_PCI
75537849aaSSimon Glass	help
76537849aaSSimon Glass	  Support PCI on sandbox, as an emulated bus. This permits testing of
77537849aaSSimon Glass	  PCI feature such as bus scanning, device configuration and device
78537849aaSSimon Glass	  access. The available (emulated) devices are defined statically in
79537849aaSSimon Glass	  the device tree but the normal PCI scan technique is used to find
80537849aaSSimon Glass	  then.
81537849aaSSimon Glass
82fde7e189SSimon Glassconfig PCI_TEGRA
83fde7e189SSimon Glass	bool "Tegra PCI support"
84fde7e189SSimon Glass	depends on TEGRA
85bbc5b36bSStephen Warren	depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
86fde7e189SSimon Glass	help
87fde7e189SSimon Glass	  Enable support for the PCIe controller found on some generations of
88fde7e189SSimon Glass	  Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
89fde7e189SSimon Glass	  3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
90fde7e189SSimon Glass	  with a total of 5 lanes. Some boards require this for Ethernet
91fde7e189SSimon Glass	  support to work (e.g. beaver, jetson-tk1).
92fde7e189SSimon Glass
93a29e45a9SPaul Burtonconfig PCI_XILINX
94a29e45a9SPaul Burton	bool "Xilinx AXI Bridge for PCI Express"
95a29e45a9SPaul Burton	depends on DM_PCI
96a29e45a9SPaul Burton	help
97a29e45a9SPaul Burton	  Enable support for the Xilinx AXI bridge for PCI express, an IP block
98a29e45a9SPaul Burton	  which can be used on some generations of Xilinx FPGAs.
99a29e45a9SPaul Burton
10080afc63fSMinghuan Lianconfig PCIE_LAYERSCAPE
10180afc63fSMinghuan Lian	bool "Layerscape PCIe support"
10280afc63fSMinghuan Lian	depends on DM_PCI
10380afc63fSMinghuan Lian	help
10480afc63fSMinghuan Lian	  Support Layerscape PCIe. The Layerscape SoC may have one or several
10580afc63fSMinghuan Lian	  PCIe controllers. The PCIe may works in RC or EP mode according to
10680afc63fSMinghuan Lian	  RCW[HOST_AGT_PEX] setting.
10780afc63fSMinghuan Lian
108af27382eSTom Riniendif
109