16e0832faSShawn Lin# SPDX-License-Identifier: GPL-2.0 26e0832faSShawn Lin 36e0832faSShawn Linmenu "DesignWare PCI Core Support" 46e0832faSShawn Lin depends on PCI 56e0832faSShawn Lin 66e0832faSShawn Linconfig PCIE_DW 76e0832faSShawn Lin bool 86e0832faSShawn Lin 96e0832faSShawn Linconfig PCIE_DW_HOST 106e0832faSShawn Lin bool 116e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 126e0832faSShawn Lin select PCIE_DW 136e0832faSShawn Lin 146e0832faSShawn Linconfig PCIE_DW_EP 156e0832faSShawn Lin bool 166e0832faSShawn Lin depends on PCI_ENDPOINT 176e0832faSShawn Lin select PCIE_DW 186e0832faSShawn Lin 196e0832faSShawn Linconfig PCI_DRA7XX 206e0832faSShawn Lin bool 216e0832faSShawn Lin 226e0832faSShawn Linconfig PCI_DRA7XX_HOST 236e0832faSShawn Lin bool "TI DRA7xx PCIe controller Host Mode" 246e0832faSShawn Lin depends on SOC_DRA7XX || COMPILE_TEST 256e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 266e0832faSShawn Lin depends on OF && HAS_IOMEM && TI_PIPE3 276e0832faSShawn Lin select PCIE_DW_HOST 286e0832faSShawn Lin select PCI_DRA7XX 296e0832faSShawn Lin default y 306e0832faSShawn Lin help 316e0832faSShawn Lin Enables support for the PCIe controller in the DRA7xx SoC to work in 326e0832faSShawn Lin host mode. There are two instances of PCIe controller in DRA7xx. 336e0832faSShawn Lin This controller can work either as EP or RC. In order to enable 346e0832faSShawn Lin host-specific features PCI_DRA7XX_HOST must be selected and in order 356e0832faSShawn Lin to enable device-specific features PCI_DRA7XX_EP must be selected. 366e0832faSShawn Lin This uses the DesignWare core. 376e0832faSShawn Lin 386e0832faSShawn Linconfig PCI_DRA7XX_EP 396e0832faSShawn Lin bool "TI DRA7xx PCIe controller Endpoint Mode" 406e0832faSShawn Lin depends on SOC_DRA7XX || COMPILE_TEST 416e0832faSShawn Lin depends on PCI_ENDPOINT 426e0832faSShawn Lin depends on OF && HAS_IOMEM && TI_PIPE3 436e0832faSShawn Lin select PCIE_DW_EP 446e0832faSShawn Lin select PCI_DRA7XX 456e0832faSShawn Lin help 466e0832faSShawn Lin Enables support for the PCIe controller in the DRA7xx SoC to work in 476e0832faSShawn Lin endpoint mode. There are two instances of PCIe controller in DRA7xx. 486e0832faSShawn Lin This controller can work either as EP or RC. In order to enable 496e0832faSShawn Lin host-specific features PCI_DRA7XX_HOST must be selected and in order 506e0832faSShawn Lin to enable device-specific features PCI_DRA7XX_EP must be selected. 516e0832faSShawn Lin This uses the DesignWare core. 526e0832faSShawn Lin 536e0832faSShawn Linconfig PCIE_DW_PLAT 546e0832faSShawn Lin bool 556e0832faSShawn Lin 566e0832faSShawn Linconfig PCIE_DW_PLAT_HOST 576e0832faSShawn Lin bool "Platform bus based DesignWare PCIe Controller - Host mode" 586e0832faSShawn Lin depends on PCI && PCI_MSI_IRQ_DOMAIN 596e0832faSShawn Lin select PCIE_DW_HOST 606e0832faSShawn Lin select PCIE_DW_PLAT 616e0832faSShawn Lin help 626e0832faSShawn Lin Enables support for the PCIe controller in the Designware IP to 636e0832faSShawn Lin work in host mode. There are two instances of PCIe controller in 646e0832faSShawn Lin Designware IP. 656e0832faSShawn Lin This controller can work either as EP or RC. In order to enable 666e0832faSShawn Lin host-specific features PCIE_DW_PLAT_HOST must be selected and in 676e0832faSShawn Lin order to enable device-specific features PCI_DW_PLAT_EP must be 686e0832faSShawn Lin selected. 696e0832faSShawn Lin 706e0832faSShawn Linconfig PCIE_DW_PLAT_EP 716e0832faSShawn Lin bool "Platform bus based DesignWare PCIe Controller - Endpoint mode" 726e0832faSShawn Lin depends on PCI && PCI_MSI_IRQ_DOMAIN 736e0832faSShawn Lin depends on PCI_ENDPOINT 746e0832faSShawn Lin select PCIE_DW_EP 756e0832faSShawn Lin select PCIE_DW_PLAT 766e0832faSShawn Lin help 776e0832faSShawn Lin Enables support for the PCIe controller in the Designware IP to 786e0832faSShawn Lin work in endpoint mode. There are two instances of PCIe controller 796e0832faSShawn Lin in Designware IP. 806e0832faSShawn Lin This controller can work either as EP or RC. In order to enable 816e0832faSShawn Lin host-specific features PCIE_DW_PLAT_HOST must be selected and in 826e0832faSShawn Lin order to enable device-specific features PCI_DW_PLAT_EP must be 836e0832faSShawn Lin selected. 846e0832faSShawn Lin 856e0832faSShawn Linconfig PCI_EXYNOS 866e0832faSShawn Lin bool "Samsung Exynos PCIe controller" 876e0832faSShawn Lin depends on SOC_EXYNOS5440 || COMPILE_TEST 886e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 896e0832faSShawn Lin select PCIE_DW_HOST 906e0832faSShawn Lin 916e0832faSShawn Linconfig PCI_IMX6 926e0832faSShawn Lin bool "Freescale i.MX6 PCIe controller" 936e0832faSShawn Lin depends on SOC_IMX6Q || (ARM && COMPILE_TEST) 946e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 956e0832faSShawn Lin select PCIE_DW_HOST 966e0832faSShawn Lin 976e0832faSShawn Linconfig PCIE_SPEAR13XX 986e0832faSShawn Lin bool "STMicroelectronics SPEAr PCIe controller" 996e0832faSShawn Lin depends on ARCH_SPEAR13XX || COMPILE_TEST 1006e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1016e0832faSShawn Lin select PCIE_DW_HOST 1026e0832faSShawn Lin help 1036e0832faSShawn Lin Say Y here if you want PCIe support on SPEAr13XX SoCs. 1046e0832faSShawn Lin 1056e0832faSShawn Linconfig PCI_KEYSTONE 1066e0832faSShawn Lin bool "TI Keystone PCIe controller" 1076e0832faSShawn Lin depends on ARCH_KEYSTONE || (ARM && COMPILE_TEST) 1086e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1096e0832faSShawn Lin select PCIE_DW_HOST 1106e0832faSShawn Lin help 1116e0832faSShawn Lin Say Y here if you want to enable PCI controller support on Keystone 1126e0832faSShawn Lin SoCs. The PCI controller on Keystone is based on DesignWare hardware 1136e0832faSShawn Lin and therefore the driver re-uses the DesignWare core functions to 1146e0832faSShawn Lin implement the driver. 1156e0832faSShawn Lin 1166e0832faSShawn Linconfig PCI_LAYERSCAPE 1176e0832faSShawn Lin bool "Freescale Layerscape PCIe controller" 1186e0832faSShawn Lin depends on OF && (ARM || ARCH_LAYERSCAPE || COMPILE_TEST) 1196e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1206e0832faSShawn Lin select MFD_SYSCON 1216e0832faSShawn Lin select PCIE_DW_HOST 1226e0832faSShawn Lin help 1236e0832faSShawn Lin Say Y here if you want PCIe controller support on Layerscape SoCs. 1246e0832faSShawn Lin 1256e0832faSShawn Linconfig PCI_HISI 1266e0832faSShawn Lin depends on OF && (ARM64 || COMPILE_TEST) 1276e0832faSShawn Lin bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" 1286e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1296e0832faSShawn Lin select PCIE_DW_HOST 1306e0832faSShawn Lin select PCI_HOST_COMMON 1316e0832faSShawn Lin help 1326e0832faSShawn Lin Say Y here if you want PCIe controller support on HiSilicon 1336e0832faSShawn Lin Hip05 and Hip06 SoCs 1346e0832faSShawn Lin 1356e0832faSShawn Linconfig PCIE_QCOM 1366e0832faSShawn Lin bool "Qualcomm PCIe controller" 1376e0832faSShawn Lin depends on OF && (ARCH_QCOM || COMPILE_TEST) 1386e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1396e0832faSShawn Lin select PCIE_DW_HOST 1406e0832faSShawn Lin help 1416e0832faSShawn Lin Say Y here to enable PCIe controller support on Qualcomm SoCs. The 1426e0832faSShawn Lin PCIe controller uses the DesignWare core plus Qualcomm-specific 1436e0832faSShawn Lin hardware wrappers. 1446e0832faSShawn Lin 1456e0832faSShawn Linconfig PCIE_ARMADA_8K 1466e0832faSShawn Lin bool "Marvell Armada-8K PCIe controller" 1476e0832faSShawn Lin depends on ARCH_MVEBU || COMPILE_TEST 1486e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1496e0832faSShawn Lin select PCIE_DW_HOST 1506e0832faSShawn Lin help 1516e0832faSShawn Lin Say Y here if you want to enable PCIe controller support on 1526e0832faSShawn Lin Armada-8K SoCs. The PCIe controller on Armada-8K is based on 1536e0832faSShawn Lin DesignWare hardware and therefore the driver re-uses the 1546e0832faSShawn Lin DesignWare core functions to implement the driver. 1556e0832faSShawn Lin 1566e0832faSShawn Linconfig PCIE_ARTPEC6 1576e0832faSShawn Lin bool 1586e0832faSShawn Lin 1596e0832faSShawn Linconfig PCIE_ARTPEC6_HOST 1606e0832faSShawn Lin bool "Axis ARTPEC-6 PCIe controller Host Mode" 1616e0832faSShawn Lin depends on MACH_ARTPEC6 || COMPILE_TEST 1626e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1636e0832faSShawn Lin select PCIE_DW_HOST 1646e0832faSShawn Lin select PCIE_ARTPEC6 1656e0832faSShawn Lin help 1666e0832faSShawn Lin Enables support for the PCIe controller in the ARTPEC-6 SoC to work in 1676e0832faSShawn Lin host mode. This uses the DesignWare core. 1686e0832faSShawn Lin 1696e0832faSShawn Linconfig PCIE_ARTPEC6_EP 1706e0832faSShawn Lin bool "Axis ARTPEC-6 PCIe controller Endpoint Mode" 1716e0832faSShawn Lin depends on MACH_ARTPEC6 || COMPILE_TEST 1726e0832faSShawn Lin depends on PCI_ENDPOINT 1736e0832faSShawn Lin select PCIE_DW_EP 1746e0832faSShawn Lin select PCIE_ARTPEC6 1756e0832faSShawn Lin help 1766e0832faSShawn Lin Enables support for the PCIe controller in the ARTPEC-6 SoC to work in 1776e0832faSShawn Lin endpoint mode. This uses the DesignWare core. 1786e0832faSShawn Lin 1796e0832faSShawn Linconfig PCIE_KIRIN 1806e0832faSShawn Lin depends on OF && (ARM64 || COMPILE_TEST) 1816e0832faSShawn Lin bool "HiSilicon Kirin series SoCs PCIe controllers" 1826e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1836e0832faSShawn Lin select PCIE_DW_HOST 1846e0832faSShawn Lin help 1856e0832faSShawn Lin Say Y here if you want PCIe controller support 1866e0832faSShawn Lin on HiSilicon Kirin series SoCs. 1876e0832faSShawn Lin 1886e0832faSShawn Linconfig PCIE_HISI_STB 1896e0832faSShawn Lin bool "HiSilicon STB SoCs PCIe controllers" 1906e0832faSShawn Lin depends on ARCH_HISI || COMPILE_TEST 1916e0832faSShawn Lin depends on PCI_MSI_IRQ_DOMAIN 1926e0832faSShawn Lin select PCIE_DW_HOST 1936e0832faSShawn Lin help 1946e0832faSShawn Lin Say Y here if you want PCIe controller support on HiSilicon STB SoCs 1956e0832faSShawn Lin 196*9c0ef6d3SYue Wangconfig PCI_MESON 197*9c0ef6d3SYue Wang bool "MESON PCIe controller" 198*9c0ef6d3SYue Wang depends on PCI_MSI_IRQ_DOMAIN 199*9c0ef6d3SYue Wang select PCIE_DW_HOST 200*9c0ef6d3SYue Wang help 201*9c0ef6d3SYue Wang Say Y here if you want to enable PCI controller support on Amlogic 202*9c0ef6d3SYue Wang SoCs. The PCI controller on Amlogic is based on DesignWare hardware 203*9c0ef6d3SYue Wang and therefore the driver re-uses the DesignWare core functions to 204*9c0ef6d3SYue Wang implement the driver. 205*9c0ef6d3SYue Wang 2066e0832faSShawn Linendmenu 207