Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame] | 1 | menu "PCI host controller drivers" |
| 2 | depends on PCI |
| 3 | |
| 4 | config PCI_DRA7XX |
| 5 | bool "TI DRA7xx PCIe controller" |
| 6 | select PCIE_DW |
| 7 | depends on OF && HAS_IOMEM && TI_PIPE3 |
| 8 | depends on BROKEN |
| 9 | help |
| 10 | Enables support for the PCIe controller in the DRA7xx SoC. There |
| 11 | are two instances of PCIe controller in DRA7xx. This controller can |
| 12 | act both as EP and RC. This reuses the Designware core. |
| 13 | |
| 14 | config PCI_MVEBU |
| 15 | bool "Marvell EBU PCIe controller" |
| 16 | depends on ARCH_MVEBU || ARCH_DOVE |
| 17 | depends on OF |
| 18 | |
| 19 | config PCIE_DW |
| 20 | bool |
| 21 | |
| 22 | config PCI_EXYNOS |
| 23 | bool "Samsung Exynos PCIe controller" |
| 24 | depends on SOC_EXYNOS5440 |
| 25 | select PCIEPORTBUS |
| 26 | select PCIE_DW |
| 27 | |
| 28 | config PCI_IMX6 |
| 29 | bool "Freescale i.MX6 PCIe controller" |
| 30 | depends on SOC_IMX6Q |
| 31 | select PCIEPORTBUS |
| 32 | select PCIE_DW |
| 33 | |
| 34 | config PCI_TEGRA |
| 35 | bool "NVIDIA Tegra PCIe controller" |
| 36 | depends on ARCH_TEGRA && !ARM64 |
| 37 | help |
| 38 | Say Y here if you want support for the PCIe host controller found |
| 39 | on NVIDIA Tegra SoCs. |
| 40 | |
| 41 | config PCI_RCAR_GEN2 |
| 42 | bool "Renesas R-Car Gen2 Internal PCI controller" |
| 43 | depends on ARM |
| 44 | depends on ARCH_SHMOBILE || COMPILE_TEST |
| 45 | help |
| 46 | Say Y here if you want internal PCI support on R-Car Gen2 SoC. |
| 47 | There are 3 internal PCI controllers available with a single |
| 48 | built-in EHCI/OHCI host controller present on each one. |
| 49 | |
| 50 | config PCI_RCAR_GEN2_PCIE |
| 51 | bool "Renesas R-Car PCIe controller" |
| 52 | depends on ARM |
| 53 | depends on ARCH_SHMOBILE || COMPILE_TEST |
| 54 | help |
| 55 | Say Y here if you want PCIe controller support on R-Car Gen2 SoCs. |
| 56 | |
| 57 | config PCI_HOST_GENERIC |
| 58 | bool "Generic PCI host controller" |
| 59 | depends on (ARM || ARM64) && OF |
| 60 | help |
| 61 | Say Y here if you want to support a simple generic PCI host |
| 62 | controller, such as the one emulated by kvmtool. |
| 63 | |
| 64 | config PCIE_SPEAR13XX |
| 65 | bool "STMicroelectronics SPEAr PCIe controller" |
| 66 | depends on ARCH_SPEAR13XX |
| 67 | select PCIEPORTBUS |
| 68 | select PCIE_DW |
| 69 | help |
| 70 | Say Y here if you want PCIe support on SPEAr13XX SoCs. |
| 71 | |
| 72 | config PCI_KEYSTONE |
| 73 | bool "TI Keystone PCIe controller" |
| 74 | depends on ARCH_KEYSTONE |
| 75 | select PCIE_DW |
| 76 | select PCIEPORTBUS |
| 77 | help |
| 78 | Say Y here if you want to enable PCI controller support on Keystone |
| 79 | SoCs. The PCI controller on Keystone is based on Designware hardware |
| 80 | and therefore the driver re-uses the Designware core functions to |
| 81 | implement the driver. |
| 82 | |
| 83 | config PCIE_XILINX |
| 84 | bool "Xilinx AXI PCIe host bridge support" |
| 85 | depends on ARCH_ZYNQ |
| 86 | help |
| 87 | Say 'Y' here if you want kernel to support the Xilinx AXI PCIe |
| 88 | Host Bridge driver. |
| 89 | |
| 90 | config PCI_XGENE |
| 91 | bool "X-Gene PCIe controller" |
| 92 | depends on ARCH_XGENE |
| 93 | depends on OF |
| 94 | select PCIEPORTBUS |
| 95 | select PCI_MSI_IRQ_DOMAIN if PCI_MSI |
| 96 | help |
| 97 | Say Y here if you want internal PCI support on APM X-Gene SoC. |
| 98 | There are 5 internal PCIe ports available. Each port is GEN3 capable |
| 99 | and have varied lanes from x1 to x8. |
| 100 | |
| 101 | config PCI_XGENE_MSI |
| 102 | bool "X-Gene v1 PCIe MSI feature" |
| 103 | depends on PCI_XGENE && PCI_MSI |
| 104 | default y |
| 105 | help |
| 106 | Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC. |
| 107 | This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC. |
| 108 | |
| 109 | config PCI_LAYERSCAPE |
| 110 | bool "Freescale Layerscape PCIe controller" |
| 111 | depends on OF && (ARM || ARCH_LAYERSCAPE) |
| 112 | select PCIE_DW |
| 113 | select MFD_SYSCON |
| 114 | help |
| 115 | Say Y here if you want PCIe controller support on Layerscape SoCs. |
| 116 | |
| 117 | config PCI_VERSATILE |
| 118 | bool "ARM Versatile PB PCI controller" |
| 119 | depends on ARCH_VERSATILE |
| 120 | |
| 121 | config PCIE_IPROC |
| 122 | tristate "Broadcom iProc PCIe controller" |
| 123 | depends on OF && (ARM || ARM64) |
| 124 | default n |
| 125 | help |
| 126 | This enables the iProc PCIe core controller support for Broadcom's |
| 127 | iProc family of SoCs. An appropriate bus interface driver also needs |
| 128 | to be enabled |
| 129 | |
| 130 | config PCIE_IPROC_PLATFORM |
| 131 | tristate "Broadcom iProc PCIe platform bus driver" |
| 132 | depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST) |
| 133 | depends on OF |
| 134 | select PCIE_IPROC |
| 135 | default ARCH_BCM_IPROC |
| 136 | help |
| 137 | Say Y here if you want to use the Broadcom iProc PCIe controller |
| 138 | through the generic platform bus interface |
| 139 | |
| 140 | config PCIE_IPROC_BCMA |
| 141 | tristate "Broadcom iProc PCIe BCMA bus driver" |
| 142 | depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST) |
| 143 | select PCIE_IPROC |
| 144 | select BCMA |
| 145 | select PCI_DOMAINS |
| 146 | default ARCH_BCM_5301X |
| 147 | help |
| 148 | Say Y here if you want to use the Broadcom iProc PCIe controller |
| 149 | through the BCMA bus interface |
| 150 | |
| 151 | config PCIE_ALTERA |
| 152 | bool "Altera PCIe controller" |
| 153 | depends on ARM || NIOS2 |
| 154 | depends on OF_PCI |
| 155 | select PCI_DOMAINS |
| 156 | help |
| 157 | Say Y here if you want to enable PCIe controller support on Altera |
| 158 | FPGA. |
| 159 | |
| 160 | config PCIE_ALTERA_MSI |
| 161 | bool "Altera PCIe MSI feature" |
| 162 | depends on PCIE_ALTERA && PCI_MSI |
| 163 | select PCI_MSI_IRQ_DOMAIN |
| 164 | help |
| 165 | Say Y here if you want PCIe MSI support for the Altera FPGA. |
| 166 | This MSI driver supports Altera MSI to GIC controller IP. |
| 167 | |
| 168 | config PCI_HISI |
| 169 | depends on OF && ARM64 |
| 170 | bool "HiSilicon SoC HIP05 PCIe controller" |
| 171 | select PCIEPORTBUS |
| 172 | select PCIE_DW |
| 173 | help |
| 174 | Say Y here if you want PCIe controller support on HiSilicon HIP05 SoC |
| 175 | |
| 176 | endmenu |