blob: 3954353e3e2e10372ded5584bf0315b2b0307a14 [file] [log] [blame]
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +05301menu "DesignWare PCI Core Support"
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +05302
3config PCIE_DW
4 bool
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +05305
6config PCIE_DW_HOST
7 bool
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +05308 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +05309 depends on PCI_MSI_IRQ_DOMAIN
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053010 select PCIE_DW
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053011
Kishon Vijay Abraham If8aed6e2017-03-27 15:15:05 +053012config PCIE_DW_EP
13 bool
14 depends on PCI_ENDPOINT
15 select PCIE_DW
16
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053017config PCI_DRA7XX
Niklas Casselb0528352017-12-20 00:29:28 +010018 bool
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053019
20config PCI_DRA7XX_HOST
Niklas Casselb0528352017-12-20 00:29:28 +010021 bool "TI DRA7xx PCIe controller Host Mode"
22 depends on SOC_DRA7XX || COMPILE_TEST
23 depends on PCI && PCI_MSI_IRQ_DOMAIN
24 depends on OF && HAS_IOMEM && TI_PIPE3
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053025 select PCIE_DW_HOST
Niklas Casselb0528352017-12-20 00:29:28 +010026 select PCI_DRA7XX
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053027 default y
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053028 help
Niklas Casselb0528352017-12-20 00:29:28 +010029 Enables support for the PCIe controller in the DRA7xx SoC to work in
30 host mode. There are two instances of PCIe controller in DRA7xx.
31 This controller can work either as EP or RC. In order to enable
32 host-specific features PCI_DRA7XX_HOST must be selected and in order
33 to enable device-specific features PCI_DRA7XX_EP must be selected.
34 This uses the DesignWare core.
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053035
36config PCI_DRA7XX_EP
Niklas Casselb0528352017-12-20 00:29:28 +010037 bool "TI DRA7xx PCIe controller Endpoint Mode"
38 depends on SOC_DRA7XX || COMPILE_TEST
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053039 depends on PCI_ENDPOINT
Niklas Casselb0528352017-12-20 00:29:28 +010040 depends on OF && HAS_IOMEM && TI_PIPE3
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053041 select PCIE_DW_EP
Niklas Casselb0528352017-12-20 00:29:28 +010042 select PCI_DRA7XX
Kishon Vijay Abraham I608793e2017-03-27 15:15:08 +053043 help
Niklas Casselb0528352017-12-20 00:29:28 +010044 Enables support for the PCIe controller in the DRA7xx SoC to work in
45 endpoint mode. There are two instances of PCIe controller in DRA7xx.
46 This controller can work either as EP or RC. In order to enable
47 host-specific features PCI_DRA7XX_HOST must be selected and in order
48 to enable device-specific features PCI_DRA7XX_EP must be selected.
49 This uses the DesignWare core.
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053050
51config PCIE_DW_PLAT
52 bool "Platform bus based DesignWare PCIe Controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +053053 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053054 depends on PCI_MSI_IRQ_DOMAIN
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053055 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053056 ---help---
57 This selects the DesignWare PCIe controller support. Select this if
58 you have a PCIe controller on Platform bus.
59
60 If you have a controller with this interface, say Y or M here.
61
62 If unsure, say N.
63
64config PCI_EXYNOS
65 bool "Samsung Exynos PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +053066 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053067 depends on SOC_EXYNOS5440
68 depends on PCI_MSI_IRQ_DOMAIN
69 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053070 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053071
72config PCI_IMX6
73 bool "Freescale i.MX6 PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +053074 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053075 depends on SOC_IMX6Q
76 depends on PCI_MSI_IRQ_DOMAIN
77 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053078 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053079
80config PCIE_SPEAR13XX
81 bool "STMicroelectronics SPEAr PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +053082 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053083 depends on ARCH_SPEAR13XX
84 depends on PCI_MSI_IRQ_DOMAIN
85 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053086 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053087 help
88 Say Y here if you want PCIe support on SPEAr13XX SoCs.
89
90config PCI_KEYSTONE
91 bool "TI Keystone PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +053092 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053093 depends on ARCH_KEYSTONE
94 depends on PCI_MSI_IRQ_DOMAIN
95 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +053096 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +053097 help
98 Say Y here if you want to enable PCI controller support on Keystone
Bjorn Helgaas96291d52017-09-01 16:35:50 -050099 SoCs. The PCI controller on Keystone is based on DesignWare hardware
100 and therefore the driver re-uses the DesignWare core functions to
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530101 implement the driver.
102
103config PCI_LAYERSCAPE
104 bool "Freescale Layerscape PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +0530105 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530106 depends on OF && (ARM || ARCH_LAYERSCAPE)
107 depends on PCI_MSI_IRQ_DOMAIN
108 select MFD_SYSCON
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +0530109 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530110 help
111 Say Y here if you want PCIe controller support on Layerscape SoCs.
112
113config PCI_HISI
114 depends on OF && ARM64
115 bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +0530116 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530117 depends on PCI_MSI_IRQ_DOMAIN
118 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +0530119 select PCIE_DW_HOST
Arnd Bergmann6665f8a2017-04-03 16:17:11 -0500120 select PCI_HOST_COMMON
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530121 help
122 Say Y here if you want PCIe controller support on HiSilicon
123 Hip05 and Hip06 SoCs
124
125config PCIE_QCOM
126 bool "Qualcomm PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +0530127 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530128 depends on ARCH_QCOM && OF
129 depends on PCI_MSI_IRQ_DOMAIN
130 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +0530131 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530132 help
133 Say Y here to enable PCIe controller support on Qualcomm SoCs. The
Bjorn Helgaas96291d52017-09-01 16:35:50 -0500134 PCIe controller uses the DesignWare core plus Qualcomm-specific
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530135 hardware wrappers.
136
137config PCIE_ARMADA_8K
138 bool "Marvell Armada-8K PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +0530139 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530140 depends on ARCH_MVEBU
141 depends on PCI_MSI_IRQ_DOMAIN
142 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +0530143 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530144 help
145 Say Y here if you want to enable PCIe controller support on
146 Armada-8K SoCs. The PCIe controller on Armada-8K is based on
Bjorn Helgaas96291d52017-09-01 16:35:50 -0500147 DesignWare hardware and therefore the driver re-uses the
148 DesignWare core functions to implement the driver.
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530149
150config PCIE_ARTPEC6
151 bool "Axis ARTPEC-6 PCIe controller"
Kishon Vijay Abraham I7a2b3f02017-02-15 18:48:19 +0530152 depends on PCI
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530153 depends on MACH_ARTPEC6
154 depends on PCI_MSI_IRQ_DOMAIN
155 select PCIEPORTBUS
Kishon Vijay Abraham Ia0560202017-02-15 18:48:18 +0530156 select PCIE_DW_HOST
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530157 help
158 Say Y here to enable PCIe controller support on Axis ARTPEC-6
159 SoCs. This PCIe controller uses the DesignWare core.
160
Xiaowei Songfc5165d2017-06-19 18:23:48 +0800161config PCIE_KIRIN
162 depends on OF && ARM64
163 bool "HiSilicon Kirin series SoCs PCIe controllers"
164 depends on PCI
165 select PCIEPORTBUS
166 select PCIE_DW_HOST
167 help
168 Say Y here if you want PCIe controller support
169 on HiSilicon Kirin series SoCs.
170
Jianguo Sunbbd11bd2017-10-23 19:17:50 +0800171config PCIE_HISI_STB
172 bool "HiSilicon STB SoCs PCIe controllers"
173 depends on ARCH_HISI
174 depends on PCI
175 depends on PCI_MSI_IRQ_DOMAIN
176 select PCIEPORTBUS
177 select PCIE_DW_HOST
178 help
179 Say Y here if you want PCIe controller support on HiSilicon STB SoCs
180
Kishon Vijay Abraham I950bf632017-01-06 18:22:48 +0530181endmenu