pci: pcie_dw_rockchip: migrate to common Designware PCIe functions
[platform/kernel/u-boot.git] / drivers / pci / Kconfig
index 5e0a393..cacfc4b 100644 (file)
@@ -30,6 +30,7 @@ config PCI_AARDVARK
        bool "Enable Aardvark PCIe driver"
        default n
        depends on DM_PCI
+       depends on DM_GPIO
        depends on ARMADA_3700
        help
          Say Y here if you want to enable PCIe controller support on
@@ -43,6 +44,35 @@ config PCI_PNP
        help
          Enable PCI memory and I/O space resource allocation and assignment.
 
+config PCI_REGION_MULTI_ENTRY
+       bool "Enable Multiple entries of region type MEMORY in ranges for PCI"
+       depends on PCI || DM_PCI
+       default n
+       help
+         Enable PCI memory regions to be of multiple entry. Multiple entry
+         here refers to allow more than one count of address ranges for MEMORY
+         region type. This helps to add support for SoC's like OcteonTX/TX2
+         where every peripheral is on the PCI bus.
+
+config PCI_SRIOV
+       bool "Enable Single Root I/O Virtualization support for PCI"
+       depends on PCI || DM_PCI
+       default n
+       help
+         Say Y here if you want to enable PCI Single Root I/O Virtualization
+         capability support. This helps to enumerate Virtual Function devices
+         if available on a PCI Physical Function device and probe for
+         applicable drivers.
+
+config PCI_ARID
+        bool "Enable Alternate Routing-ID support for PCI"
+        depends on PCI || DM_PCI
+        default n
+        help
+          Say Y here if you want to enable Alternate Routing-ID capability
+          support on PCI devices. This helps to skip some devices in BDF
+          scan that are not present.
+
 config PCIE_ECAM_GENERIC
        bool "Generic ECAM-based PCI host controller support"
        default n
@@ -120,6 +150,14 @@ config PCI_TEGRA
          with a total of 5 lanes. Some boards require this for Ethernet
          support to work (e.g. beaver, jetson-tk1).
 
+config PCI_OCTEONTX
+       bool "OcteonTX PCI support"
+       depends on (ARCH_OCTEONTX || ARCH_OCTEONTX2)
+       help
+         Enable support for the OcteonTX/TX2 SoC family ECAM/PEM controllers.
+         These controllers provide PCI configuration access to all on-board
+         peripherals so it should only be disabled for testing purposes
+
 config PCI_XILINX
        bool "Xilinx AXI Bridge for PCI Express"
        depends on DM_PCI
@@ -141,6 +179,18 @@ config PCIE_LAYERSCAPE_RC
          configured to Root Complex mode by clearing the corresponding bit of
          RCW[HOST_AGT_PEX].
 
+config PCI_IOMMU_EXTRA_MAPPINGS
+       bool "Support for specifying extra IOMMU mappings for PCI"
+       depends on PCIE_LAYERSCAPE_RC
+       help
+         Enable support for specifying extra IOMMU mappings for PCI
+         controllers through a special env var called "pci_iommu_extra" or
+         through a device tree property named "pci-iommu-extra" placed in
+         the node describing the PCI controller.
+         The intent is to cover SR-IOV scenarios which need mappings for VFs
+         and PCI hot-plug scenarios. More documentation can be found under:
+           arch/arm/cpu/armv8/fsl-layerscape/doc/README.pci_iommu_extra
+
 config PCIE_LAYERSCAPE_EP
        bool "Layerscape PCIe Endpoint mode support"
        depends on DM_PCI
@@ -170,6 +220,7 @@ config FSL_PCIE_COMPAT
        default "fsl,ls2080a-pcie" if ARCH_LS2080A
        default "fsl,ls1088a-pcie" if ARCH_LS1088A
        default "fsl,lx2160a-pcie" if ARCH_LX2160A
+       default "fsl,ls2088a-pcie" if ARCH_LX2162A
        default "fsl,ls1021a-pcie" if ARCH_LS1021A
        help
          This compatible is used to find pci controller node in Kernel DT
@@ -207,9 +258,13 @@ config PCI_MVEBU
          Say Y here if you want to enable PCIe controller support on
          Armada XP/38x SoCs.
 
+config PCIE_DW_COMMON
+       bool
+       select DM_PCI
+
 config PCI_KEYSTONE
        bool "TI Keystone PCIe controller"
-       depends on DM_PCI
+       select PCIE_DW_COMMON
        help
          Say Y here if you want to enable PCI controller support on AM654 SoC.
 
@@ -223,6 +278,7 @@ config PCIE_MEDIATEK
 
 config PCIE_ROCKCHIP
        bool "Enable Rockchip PCIe driver"
+       depends on ARCH_ROCKCHIP
        select DM_PCI
        select PHY_ROCKCHIP_PCIE
        default y if ROCKCHIP_RK3399
@@ -230,6 +286,15 @@ config PCIE_ROCKCHIP
          Say Y here if you want to enable PCIe controller support on
          Rockchip SoCs.
 
+config PCIE_DW_ROCKCHIP
+       bool "Rockchip DesignWare based PCIe controller"
+       depends on ARCH_ROCKCHIP
+       select PCIE_DW_COMMON
+       select PHY_ROCKCHIP_SNPS_PCIE3
+       help
+         Say Y here if you want to enable DW PCIe controller support on
+         Rockchip SoCs.
+
 config PCI_BRCMSTB
        bool "Broadcom STB PCIe controller"
        depends on DM_PCI