2018-01-26 17:45:16 +00:00
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
|
2017-01-06 12:52:48 +00:00
|
|
|
menu "DesignWare PCI Core Support"
|
2018-05-11 17:15:29 +00:00
|
|
|
depends on PCI
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCIE_DW
|
|
|
|
bool
|
2017-02-15 13:18:18 +00:00
|
|
|
|
|
|
|
config PCIE_DW_HOST
|
|
|
|
bool
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW
|
2017-01-06 12:52:48 +00:00
|
|
|
|
2017-03-27 09:45:05 +00:00
|
|
|
config PCIE_DW_EP
|
|
|
|
bool
|
|
|
|
depends on PCI_ENDPOINT
|
|
|
|
select PCIE_DW
|
|
|
|
|
2017-01-06 12:52:48 +00:00
|
|
|
config PCI_DRA7XX
|
2017-12-19 23:29:28 +00:00
|
|
|
bool
|
2017-03-27 09:45:08 +00:00
|
|
|
|
|
|
|
config PCI_DRA7XX_HOST
|
2017-12-19 23:29:28 +00:00
|
|
|
bool "TI DRA7xx PCIe controller Host Mode"
|
|
|
|
depends on SOC_DRA7XX || COMPILE_TEST
|
2018-05-11 17:15:29 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-12-19 23:29:28 +00:00
|
|
|
depends on OF && HAS_IOMEM && TI_PIPE3
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-12-19 23:29:28 +00:00
|
|
|
select PCI_DRA7XX
|
2017-03-27 09:45:08 +00:00
|
|
|
default y
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
2017-12-19 23:29:28 +00:00
|
|
|
Enables support for the PCIe controller in the DRA7xx SoC to work in
|
|
|
|
host mode. There are two instances of PCIe controller in DRA7xx.
|
|
|
|
This controller can work either as EP or RC. In order to enable
|
|
|
|
host-specific features PCI_DRA7XX_HOST must be selected and in order
|
|
|
|
to enable device-specific features PCI_DRA7XX_EP must be selected.
|
|
|
|
This uses the DesignWare core.
|
2017-03-27 09:45:08 +00:00
|
|
|
|
|
|
|
config PCI_DRA7XX_EP
|
2017-12-19 23:29:28 +00:00
|
|
|
bool "TI DRA7xx PCIe controller Endpoint Mode"
|
|
|
|
depends on SOC_DRA7XX || COMPILE_TEST
|
2017-03-27 09:45:08 +00:00
|
|
|
depends on PCI_ENDPOINT
|
2017-12-19 23:29:28 +00:00
|
|
|
depends on OF && HAS_IOMEM && TI_PIPE3
|
2017-03-27 09:45:08 +00:00
|
|
|
select PCIE_DW_EP
|
2017-12-19 23:29:28 +00:00
|
|
|
select PCI_DRA7XX
|
2017-03-27 09:45:08 +00:00
|
|
|
help
|
2017-12-19 23:29:28 +00:00
|
|
|
Enables support for the PCIe controller in the DRA7xx SoC to work in
|
|
|
|
endpoint mode. There are two instances of PCIe controller in DRA7xx.
|
|
|
|
This controller can work either as EP or RC. In order to enable
|
|
|
|
host-specific features PCI_DRA7XX_HOST must be selected and in order
|
|
|
|
to enable device-specific features PCI_DRA7XX_EP must be selected.
|
|
|
|
This uses the DesignWare core.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCIE_DW_PLAT
|
2018-05-15 14:41:42 +00:00
|
|
|
bool
|
2017-01-06 12:52:48 +00:00
|
|
|
|
2018-05-15 14:41:42 +00:00
|
|
|
config PCIE_DW_PLAT_HOST
|
|
|
|
bool "Platform bus based DesignWare PCIe Controller - Host mode"
|
|
|
|
depends on PCI && PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
select PCIE_DW_PLAT
|
|
|
|
help
|
|
|
|
Enables support for the PCIe controller in the Designware IP to
|
|
|
|
work in host mode. There are two instances of PCIe controller in
|
|
|
|
Designware IP.
|
|
|
|
This controller can work either as EP or RC. In order to enable
|
|
|
|
host-specific features PCIE_DW_PLAT_HOST must be selected and in
|
|
|
|
order to enable device-specific features PCI_DW_PLAT_EP must be
|
|
|
|
selected.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
2018-05-15 14:41:42 +00:00
|
|
|
config PCIE_DW_PLAT_EP
|
|
|
|
bool "Platform bus based DesignWare PCIe Controller - Endpoint mode"
|
|
|
|
depends on PCI && PCI_MSI_IRQ_DOMAIN
|
|
|
|
depends on PCI_ENDPOINT
|
|
|
|
select PCIE_DW_EP
|
|
|
|
select PCIE_DW_PLAT
|
|
|
|
help
|
|
|
|
Enables support for the PCIe controller in the Designware IP to
|
|
|
|
work in endpoint mode. There are two instances of PCIe controller
|
|
|
|
in Designware IP.
|
|
|
|
This controller can work either as EP or RC. In order to enable
|
|
|
|
host-specific features PCIE_DW_PLAT_HOST must be selected and in
|
|
|
|
order to enable device-specific features PCI_DW_PLAT_EP must be
|
|
|
|
selected.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCI_EXYNOS
|
|
|
|
bool "Samsung Exynos PCIe controller"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on SOC_EXYNOS5440 || COMPILE_TEST
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCI_IMX6
|
2019-02-02 00:15:23 +00:00
|
|
|
bool "Freescale i.MX6/7/8 PCIe controller"
|
2019-03-11 18:59:28 +00:00
|
|
|
depends on ARCH_MXC || COMPILE_TEST
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCIE_SPEAR13XX
|
|
|
|
bool "STMicroelectronics SPEAr PCIe controller"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on ARCH_SPEAR13XX || COMPILE_TEST
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
|
|
|
Say Y here if you want PCIe support on SPEAr13XX SoCs.
|
|
|
|
|
|
|
|
config PCI_KEYSTONE
|
2019-03-25 09:39:43 +00:00
|
|
|
bool
|
|
|
|
|
|
|
|
config PCI_KEYSTONE_HOST
|
|
|
|
bool "PCI Keystone Host Mode"
|
2019-03-25 09:39:35 +00:00
|
|
|
depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2019-03-25 09:39:43 +00:00
|
|
|
select PCI_KEYSTONE
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enables support for the PCIe controller in the Keystone SoC to
|
|
|
|
work in host mode. The PCI controller on Keystone is based on
|
|
|
|
DesignWare hardware and therefore the driver re-uses the
|
|
|
|
DesignWare core functions to implement the driver.
|
|
|
|
|
|
|
|
config PCI_KEYSTONE_EP
|
|
|
|
bool "PCI Keystone Endpoint Mode"
|
|
|
|
depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
|
|
|
|
depends on PCI_ENDPOINT
|
|
|
|
select PCIE_DW_EP
|
|
|
|
select PCI_KEYSTONE
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
2019-03-25 09:39:43 +00:00
|
|
|
Enables support for the PCIe controller in the Keystone SoC to
|
|
|
|
work in endpoint mode. The PCI controller on Keystone is based
|
|
|
|
on DesignWare hardware and therefore the driver re-uses the
|
|
|
|
DesignWare core functions to implement the driver.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCI_LAYERSCAPE
|
2019-08-14 02:03:30 +00:00
|
|
|
bool "Freescale Layerscape PCIe controller - Host mode"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on OF && (ARM || ARCH_LAYERSCAPE || COMPILE_TEST)
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select MFD_SYSCON
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
2019-08-14 02:03:30 +00:00
|
|
|
Say Y here if you want to enable PCIe controller support on Layerscape
|
|
|
|
SoCs to work in Host mode.
|
|
|
|
This controller can work either as EP or RC. The RCW[HOST_AGT_PEX]
|
|
|
|
determines which PCIe controller works in EP mode and which PCIe
|
|
|
|
controller works in RC mode.
|
|
|
|
|
|
|
|
config PCI_LAYERSCAPE_EP
|
|
|
|
bool "Freescale Layerscape PCIe controller - Endpoint mode"
|
|
|
|
depends on OF && (ARM || ARCH_LAYERSCAPE || COMPILE_TEST)
|
|
|
|
depends on PCI_ENDPOINT
|
|
|
|
select PCIE_DW_EP
|
|
|
|
help
|
|
|
|
Say Y here if you want to enable PCIe controller support on Layerscape
|
|
|
|
SoCs to work in Endpoint mode.
|
|
|
|
This controller can work either as EP or RC. The RCW[HOST_AGT_PEX]
|
|
|
|
determines which PCIe controller works in EP mode and which PCIe
|
|
|
|
controller works in RC mode.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCI_HISI
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on OF && (ARM64 || COMPILE_TEST)
|
2017-01-06 12:52:48 +00:00
|
|
|
bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
|
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-04-03 21:17:11 +00:00
|
|
|
select PCI_HOST_COMMON
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
|
|
|
Say Y here if you want PCIe controller support on HiSilicon
|
|
|
|
Hip05 and Hip06 SoCs
|
|
|
|
|
|
|
|
config PCIE_QCOM
|
|
|
|
bool "Qualcomm PCIe controller"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on OF && (ARCH_QCOM || COMPILE_TEST)
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
|
|
|
Say Y here to enable PCIe controller support on Qualcomm SoCs. The
|
2017-09-01 21:35:50 +00:00
|
|
|
PCIe controller uses the DesignWare core plus Qualcomm-specific
|
2017-01-06 12:52:48 +00:00
|
|
|
hardware wrappers.
|
|
|
|
|
|
|
|
config PCIE_ARMADA_8K
|
|
|
|
bool "Marvell Armada-8K PCIe controller"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on ARCH_MVEBU || COMPILE_TEST
|
2017-01-06 12:52:48 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
|
|
|
Say Y here if you want to enable PCIe controller support on
|
|
|
|
Armada-8K SoCs. The PCIe controller on Armada-8K is based on
|
2017-09-01 21:35:50 +00:00
|
|
|
DesignWare hardware and therefore the driver re-uses the
|
|
|
|
DesignWare core functions to implement the driver.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
|
|
|
config PCIE_ARTPEC6
|
2017-12-19 23:29:35 +00:00
|
|
|
bool
|
|
|
|
|
|
|
|
config PCIE_ARTPEC6_HOST
|
|
|
|
bool "Axis ARTPEC-6 PCIe controller Host Mode"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on MACH_ARTPEC6 || COMPILE_TEST
|
2018-05-11 17:15:29 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-02-15 13:18:18 +00:00
|
|
|
select PCIE_DW_HOST
|
2017-12-19 23:29:35 +00:00
|
|
|
select PCIE_ARTPEC6
|
|
|
|
help
|
|
|
|
Enables support for the PCIe controller in the ARTPEC-6 SoC to work in
|
|
|
|
host mode. This uses the DesignWare core.
|
|
|
|
|
|
|
|
config PCIE_ARTPEC6_EP
|
|
|
|
bool "Axis ARTPEC-6 PCIe controller Endpoint Mode"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on MACH_ARTPEC6 || COMPILE_TEST
|
2017-12-19 23:29:35 +00:00
|
|
|
depends on PCI_ENDPOINT
|
|
|
|
select PCIE_DW_EP
|
|
|
|
select PCIE_ARTPEC6
|
2017-01-06 12:52:48 +00:00
|
|
|
help
|
2017-12-19 23:29:35 +00:00
|
|
|
Enables support for the PCIe controller in the ARTPEC-6 SoC to work in
|
|
|
|
endpoint mode. This uses the DesignWare core.
|
2017-01-06 12:52:48 +00:00
|
|
|
|
2017-06-19 10:23:48 +00:00
|
|
|
config PCIE_KIRIN
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on OF && (ARM64 || COMPILE_TEST)
|
2017-06-19 10:23:48 +00:00
|
|
|
bool "HiSilicon Kirin series SoCs PCIe controllers"
|
2018-03-07 15:42:37 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
2017-06-19 10:23:48 +00:00
|
|
|
select PCIE_DW_HOST
|
|
|
|
help
|
|
|
|
Say Y here if you want PCIe controller support
|
|
|
|
on HiSilicon Kirin series SoCs.
|
|
|
|
|
2017-10-23 11:17:50 +00:00
|
|
|
config PCIE_HISI_STB
|
|
|
|
bool "HiSilicon STB SoCs PCIe controllers"
|
2018-04-05 19:31:54 +00:00
|
|
|
depends on ARCH_HISI || COMPILE_TEST
|
2017-10-23 11:17:50 +00:00
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
help
|
|
|
|
Say Y here if you want PCIe controller support on HiSilicon STB SoCs
|
|
|
|
|
2018-12-18 08:04:46 +00:00
|
|
|
config PCI_MESON
|
|
|
|
bool "MESON PCIe controller"
|
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
help
|
|
|
|
Say Y here if you want to enable PCI controller support on Amlogic
|
|
|
|
SoCs. The PCI controller on Amlogic is based on DesignWare hardware
|
|
|
|
and therefore the driver re-uses the DesignWare core functions to
|
|
|
|
implement the driver.
|
|
|
|
|
2019-08-13 11:36:27 +00:00
|
|
|
config PCIE_TEGRA194
|
|
|
|
tristate "NVIDIA Tegra194 (and later) PCIe controller"
|
|
|
|
depends on ARCH_TEGRA_194_SOC || COMPILE_TEST
|
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
select PHY_TEGRA194_P2U
|
|
|
|
help
|
|
|
|
Say Y here if you want support for DesignWare core based PCIe host
|
|
|
|
controller found in NVIDIA Tegra194 SoC.
|
|
|
|
|
2018-12-07 00:53:12 +00:00
|
|
|
config PCIE_UNIPHIER
|
|
|
|
bool "Socionext UniPhier PCIe controllers"
|
|
|
|
depends on ARCH_UNIPHIER || COMPILE_TEST
|
|
|
|
depends on OF && HAS_IOMEM
|
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
help
|
|
|
|
Say Y here if you want PCIe controller support on UniPhier SoCs.
|
|
|
|
This driver supports LD20 and PXs3 SoCs.
|
|
|
|
|
2019-09-12 13:02:37 +00:00
|
|
|
config PCIE_AL
|
|
|
|
bool "Amazon Annapurna Labs PCIe controller"
|
|
|
|
depends on OF && (ARM64 || COMPILE_TEST)
|
|
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
|
|
select PCIE_DW_HOST
|
|
|
|
help
|
|
|
|
Say Y here to enable support of the Amazon's Annapurna Labs PCIe
|
|
|
|
controller IP on Amazon SoCs. The PCIe controller uses the DesignWare
|
|
|
|
core plus Annapurna Labs proprietary hardware wrappers. This is
|
|
|
|
required only for DT-based platforms. ACPI platforms with the
|
|
|
|
Annapurna Labs PCIe controller don't need to enable this.
|
|
|
|
|
2017-01-06 12:52:48 +00:00
|
|
|
endmenu
|