PCI: designware: Add driver for prototyping kits based on ARC SDP
[linux-2.6-block.git] / drivers / pci / host / Kconfig
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_PLAT
20         bool "Platform bus based DesignWare PCIe Controller"
21         select PCIE_DW
22         ---help---
23          This selects the DesignWare PCIe controller support. Select this if
24          you have a PCIe controller on Platform bus.
25
26          If you have a controller with this interface, say Y or M here.
27
28          If unsure, say N.
29
30 config PCIE_DW
31         bool
32
33 config PCI_EXYNOS
34         bool "Samsung Exynos PCIe controller"
35         depends on SOC_EXYNOS5440
36         select PCIEPORTBUS
37         select PCIE_DW
38
39 config PCI_IMX6
40         bool "Freescale i.MX6 PCIe controller"
41         depends on SOC_IMX6Q
42         select PCIEPORTBUS
43         select PCIE_DW
44
45 config PCI_TEGRA
46         bool "NVIDIA Tegra PCIe controller"
47         depends on ARCH_TEGRA && !ARM64
48         help
49           Say Y here if you want support for the PCIe host controller found
50           on NVIDIA Tegra SoCs.
51
52 config PCI_RCAR_GEN2
53         bool "Renesas R-Car Gen2 Internal PCI controller"
54         depends on ARM
55         depends on ARCH_SHMOBILE || COMPILE_TEST
56         help
57           Say Y here if you want internal PCI support on R-Car Gen2 SoC.
58           There are 3 internal PCI controllers available with a single
59           built-in EHCI/OHCI host controller present on each one.
60
61 config PCI_RCAR_GEN2_PCIE
62         bool "Renesas R-Car PCIe controller"
63         depends on ARCH_SHMOBILE || (ARM && COMPILE_TEST)
64         help
65           Say Y here if you want PCIe controller support on R-Car Gen2 SoCs.
66
67 config PCI_HOST_GENERIC
68         bool "Generic PCI host controller"
69         depends on (ARM || ARM64) && OF
70         help
71           Say Y here if you want to support a simple generic PCI host
72           controller, such as the one emulated by kvmtool.
73
74 config PCIE_SPEAR13XX
75         bool "STMicroelectronics SPEAr PCIe controller"
76         depends on ARCH_SPEAR13XX
77         select PCIEPORTBUS
78         select PCIE_DW
79         help
80           Say Y here if you want PCIe support on SPEAr13XX SoCs.
81
82 config PCI_KEYSTONE
83         bool "TI Keystone PCIe controller"
84         depends on ARCH_KEYSTONE
85         select PCIE_DW
86         select PCIEPORTBUS
87         help
88           Say Y here if you want to enable PCI controller support on Keystone
89           SoCs. The PCI controller on Keystone is based on Designware hardware
90           and therefore the driver re-uses the Designware core functions to
91           implement the driver.
92
93 config PCIE_XILINX
94         bool "Xilinx AXI PCIe host bridge support"
95         depends on ARCH_ZYNQ
96         help
97           Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
98           Host Bridge driver.
99
100 config PCI_XGENE
101         bool "X-Gene PCIe controller"
102         depends on ARCH_XGENE
103         depends on OF
104         select PCIEPORTBUS
105         select PCI_MSI_IRQ_DOMAIN if PCI_MSI
106         help
107           Say Y here if you want internal PCI support on APM X-Gene SoC.
108           There are 5 internal PCIe ports available. Each port is GEN3 capable
109           and have varied lanes from x1 to x8.
110
111 config PCI_XGENE_MSI
112         bool "X-Gene v1 PCIe MSI feature"
113         depends on PCI_XGENE && PCI_MSI
114         default y
115         help
116           Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
117           This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
118
119 config PCI_LAYERSCAPE
120         bool "Freescale Layerscape PCIe controller"
121         depends on OF && (ARM || ARCH_LAYERSCAPE)
122         select PCIE_DW
123         select MFD_SYSCON
124         help
125           Say Y here if you want PCIe controller support on Layerscape SoCs.
126
127 config PCI_VERSATILE
128         bool "ARM Versatile PB PCI controller"
129         depends on ARCH_VERSATILE
130
131 config PCIE_IPROC
132         tristate
133         help
134           This enables the iProc PCIe core controller support for Broadcom's
135           iProc family of SoCs. An appropriate bus interface driver needs
136           to be enabled to select this.
137
138 config PCIE_IPROC_PLATFORM
139         tristate "Broadcom iProc PCIe platform bus driver"
140         depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
141         depends on OF
142         select PCIE_IPROC
143         default ARCH_BCM_IPROC
144         help
145           Say Y here if you want to use the Broadcom iProc PCIe controller
146           through the generic platform bus interface
147
148 config PCIE_IPROC_BCMA
149         tristate "Broadcom iProc PCIe BCMA bus driver"
150         depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
151         select PCIE_IPROC
152         select BCMA
153         select PCI_DOMAINS
154         default ARCH_BCM_5301X
155         help
156           Say Y here if you want to use the Broadcom iProc PCIe controller
157           through the BCMA bus interface
158
159 config PCIE_IPROC_MSI
160         bool "Broadcom iProc PCIe MSI support"
161         depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
162         depends on PCI_MSI
163         select PCI_MSI_IRQ_DOMAIN
164         default ARCH_BCM_IPROC
165         help
166           Say Y here if you want to enable MSI support for Broadcom's iProc
167           PCIe controller
168
169 config PCIE_ALTERA
170         bool "Altera PCIe controller"
171         depends on ARM || NIOS2
172         depends on OF_PCI
173         select PCI_DOMAINS
174         help
175           Say Y here if you want to enable PCIe controller support on Altera
176           FPGA.
177
178 config PCIE_ALTERA_MSI
179         bool "Altera PCIe MSI feature"
180         depends on PCIE_ALTERA && PCI_MSI
181         select PCI_MSI_IRQ_DOMAIN
182         help
183           Say Y here if you want PCIe MSI support for the Altera FPGA.
184           This MSI driver supports Altera MSI to GIC controller IP.
185
186 config PCI_HISI
187         depends on OF && ARM64
188         bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
189         select PCIEPORTBUS
190         select PCIE_DW
191         help
192           Say Y here if you want PCIe controller support on HiSilicon
193           Hip05 and Hip06 SoCs
194
195 config PCIE_QCOM
196         bool "Qualcomm PCIe controller"
197         depends on ARCH_QCOM && OF
198         select PCIE_DW
199         select PCIEPORTBUS
200         help
201           Say Y here to enable PCIe controller support on Qualcomm SoCs. The
202           PCIe controller uses the Designware core plus Qualcomm-specific
203           hardware wrappers.
204
205 endmenu