378 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			378 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| menuconfig PCI
 | |
| 	bool "PCI support"
 | |
| 	depends on DM
 | |
| 	default y if PPC
 | |
| 	help
 | |
| 	  Enable support for PCI (Peripheral Interconnect Bus), a type of bus
 | |
| 	  used on some devices to allow the CPU to communicate with its
 | |
| 	  peripherals.
 | |
| 
 | |
| 	  This subsystem requires driver model.
 | |
| 
 | |
| if PCI
 | |
| 
 | |
| config DM_PCI_COMPAT
 | |
| 	bool "Enable compatible functions for PCI"
 | |
| 	help
 | |
| 	  Enable compatibility functions for PCI so that old code can be used
 | |
| 	  with CONFIG_PCI enabled. This should be used as an interim
 | |
| 	  measure when porting a board to use driver model for PCI. Once the
 | |
| 	  board is fully supported, this option should be disabled.
 | |
| 
 | |
| config SYS_PCI_64BIT
 | |
| 	bool "Enable 64-bit PCI resources"
 | |
| 	default y if PPC
 | |
| 	help
 | |
| 	  Enable 64-bit PCI resource access.
 | |
| 
 | |
| config PCI_AARDVARK
 | |
| 	bool "Enable Aardvark PCIe driver"
 | |
| 	depends on DM_GPIO
 | |
| 	depends on ARMADA_3700
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Armada37x0 SoCs. The PCIe controller on Armada37x0 is based on
 | |
| 	  Aardvark hardware.
 | |
| 
 | |
| config PCI_PNP
 | |
| 	bool "Enable Plug & Play support for PCI"
 | |
| 	default y
 | |
| 	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"
 | |
| 	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_CONFIG_HOST_BRIDGE
 | |
| 	bool "Configure PCI host bridges"
 | |
| 	default y if X86
 | |
| 
 | |
| config PCI_MAP_SYSTEM_MEMORY
 | |
| 	bool "Map local system memory from a virtual base address"
 | |
| 	depends on MIPS
 | |
| 	help
 | |
| 	  Say Y if base address of system memory is being used as a virtual address
 | |
| 	  instead of a physical address (e.g. on MIPS). The PCI core will then remap
 | |
| 	  the virtual memory base address to a physical address when adding the PCI
 | |
| 	  region of type PCI_REGION_SYS_MEMORY.
 | |
| 	  This should only be required on MIPS where CFG_SYS_SDRAM_BASE is still
 | |
| 	  being used as virtual address.
 | |
| 
 | |
| config PCI_SRIOV
 | |
| 	bool "Enable Single Root I/O Virtualization support for PCI"
 | |
| 	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_ENHANCED_ALLOCATION
 | |
| 	bool "Enable support for Enhanced Allocation of resources"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable support for Enhanced Allocation which can be used by supported
 | |
| 	  devices in place of traditional BARS for allocation of resources.
 | |
| 
 | |
| config PCI_ARID
 | |
|         bool "Enable Alternate Routing-ID support for PCI"
 | |
|         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 PCI_SCAN_SHOW
 | |
| 	bool "Show PCI devices during startup"
 | |
| 	depends on PCIE_IMX
 | |
| 
 | |
| config PCIE_ECAM_GENERIC
 | |
| 	bool "Generic ECAM-based PCI host controller support"
 | |
| 	help
 | |
| 	  Say Y here if you want to enable support for generic ECAM-based
 | |
| 	  PCIe host controllers, such as the one emulated by QEMU.
 | |
| 
 | |
| config PCIE_ECAM_SYNQUACER
 | |
| 	bool "SynQuacer ECAM-based PCI host controller support"
 | |
| 	select PCI_INIT_R
 | |
| 	select PCI_REGION_MULTI_ENTRY
 | |
| 	help
 | |
| 	  Say Y here if you want to enable support for Socionext
 | |
| 	  SynQuacer SoC's ECAM-based PCIe host controllers.
 | |
| 	  Note that this must be configured when boot because Linux driver
 | |
| 	  expects the PCIe RC has been configured in the bootloader.
 | |
| 
 | |
| config PCIE_APPLE
 | |
| 	bool "Enable Apple PCIe driver"
 | |
| 	depends on ARCH_APPLE
 | |
| 	imply PCI_INIT_R
 | |
| 	default y
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Apple SoCs.
 | |
| 
 | |
| config PCI_GT64120
 | |
| 	bool "GT64120 PCI support"
 | |
| 	depends on MIPS
 | |
| 
 | |
| config PCI_PHYTIUM
 | |
| 	bool "Phytium PCIe support"
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Phytium SoCs.
 | |
| 
 | |
| config PCIE_DW_MVEBU
 | |
| 	bool "Enable Armada-8K PCIe driver (DesignWare core)"
 | |
| 	depends on ARMADA_8K
 | |
| 	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
 | |
| 	  DesignWare hardware.
 | |
| 
 | |
| config PCIE_DW_SIFIVE
 | |
| 	bool "Enable SiFive FU740 PCIe"
 | |
| 	depends on CLK_SIFIVE_PRCI
 | |
| 	depends on RESET_SIFIVE
 | |
| 	depends on SIFIVE_GPIO
 | |
| 	select PCIE_DW_COMMON
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  FU740.
 | |
| 
 | |
| config SYS_FSL_PCI_VER_3_X
 | |
| 	bool
 | |
| 
 | |
| config PCIE_FSL
 | |
| 	bool "FSL PowerPC PCIe support"
 | |
| 	select SYS_FSL_PCI_VER_3_X if ARCH_T2080 || ARCH_T4240
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on FSL
 | |
| 	  PowerPC MPC85xx, MPC86xx, B series, P series and T series SoCs.
 | |
| 	  This driver does not support SRIO_PCIE_BOOT feature.
 | |
| 
 | |
| config PCI_MPC85XX
 | |
| 	bool "MPC85XX PowerPC PCI support"
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCI controller support on FSL
 | |
| 	  PowerPC MPC85xx SoC.
 | |
| 
 | |
| config PCI_MSC01
 | |
| 	bool "MSC01 PCI support"
 | |
| 	depends on TARGET_MALTA
 | |
| 
 | |
| config PCI_RCAR_GEN2
 | |
| 	bool "Renesas RCar Gen2 PCIe driver"
 | |
| 	depends on RCAR_32
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Renesas RCar Gen2 SoCs. The PCIe controller on RCar Gen2 is
 | |
| 	  also used to access EHCI USB controller on the SoC.
 | |
| 
 | |
| config PCI_RCAR_GEN3
 | |
| 	bool "Renesas RCar Gen3 PCIe driver"
 | |
| 	depends on RCAR_GEN3
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Renesas RCar Gen3 SoCs.
 | |
| 
 | |
| config PCI_SANDBOX
 | |
| 	bool "Sandbox PCI support"
 | |
| 	depends on SANDBOX
 | |
| 	help
 | |
| 	  Support PCI on sandbox, as an emulated bus. This permits testing of
 | |
| 	  PCI feature such as bus scanning, device configuration and device
 | |
| 	  access. The available (emulated) devices are defined statically in
 | |
| 	  the device tree but the normal PCI scan technique is used to find
 | |
| 	  then.
 | |
| 
 | |
| config SH7751_PCI
 | |
| 	bool "SH7751 PCI controller support"
 | |
| 	depends on SH
 | |
| 	help
 | |
| 	  SuperH PCI Bridge Configuration
 | |
| 
 | |
| config PCI_TEGRA
 | |
| 	bool "Tegra PCI support"
 | |
| 	depends on ARCH_TEGRA
 | |
| 	depends on (TEGRA186 && POWER_DOMAIN) || (!TEGRA186)
 | |
| 	help
 | |
| 	  Enable support for the PCIe controller found on some generations of
 | |
| 	  Tegra. Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has
 | |
| 	  3 root ports with a total of 6 lanes and Tegra124 has 2 root ports
 | |
| 	  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 PCIE_OCTEON
 | |
| 	bool "MIPS Octeon PCIe support"
 | |
| 	depends on ARCH_OCTEON
 | |
| 	help
 | |
| 	  Enable support for the MIPS Octeon SoC family PCIe controllers.
 | |
| 
 | |
| config PCI_XILINX
 | |
| 	bool "Xilinx AXI Bridge for PCI Express"
 | |
| 	help
 | |
| 	  Enable support for the Xilinx AXI bridge for PCI express, an IP block
 | |
| 	  which can be used on some generations of Xilinx FPGAs.
 | |
| 
 | |
| config PCIE_LAYERSCAPE
 | |
| 	bool
 | |
| 
 | |
| config PCIE_LAYERSCAPE_RC
 | |
| 	bool "Layerscape PCIe Root Complex mode support"
 | |
| 	select PCIE_LAYERSCAPE
 | |
| 	help
 | |
| 	  Enable Layerscape PCIe Root Complex mode driver support. The Layerscape
 | |
| 	  SoC may have one or several PCIe controllers. Each controller can be
 | |
| 	  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"
 | |
| 	select PCIE_LAYERSCAPE
 | |
| 	select PCI_ENDPOINT
 | |
| 	help
 | |
| 	  Enable Layerscape PCIe Endpoint mode driver support. The Layerscape
 | |
| 	  SoC may have one or several PCIe controllers. Each controller can be
 | |
| 	  configured to Endpoint mode by setting the corresponding bit of
 | |
| 	  RCW[HOST_AGT_PEX].
 | |
| 
 | |
| config PCIE_LAYERSCAPE_GEN4
 | |
| 	bool "Layerscape Gen4 PCIe support"
 | |
| 	help
 | |
| 	  Support PCIe Gen4 on NXP Layerscape SoCs, which may have one or
 | |
| 	  several PCIe controllers. The PCIe controller can work in RC or
 | |
| 	  EP mode according to RCW[HOST_AGT_PEX] setting.
 | |
| 
 | |
| config FSL_PCIE_COMPAT
 | |
| 	string "PCIe compatible of Kernel DT"
 | |
| 	depends on PCIE_LAYERSCAPE_RC || PCIE_LAYERSCAPE_GEN4
 | |
| 	default "fsl,ls1012a-pcie" if ARCH_LS1012A
 | |
| 	default "fsl,ls1028a-pcie" if ARCH_LS1028A
 | |
| 	default "fsl,ls1043a-pcie" if ARCH_LS1043A
 | |
| 	default "fsl,ls1046a-pcie" if ARCH_LS1046A
 | |
| 	default "fsl,ls2080a-pcie" if ARCH_LS2080A
 | |
| 	default "fsl,ls1088a-pcie" if ARCH_LS1088A
 | |
| 	default "fsl,ls2088a-pcie" if ARCH_LX2160A || ARCH_LX2162A
 | |
| 	default "fsl,ls1021a-pcie" if ARCH_LS1021A
 | |
| 	help
 | |
| 	  This compatible is used to find pci controller node in Kernel DT
 | |
| 	  to complete fixup.
 | |
| 
 | |
| config FSL_PCIE_EP_COMPAT
 | |
| 	string "PCIe EP compatible of Kernel DT"
 | |
| 	depends on PCIE_LAYERSCAPE_RC || PCIE_LAYERSCAPE_GEN4
 | |
| 	default "fsl,ls-pcie-ep"
 | |
| 	help
 | |
| 	  This compatible is used to find pci controller ep node in Kernel DT
 | |
| 	  to complete fixup.
 | |
| 
 | |
| config PCIE_IMX
 | |
| 	bool "i.MX PCIe support"
 | |
| 	depends on ARCH_MX6
 | |
| 
 | |
| config PCIE_INTEL_FPGA
 | |
| 	bool "Intel FPGA PCIe support"
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on Intel
 | |
| 	  FPGA, example Stratix 10.
 | |
| 
 | |
| config PCIE_IPROC
 | |
| 	bool "Iproc PCIe support"
 | |
| 	help
 | |
| 	  Broadcom iProc PCIe controller driver.
 | |
| 	  Say Y here if you want to enable Broadcom iProc PCIe controller,
 | |
| 
 | |
| config PCI_MVEBU
 | |
| 	bool "Enable Kirkwood / Armada 370/XP/375/38x PCIe driver"
 | |
| 	depends on (ARCH_KIRKWOOD || ARCH_MVEBU)
 | |
| 	select MISC
 | |
| 	select DM_RESET
 | |
| 	select DM_GPIO
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  Kirkwood and Armada 370/XP/375/38x SoCs.
 | |
| 
 | |
| config PCIE_DW_COMMON
 | |
| 	bool
 | |
| 
 | |
| config PCI_KEYSTONE
 | |
| 	bool "TI Keystone PCIe controller"
 | |
| 	select PCIE_DW_COMMON
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCI controller support on AM654 SoC.
 | |
| 
 | |
| config PCIE_MEDIATEK
 | |
| 	bool "MediaTek PCIe Gen2 controller"
 | |
| 	depends on ARCH_MEDIATEK
 | |
| 	help
 | |
| 	  Say Y here if you want to enable Gen2 PCIe controller,
 | |
| 	  which could be found on MT7623 SoC family.
 | |
| 
 | |
| config PCIE_DW_MESON
 | |
| 	bool "Amlogic Meson DesignWare based PCIe controller"
 | |
| 	depends on ARCH_MESON
 | |
| 	select PCIE_DW_COMMON
 | |
| 	help
 | |
| 	  Say Y here if you want to enable DW PCIe controller support on
 | |
| 	  Amlogic SoCs.
 | |
| 
 | |
| config PCIE_ROCKCHIP
 | |
| 	bool "Enable Rockchip PCIe driver"
 | |
| 	depends on ARCH_ROCKCHIP
 | |
| 	select PHY_ROCKCHIP_PCIE
 | |
| 	default y if ROCKCHIP_RK3399
 | |
| 	help
 | |
| 	  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 ARCH_BCM283X
 | |
| 	help
 | |
| 	  Say Y here if you want to enable support for PCIe controller
 | |
| 	  on Broadcom set-top-box (STB) SoCs.
 | |
| 	  This driver currently supports only BCM2711 SoC and RC mode
 | |
| 	  of the controller.
 | |
| 
 | |
| config PCIE_UNIPHIER
 | |
| 	bool "Socionext UniPhier PCIe driver"
 | |
| 	depends on ARCH_UNIPHIER
 | |
| 	select PHY_UNIPHIER_PCIE
 | |
| 	help
 | |
| 	  Say Y here if you want to enable PCIe controller support on
 | |
| 	  UniPhier SoCs.
 | |
| 
 | |
| endif
 |