blob: 675c2d1ef887ea8c2a420a8b4350c71805ab0eb1 [file] [log] [blame]
Thomas Petazzoni45361a42013-05-16 17:55:22 +02001menu "PCI host controller drivers"
2 depends on PCI
3
Kishon Vijay Abraham I47ff3de2014-07-22 15:23:45 -06004config PCI_DRA7XX
5 bool "TI DRA7xx PCIe controller"
6 select PCIE_DW
7 depends on OF && HAS_IOMEM && TI_PIPE3
8 help
9 Enables support for the PCIe controller in the DRA7xx SoC. There
10 are two instances of PCIe controller in DRA7xx. This controller can
11 act both as EP and RC. This reuses the Designware core.
12
Thomas Petazzoni45361a42013-05-16 17:55:22 +020013config PCI_MVEBU
14 bool "Marvell EBU PCIe controller"
Andrew Lunnc2760202014-07-10 23:36:29 +020015 depends on ARCH_MVEBU || ARCH_DOVE
Thomas Petazzoni5477a332013-08-09 12:35:50 +020016 depends on OF
Thomas Petazzoni45361a42013-05-16 17:55:22 +020017
Jingoo Han340cba62013-06-21 16:24:54 +090018config PCIE_DW
19 bool
20
21config PCI_EXYNOS
22 bool "Samsung Exynos PCIe controller"
23 depends on SOC_EXYNOS5440
24 select PCIEPORTBUS
25 select PCIE_DW
26
Sean Crossbb389192013-09-26 11:24:47 +080027config PCI_IMX6
28 bool "Freescale i.MX6 PCIe controller"
29 depends on SOC_IMX6Q
30 select PCIEPORTBUS
31 select PCIE_DW
32
Thierry Redingd1523b52013-08-09 16:49:19 +020033config PCI_TEGRA
34 bool "NVIDIA Tegra PCIe controller"
Thierry Reding44073082014-11-12 14:53:37 +010035 depends on ARCH_TEGRA && !ARM64
Thierry Reding6b1c4d72014-11-12 14:53:38 +010036 help
37 Say Y here if you want support for the PCIe host controller found
38 on NVIDIA Tegra SoCs.
Thierry Redingd1523b52013-08-09 16:49:19 +020039
Valentine Barshakba3eb9f2013-10-29 20:12:51 +040040config PCI_RCAR_GEN2
41 bool "Renesas R-Car Gen2 Internal PCI controller"
Magnus Dammef4741e2014-02-18 11:12:01 +090042 depends on ARCH_SHMOBILE || (ARM && COMPILE_TEST)
Valentine Barshakba3eb9f2013-10-29 20:12:51 +040043 help
44 Say Y here if you want internal PCI support on R-Car Gen2 SoC.
45 There are 3 internal PCI controllers available with a single
46 built-in EHCI/OHCI host controller present on each one.
47
Phil Edworthyc25da472014-05-12 11:57:48 +010048config PCI_RCAR_GEN2_PCIE
49 bool "Renesas R-Car PCIe controller"
50 depends on ARCH_SHMOBILE || (ARM && COMPILE_TEST)
51 help
52 Say Y here if you want PCIe controller support on R-Car Gen2 SoCs.
53
Will Deaconce292992013-11-22 16:14:41 +000054config PCI_HOST_GENERIC
55 bool "Generic PCI host controller"
Jayachandran Caa4a5c02015-08-05 02:23:40 +053056 depends on (ARM || ARM64) && OF
Will Deaconce292992013-11-22 16:14:41 +000057 help
58 Say Y here if you want to support a simple generic PCI host
59 controller, such as the one emulated by kvmtool.
60
Pratyush Anand51b66a62014-02-11 11:39:26 +053061config PCIE_SPEAR13XX
Sachin Kamat8d7004a2014-08-17 22:09:16 -060062 bool "STMicroelectronics SPEAr PCIe controller"
Pratyush Anand51b66a62014-02-11 11:39:26 +053063 depends on ARCH_SPEAR13XX
64 select PCIEPORTBUS
65 select PCIE_DW
66 help
67 Say Y here if you want PCIe support on SPEAr13XX SoCs.
68
Murali Karicheri0c4ffcf2014-09-02 17:26:19 -060069config PCI_KEYSTONE
70 bool "TI Keystone PCIe controller"
71 depends on ARCH_KEYSTONE
72 select PCIE_DW
73 select PCIEPORTBUS
74 help
75 Say Y here if you want to enable PCI controller support on Keystone
76 SoCs. The PCI controller on Keystone is based on Designware hardware
77 and therefore the driver re-uses the Designware core functions to
78 implement the driver.
Bjorn Helgaasa2351ef2014-09-05 10:57:20 -060079
Srikanth Thokala8961def2014-08-20 21:56:02 +053080config PCIE_XILINX
81 bool "Xilinx AXI PCIe host bridge support"
82 depends on ARCH_ZYNQ
83 help
84 Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
85 Host Bridge driver.
86
Tanmay Inamdar5f6b6cc2014-10-01 13:01:35 -060087config PCI_XGENE
88 bool "X-Gene PCIe controller"
89 depends on ARCH_XGENE
90 depends on OF
91 select PCIEPORTBUS
Duc Dangdcd19de2015-06-05 15:56:34 -050092 select PCI_MSI_IRQ_DOMAIN if PCI_MSI
Tanmay Inamdar5f6b6cc2014-10-01 13:01:35 -060093 help
94 Say Y here if you want internal PCI support on APM X-Gene SoC.
95 There are 5 internal PCIe ports available. Each port is GEN3 capable
96 and have varied lanes from x1 to x8.
97
Duc Dangdcd19de2015-06-05 15:56:34 -050098config PCI_XGENE_MSI
99 bool "X-Gene v1 PCIe MSI feature"
100 depends on PCI_XGENE && PCI_MSI
101 default y
102 help
103 Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
104 This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
105
Minghuan Lian62d0ff832014-11-05 16:45:11 +0800106config PCI_LAYERSCAPE
107 bool "Freescale Layerscape PCIe controller"
108 depends on OF && ARM
109 select PCIE_DW
110 select MFD_SYSCON
111 help
112 Say Y here if you want PCIe controller support on Layerscape SoCs.
113
Rob Herringb7e78172015-01-28 10:16:18 -0600114config PCI_VERSATILE
115 bool "ARM Versatile PB PCI controller"
116 depends on ARCH_VERSATILE
117
Ray Jui1fb37a82015-04-08 11:21:35 -0700118config PCIE_IPROC
119 tristate "Broadcom iProc PCIe controller"
120 depends on OF && ARM
121 default n
122 help
123 This enables the iProc PCIe core controller support for Broadcom's
124 iProc family of SoCs. An appropriate bus interface driver also needs
125 to be enabled
126
127config PCIE_IPROC_PLATFORM
128 tristate "Broadcom iProc PCIe platform bus driver"
129 depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
130 depends on OF
131 select PCIE_IPROC
132 default ARCH_BCM_IPROC
133 help
134 Say Y here if you want to use the Broadcom iProc PCIe controller
135 through the generic platform bus interface
136
Hauke Mehrtens4785ffb2015-05-12 23:23:01 +0200137config PCIE_IPROC_BCMA
138 bool "Broadcom iProc PCIe BCMA bus driver"
139 depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
140 select PCIE_IPROC
141 select BCMA
142 select PCI_DOMAINS
143 default ARCH_BCM_5301X
144 help
145 Say Y here if you want to use the Broadcom iProc PCIe controller
146 through the BCMA bus interface
147
Thomas Petazzoni45361a42013-05-16 17:55:22 +0200148endmenu