xref: /openbmc/u-boot/drivers/pci/Kconfig (revision baa29d5ecc47e6b32a3422c897dcbe30e7209e2b)
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
29e51f2b14SWilson Dingconfig PCI_AARDVARK
30e51f2b14SWilson Ding	bool "Enable Aardvark PCIe driver"
31e51f2b14SWilson Ding	default n
32e51f2b14SWilson Ding	depends on DM_PCI
33e51f2b14SWilson Ding	depends on ARMADA_3700
34e51f2b14SWilson Ding	help
35e51f2b14SWilson Ding	  Say Y here if you want to enable PCIe controller support on
36e51f2b14SWilson Ding	  Armada37x0 SoCs. The PCIe controller on Armada37x0 is based on
37e51f2b14SWilson Ding	  Aardvark hardware.
38e51f2b14SWilson 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
46*09fa5f07Sryan_chenconfig PCIE_ASPEED
47*09fa5f07Sryan_chen	bool "Enable Aspeed PCIe driver"
48*09fa5f07Sryan_chen	depends on DM_PCI
49*09fa5f07Sryan_chen	depends on ARCH_ASPEED
50*09fa5f07Sryan_chen	help
51*09fa5f07Sryan_chen	  Say Y here if you want to enable PCIe controller support on
52*09fa5f07Sryan_chen          Aspeed SoCs.
53*09fa5f07Sryan_chen
543675cb04STuomas Tynkkynenconfig PCIE_ECAM_GENERIC
553675cb04STuomas Tynkkynen	bool "Generic ECAM-based PCI host controller support"
563675cb04STuomas Tynkkynen	default n
573675cb04STuomas Tynkkynen	depends on DM_PCI
583675cb04STuomas Tynkkynen	help
593675cb04STuomas Tynkkynen	  Say Y here if you want to enable support for generic ECAM-based
603675cb04STuomas Tynkkynen	  PCIe host controllers, such as the one emulated by QEMU.
613675cb04STuomas Tynkkynen
62182ba1a7SShadi Ammouriconfig PCIE_DW_MVEBU
63182ba1a7SShadi Ammouri	bool "Enable Armada-8K PCIe driver (DesignWare core)"
64182ba1a7SShadi Ammouri	depends on DM_PCI
65182ba1a7SShadi Ammouri	depends on ARMADA_8K
66182ba1a7SShadi Ammouri	help
67182ba1a7SShadi Ammouri	  Say Y here if you want to enable PCIe controller support on
68182ba1a7SShadi Ammouri	  Armada-8K SoCs. The PCIe controller on Armada-8K is based on
69182ba1a7SShadi Ammouri	  DesignWare hardware.
70182ba1a7SShadi Ammouri
715f14f7d7SMarek Vasutconfig PCI_RCAR_GEN2
725f14f7d7SMarek Vasut	bool "Renesas RCar Gen2 PCIe driver"
735f14f7d7SMarek Vasut	depends on DM_PCI
745f14f7d7SMarek Vasut	depends on RCAR_32
755f14f7d7SMarek Vasut	help
765f14f7d7SMarek Vasut	  Say Y here if you want to enable PCIe controller support on
775f14f7d7SMarek Vasut	  Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
785f14f7d7SMarek Vasut	  also used to access EHCI USB controller on the SoC.
795f14f7d7SMarek Vasut
80537849aaSSimon Glassconfig PCI_SANDBOX
81537849aaSSimon Glass	bool "Sandbox PCI support"
82537849aaSSimon Glass	depends on SANDBOX && DM_PCI
83537849aaSSimon Glass	help
84537849aaSSimon Glass	  Support PCI on sandbox, as an emulated bus. This permits testing of
85537849aaSSimon Glass	  PCI feature such as bus scanning, device configuration and device
86537849aaSSimon Glass	  access. The available (emulated) devices are defined statically in
87537849aaSSimon Glass	  the device tree but the normal PCI scan technique is used to find
88537849aaSSimon Glass	  then.
89537849aaSSimon Glass
90fde7e189SSimon Glassconfig PCI_TEGRA
91fde7e189SSimon Glass	bool "Tegra PCI support"
92fde7e189SSimon Glass	depends on TEGRA
93bbc5b36bSStephen Warren	depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
94fde7e189SSimon Glass	help
95fde7e189SSimon Glass	  Enable support for the PCIe controller found on some generations of
96fde7e189SSimon Glass	  Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
97fde7e189SSimon Glass	  3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
98fde7e189SSimon Glass	  with a total of 5 lanes. Some boards require this for Ethernet
99fde7e189SSimon Glass	  support to work (e.g. beaver, jetson-tk1).
100fde7e189SSimon Glass
101a29e45a9SPaul Burtonconfig PCI_XILINX
102a29e45a9SPaul Burton	bool "Xilinx AXI Bridge for PCI Express"
103a29e45a9SPaul Burton	depends on DM_PCI
104a29e45a9SPaul Burton	help
105a29e45a9SPaul Burton	  Enable support for the Xilinx AXI bridge for PCI express, an IP block
106a29e45a9SPaul Burton	  which can be used on some generations of Xilinx FPGAs.
107a29e45a9SPaul Burton
10880afc63fSMinghuan Lianconfig PCIE_LAYERSCAPE
10980afc63fSMinghuan Lian	bool "Layerscape PCIe support"
11080afc63fSMinghuan Lian	depends on DM_PCI
11180afc63fSMinghuan Lian	help
11280afc63fSMinghuan Lian	  Support Layerscape PCIe. The Layerscape SoC may have one or several
11380afc63fSMinghuan Lian	  PCIe controllers. The PCIe may works in RC or EP mode according to
11480afc63fSMinghuan Lian	  RCW[HOST_AGT_PEX] setting.
11580afc63fSMinghuan Lian
1167c45862fSLey Foon Tanconfig PCIE_INTEL_FPGA
1177c45862fSLey Foon Tan	bool "Intel FPGA PCIe support"
1187c45862fSLey Foon Tan	depends on DM_PCI
1197c45862fSLey Foon Tan	help
1207c45862fSLey Foon Tan	  Say Y here if you want to enable PCIe controller support on Intel
1217c45862fSLey Foon Tan	  FPGA, example Stratix 10.
1227c45862fSLey Foon Tan
12394f453eaSStefan Roeseconfig PCI_MVEBU
12494f453eaSStefan Roese	bool "Enable Armada XP/38x PCIe driver"
12594f453eaSStefan Roese	depends on ARCH_MVEBU
12694f453eaSStefan Roese	select DM_PCI
12794f453eaSStefan Roese	select MISC
12894f453eaSStefan Roese	help
12994f453eaSStefan Roese	  Say Y here if you want to enable PCIe controller support on
13094f453eaSStefan Roese	  Armada XP/38x SoCs.
13194f453eaSStefan Roese
132af27382eSTom Riniendif
133