Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at v4.8-rc7 277 lines 7.8 kB view raw
1menu "PCI host controller drivers" 2 depends on PCI 3 4config PCI_DRA7XX 5 bool "TI DRA7xx PCIe controller" 6 depends on OF && HAS_IOMEM && TI_PIPE3 7 depends on PCI_MSI_IRQ_DOMAIN 8 select PCIE_DW 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 14config PCI_MVEBU 15 bool "Marvell EBU PCIe controller" 16 depends on ARCH_MVEBU || ARCH_DOVE 17 depends on ARM 18 depends on OF 19 20config PCI_AARDVARK 21 bool "Aardvark PCIe controller" 22 depends on ARCH_MVEBU && ARM64 23 depends on OF 24 depends on PCI_MSI_IRQ_DOMAIN 25 help 26 Add support for Aardvark 64bit PCIe Host Controller. This 27 controller is part of the South Bridge of the Marvel Armada 28 3700 SoC. 29 30config PCIE_XILINX_NWL 31 bool "NWL PCIe Core" 32 depends on ARCH_ZYNQMP 33 depends on PCI_MSI_IRQ_DOMAIN 34 help 35 Say 'Y' here if you want kernel support for Xilinx 36 NWL PCIe controller. The controller can act as Root Port 37 or End Point. The current option selection will only 38 support root port enabling. 39 40config PCIE_DW_PLAT 41 bool "Platform bus based DesignWare PCIe Controller" 42 depends on PCI_MSI_IRQ_DOMAIN 43 select PCIE_DW 44 ---help--- 45 This selects the DesignWare PCIe controller support. Select this if 46 you have a PCIe controller on Platform bus. 47 48 If you have a controller with this interface, say Y or M here. 49 50 If unsure, say N. 51 52config PCIE_DW 53 bool 54 depends on PCI_MSI_IRQ_DOMAIN 55 56config PCI_EXYNOS 57 bool "Samsung Exynos PCIe controller" 58 depends on SOC_EXYNOS5440 59 depends on PCI_MSI_IRQ_DOMAIN 60 select PCIEPORTBUS 61 select PCIE_DW 62 63config PCI_IMX6 64 bool "Freescale i.MX6 PCIe controller" 65 depends on SOC_IMX6Q 66 depends on PCI_MSI_IRQ_DOMAIN 67 select PCIEPORTBUS 68 select PCIE_DW 69 70config PCI_TEGRA 71 bool "NVIDIA Tegra PCIe controller" 72 depends on ARCH_TEGRA && !ARM64 73 help 74 Say Y here if you want support for the PCIe host controller found 75 on NVIDIA Tegra SoCs. 76 77config PCI_RCAR_GEN2 78 bool "Renesas R-Car Gen2 Internal PCI controller" 79 depends on ARM 80 depends on ARCH_RENESAS || COMPILE_TEST 81 help 82 Say Y here if you want internal PCI support on R-Car Gen2 SoC. 83 There are 3 internal PCI controllers available with a single 84 built-in EHCI/OHCI host controller present on each one. 85 86config PCIE_RCAR 87 bool "Renesas R-Car PCIe controller" 88 depends on ARCH_RENESAS || (ARM && COMPILE_TEST) 89 depends on PCI_MSI_IRQ_DOMAIN 90 help 91 Say Y here if you want PCIe controller support on R-Car SoCs. 92 93config PCI_HOST_COMMON 94 bool 95 select PCI_ECAM 96 97config PCI_HOST_GENERIC 98 bool "Generic PCI host controller" 99 depends on (ARM || ARM64) && OF 100 select PCI_HOST_COMMON 101 select IRQ_DOMAIN 102 help 103 Say Y here if you want to support a simple generic PCI host 104 controller, such as the one emulated by kvmtool. 105 106config PCIE_SPEAR13XX 107 bool "STMicroelectronics SPEAr PCIe controller" 108 depends on ARCH_SPEAR13XX 109 depends on PCI_MSI_IRQ_DOMAIN 110 select PCIEPORTBUS 111 select PCIE_DW 112 help 113 Say Y here if you want PCIe support on SPEAr13XX SoCs. 114 115config PCI_KEYSTONE 116 bool "TI Keystone PCIe controller" 117 depends on ARCH_KEYSTONE 118 depends on PCI_MSI_IRQ_DOMAIN 119 select PCIE_DW 120 select PCIEPORTBUS 121 help 122 Say Y here if you want to enable PCI controller support on Keystone 123 SoCs. The PCI controller on Keystone is based on Designware hardware 124 and therefore the driver re-uses the Designware core functions to 125 implement the driver. 126 127config PCIE_XILINX 128 bool "Xilinx AXI PCIe host bridge support" 129 depends on ARCH_ZYNQ || MICROBLAZE 130 help 131 Say 'Y' here if you want kernel to support the Xilinx AXI PCIe 132 Host Bridge driver. 133 134config PCI_XGENE 135 bool "X-Gene PCIe controller" 136 depends on ARCH_XGENE 137 depends on OF 138 select PCIEPORTBUS 139 help 140 Say Y here if you want internal PCI support on APM X-Gene SoC. 141 There are 5 internal PCIe ports available. Each port is GEN3 capable 142 and have varied lanes from x1 to x8. 143 144config PCI_XGENE_MSI 145 bool "X-Gene v1 PCIe MSI feature" 146 depends on PCI_XGENE 147 depends on PCI_MSI_IRQ_DOMAIN 148 default y 149 help 150 Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC. 151 This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC. 152 153config PCI_LAYERSCAPE 154 bool "Freescale Layerscape PCIe controller" 155 depends on OF && (ARM || ARCH_LAYERSCAPE) 156 depends on PCI_MSI_IRQ_DOMAIN 157 select PCIE_DW 158 select MFD_SYSCON 159 help 160 Say Y here if you want PCIe controller support on Layerscape SoCs. 161 162config PCI_VERSATILE 163 bool "ARM Versatile PB PCI controller" 164 depends on ARCH_VERSATILE 165 166config PCIE_IPROC 167 tristate 168 help 169 This enables the iProc PCIe core controller support for Broadcom's 170 iProc family of SoCs. An appropriate bus interface driver needs 171 to be enabled to select this. 172 173config PCIE_IPROC_PLATFORM 174 tristate "Broadcom iProc PCIe platform bus driver" 175 depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST) 176 depends on OF 177 select PCIE_IPROC 178 default ARCH_BCM_IPROC 179 help 180 Say Y here if you want to use the Broadcom iProc PCIe controller 181 through the generic platform bus interface 182 183config PCIE_IPROC_BCMA 184 tristate "Broadcom iProc PCIe BCMA bus driver" 185 depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST) 186 select PCIE_IPROC 187 select BCMA 188 select PCI_DOMAINS 189 default ARCH_BCM_5301X 190 help 191 Say Y here if you want to use the Broadcom iProc PCIe controller 192 through the BCMA bus interface 193 194config PCIE_IPROC_MSI 195 bool "Broadcom iProc PCIe MSI support" 196 depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA 197 depends on PCI_MSI_IRQ_DOMAIN 198 default ARCH_BCM_IPROC 199 help 200 Say Y here if you want to enable MSI support for Broadcom's iProc 201 PCIe controller 202 203config PCIE_ALTERA 204 bool "Altera PCIe controller" 205 depends on ARM || NIOS2 206 depends on OF_PCI 207 select PCI_DOMAINS 208 help 209 Say Y here if you want to enable PCIe controller support on Altera 210 FPGA. 211 212config PCIE_ALTERA_MSI 213 bool "Altera PCIe MSI feature" 214 depends on PCIE_ALTERA 215 depends on PCI_MSI_IRQ_DOMAIN 216 help 217 Say Y here if you want PCIe MSI support for the Altera FPGA. 218 This MSI driver supports Altera MSI to GIC controller IP. 219 220config PCI_HISI 221 depends on OF && ARM64 222 bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" 223 depends on PCI_MSI_IRQ_DOMAIN 224 select PCIEPORTBUS 225 select PCIE_DW 226 help 227 Say Y here if you want PCIe controller support on HiSilicon 228 Hip05 and Hip06 SoCs 229 230config PCIE_QCOM 231 bool "Qualcomm PCIe controller" 232 depends on ARCH_QCOM && OF 233 depends on PCI_MSI_IRQ_DOMAIN 234 select PCIE_DW 235 select PCIEPORTBUS 236 help 237 Say Y here to enable PCIe controller support on Qualcomm SoCs. The 238 PCIe controller uses the Designware core plus Qualcomm-specific 239 hardware wrappers. 240 241config PCI_HOST_THUNDER_PEM 242 bool "Cavium Thunder PCIe controller to off-chip devices" 243 depends on OF && ARM64 244 select PCI_HOST_COMMON 245 help 246 Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs. 247 248config PCI_HOST_THUNDER_ECAM 249 bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon" 250 depends on OF && ARM64 251 select PCI_HOST_COMMON 252 help 253 Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. 254 255config PCIE_ARMADA_8K 256 bool "Marvell Armada-8K PCIe controller" 257 depends on ARCH_MVEBU 258 depends on PCI_MSI_IRQ_DOMAIN 259 select PCIE_DW 260 select PCIEPORTBUS 261 help 262 Say Y here if you want to enable PCIe controller support on 263 Armada-8K SoCs. The PCIe controller on Armada-8K is based on 264 Designware hardware and therefore the driver re-uses the 265 Designware core functions to implement the driver. 266 267config PCIE_ARTPEC6 268 bool "Axis ARTPEC-6 PCIe controller" 269 depends on MACH_ARTPEC6 270 depends on PCI_MSI_IRQ_DOMAIN 271 select PCIE_DW 272 select PCIEPORTBUS 273 help 274 Say Y here to enable PCIe controller support on Axis ARTPEC-6 275 SoCs. This PCIe controller uses the DesignWare core. 276 277endmenu