Tom Rini | f48e025 | 2016-10-26 17:15:37 -0400 | [diff] [blame] | 1 | menuconfig PCI |
| 2 | bool "PCI support" |
Bin Meng | 00a17fd | 2017-07-30 06:23:09 -0700 | [diff] [blame] | 3 | default y if PPC |
Tom Rini | f48e025 | 2016-10-26 17:15:37 -0400 | [diff] [blame] | 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 |
Simon Glass | b94dc89 | 2015-03-05 12:25:25 -0700 | [diff] [blame] | 10 | |
| 11 | config DM_PCI |
Marcel Ziswiler | 84c4560 | 2016-12-19 15:38:05 +0100 | [diff] [blame] | 12 | bool "Enable driver model for PCI" |
Simon Glass | b94dc89 | 2015-03-05 12:25:25 -0700 | [diff] [blame] | 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 | |
Simon Glass | eca7b0d | 2015-11-26 19:51:30 -0700 | [diff] [blame] | 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 | |
Wilson Ding | a6bdc86 | 2018-03-26 15:57:29 +0800 | [diff] [blame] | 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 | |
Bin Meng | 2f49e2e | 2016-10-16 23:35:18 -0700 | [diff] [blame] | 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 | |
Tuomas Tynkkynen | a765f71 | 2017-09-19 23:18:06 +0300 | [diff] [blame] | 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 | |
Shadi Ammouri | 3b38645 | 2016-10-27 13:29:41 +0200 | [diff] [blame] | 54 | config PCIE_DW_MVEBU |
| 55 | bool "Enable Armada-8K PCIe driver (DesignWare core)" |
Shadi Ammouri | 3b38645 | 2016-10-27 13:29:41 +0200 | [diff] [blame] | 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 | |
Marek Vasut | 5012d1e | 2018-01-18 14:35:35 +0100 | [diff] [blame] | 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 | |
Simon Glass | 4d85755 | 2015-03-05 12:25:27 -0700 | [diff] [blame] | 72 | config PCI_SANDBOX |
| 73 | bool "Sandbox PCI support" |
| 74 | depends on SANDBOX && DM_PCI |
| 75 | help |
| 76 | Support PCI on sandbox, as an emulated bus. This permits testing of |
| 77 | PCI feature such as bus scanning, device configuration and device |
| 78 | access. The available (emulated) devices are defined statically in |
| 79 | the device tree but the normal PCI scan technique is used to find |
| 80 | then. |
| 81 | |
Simon Glass | c78e327 | 2015-11-19 20:26:55 -0700 | [diff] [blame] | 82 | config PCI_TEGRA |
| 83 | bool "Tegra PCI support" |
| 84 | depends on TEGRA |
Stephen Warren | 86f6a94 | 2016-08-05 16:10:34 -0600 | [diff] [blame] | 85 | depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186) |
Simon Glass | c78e327 | 2015-11-19 20:26:55 -0700 | [diff] [blame] | 86 | help |
| 87 | Enable support for the PCIe controller found on some generations of |
| 88 | Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has |
| 89 | 3 root ports with a total of 6 lanes and Tegra124 has 2 root ports |
| 90 | with a total of 5 lanes. Some boards require this for Ethernet |
| 91 | support to work (e.g. beaver, jetson-tk1). |
| 92 | |
Paul Burton | c893f21 | 2016-09-08 07:47:31 +0100 | [diff] [blame] | 93 | config PCI_XILINX |
| 94 | bool "Xilinx AXI Bridge for PCI Express" |
| 95 | depends on DM_PCI |
| 96 | help |
| 97 | Enable support for the Xilinx AXI bridge for PCI express, an IP block |
| 98 | which can be used on some generations of Xilinx FPGAs. |
| 99 | |
Minghuan Lian | c106784 | 2016-12-13 14:54:17 +0800 | [diff] [blame] | 100 | config PCIE_LAYERSCAPE |
| 101 | bool "Layerscape PCIe support" |
| 102 | depends on DM_PCI |
| 103 | help |
| 104 | Support Layerscape PCIe. The Layerscape SoC may have one or several |
| 105 | PCIe controllers. The PCIe may works in RC or EP mode according to |
| 106 | RCW[HOST_AGT_PEX] setting. |
| 107 | |
Ley Foon Tan | dc05e63 | 2018-04-20 21:55:45 +0800 | [diff] [blame] | 108 | config PCIE_INTEL_FPGA |
| 109 | bool "Intel FPGA PCIe support" |
| 110 | depends on DM_PCI |
| 111 | help |
| 112 | Say Y here if you want to enable PCIe controller support on Intel |
| 113 | FPGA, example Stratix 10. |
| 114 | |
Tom Rini | f48e025 | 2016-10-26 17:15:37 -0400 | [diff] [blame] | 115 | endif |