Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) menu "PCI controller drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) 	depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) config PCI_MVEBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 	bool "Marvell EBU PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) 	depends on MVEBU_MBUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 	depends on ARM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 	select PCI_BRIDGE_EMUL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) config PCI_AARDVARK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 	tristate "Aardvark PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 	depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 	select PCI_BRIDGE_EMUL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 	 Add support for Aardvark 64bit PCIe Host Controller. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	 controller is part of the South Bridge of the Marvel Armada
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 	 3700 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) config PCIE_XILINX_NWL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 	bool "NWL PCIe Core"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 	depends on ARCH_ZYNQMP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 	 Say 'Y' here if you want kernel support for Xilinx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 	 NWL PCIe controller. The controller can act as Root Port
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 	 or End Point. The current option selection will only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	 support root port enabling.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) config PCI_FTPCI100
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 	bool "Faraday Technology FTPCI100 PCI controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 	default ARCH_GEMINI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) config PCI_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 	bool "NVIDIA Tegra PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 	depends on ARCH_TEGRA || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 	select PCI_MSI_ARCH_FALLBACKS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 	  Say Y here if you want support for the PCIe host controller found
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 	  on NVIDIA Tegra SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) config PCI_RCAR_GEN2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	bool "Renesas R-Car Gen2 Internal PCI controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	depends on ARM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 	  There are 3 internal PCI controllers available with a single
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	  built-in EHCI/OHCI host controller present on each one.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) config PCIE_RCAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 	bool "Renesas R-Car PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 	select PCIE_RCAR_HOST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 	  Say Y here if you want PCIe controller support on R-Car SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	  This option will be removed after arm64 defconfig is updated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) config PCIE_RCAR_HOST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 	bool "Renesas R-Car PCIe host controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 	depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 	select PCI_MSI_ARCH_FALLBACKS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 	  Say Y here if you want PCIe controller support on R-Car SoCs in host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	  mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) config PCIE_RCAR_EP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 	bool "Renesas R-Car PCIe endpoint controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 	depends on PCI_ENDPOINT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	  Say Y here if you want PCIe controller support on R-Car SoCs in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	  endpoint mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) config PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 	select PCI_ECAM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) config PCI_HOST_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 	tristate "Generic PCI host controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 	select PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 	select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	  Say Y here if you want to support a simple generic PCI host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 	  controller, such as the one emulated by kvmtool.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) config PCIE_XILINX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 	bool "Xilinx AXI PCIe host bridge support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 	depends on OF || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 	select PCI_MSI_ARCH_FALLBACKS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 	  Host Bridge driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) config PCIE_XILINX_CPM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 	bool "Xilinx Versal CPM host bridge support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	depends on ARCH_ZYNQMP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 	select PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 	  Say 'Y' here if you want kernel support for the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	  Xilinx Versal CPM host bridge.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) config PCI_XGENE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 	bool "X-Gene PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	depends on ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	depends on OF || (ACPI && PCI_QUIRKS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	  Say Y here if you want internal PCI support on APM X-Gene SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	  There are 5 internal PCIe ports available. Each port is GEN3 capable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	  and have varied lanes from x1 to x8.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) config PCI_XGENE_MSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	bool "X-Gene v1 PCIe MSI feature"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	depends on PCI_XGENE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) config PCI_V3_SEMI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	bool "V3 Semiconductor PCI controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	depends on ARM || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	default ARCH_INTEGRATOR_AP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) config PCI_VERSATILE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 	bool "ARM Versatile PB PCI controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	depends on ARCH_VERSATILE || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) config PCIE_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 	tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 	  This enables the iProc PCIe core controller support for Broadcom's
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	  iProc family of SoCs. An appropriate bus interface driver needs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 	  to be enabled to select this.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) config PCIE_IPROC_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	tristate "Broadcom iProc PCIe platform bus driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	select PCIE_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 	default ARCH_BCM_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 	  Say Y here if you want to use the Broadcom iProc PCIe controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 	  through the generic platform bus interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) config PCIE_IPROC_BCMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	tristate "Broadcom iProc PCIe BCMA bus driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	select PCIE_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	select BCMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	default ARCH_BCM_5301X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	  Say Y here if you want to use the Broadcom iProc PCIe controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	  through the BCMA bus interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) config PCIE_IPROC_MSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	bool "Broadcom iProc PCIe MSI support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	default ARCH_BCM_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	  Say Y here if you want to enable MSI support for Broadcom's iProc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	  PCIe controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) config PCIE_ALTERA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	tristate "Altera PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 	depends on ARM || NIOS2 || ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	  Say Y here if you want to enable PCIe controller support on Altera
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	  FPGA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) config PCIE_ALTERA_MSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	tristate "Altera PCIe MSI feature"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	depends on PCIE_ALTERA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	  Say Y here if you want PCIe MSI support for the Altera FPGA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	  This MSI driver supports Altera MSI to GIC controller IP.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) config PCI_HOST_THUNDER_PEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	bool "Cavium Thunder PCIe controller to off-chip devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	depends on ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	depends on OF || (ACPI && PCI_QUIRKS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	select PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) config PCI_HOST_THUNDER_ECAM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	depends on ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	depends on OF || (ACPI && PCI_QUIRKS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	select PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) config PCIE_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) config PCIE_ROCKCHIP_HOST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 	tristate "Rockchip PCIe host controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	depends on ARCH_ROCKCHIP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 	select MFD_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	select PCIE_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 	  Say Y here if you want internal PCI support on Rockchip SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 	  There is 1 internal PCIe port available to support GEN2 with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 	  4 slots.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) config PCIE_ROCKCHIP_EP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 	bool "Rockchip PCIe endpoint controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 	depends on ARCH_ROCKCHIP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 	depends on PCI_ENDPOINT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 	select MFD_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 	select PCIE_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	  Say Y here if you want to support Rockchip PCIe controller in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 	  available to support GEN2 with 4 slots.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) config ROCKCHIP_PCIE_DMA_OBJ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) 	bool "Rockchip PCIe uDMA transfer support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 	depends on PCIE_ROCKCHIP_HOST || PCIE_DW_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) 	  Say y to enable p2p DMA transfer between PCIe components.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) config PCIE_MEDIATEK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 	tristate "MediaTek PCIe controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 	depends on ARCH_MEDIATEK || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) 	  Say Y here if you want to enable PCIe controller support on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 	  MediaTek SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) config PCIE_TANGO_SMP8759
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) 	bool "Tango SMP8759 PCIe controller (DANGEROUS)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) 	depends on ARCH_TANGO && PCI_MSI && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 	depends on BROKEN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) 	select PCI_HOST_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 	  Say Y here to enable PCIe controller support for Sigma Designs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 	  Tango SMP8759-based systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) 	  Note: The SMP8759 controller multiplexes PCI config and MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 	  accesses, and Linux doesn't provide a way to serialize them.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) 	  This can lead to data corruption if drivers perform concurrent
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 	  config and MMIO accesses.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) config VMD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) 	depends on PCI_MSI && X86_64 && SRCU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) 	tristate "Intel Volume Management Device Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) 	  Adds support for the Intel Volume Management Device (VMD). VMD is a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 	  secondary PCI host bridge that allows PCI Express root ports,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 	  and devices attached to them, to be removed from the default
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 	  PCI domain and placed within the VMD domain. This provides
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 	  more bus resources than are otherwise possible with a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 	  single domain. If you know your system provides one of these and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) 	  has devices attached to it, say Y; if you are not sure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 	  To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) 	  module will be called vmd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) config PCIE_BRCMSTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) 	tristate "Broadcom Brcmstb PCIe host controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) 	depends on ARCH_BRCMSTB || ARCH_BCM2835 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) 	depends on PCI_MSI_IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) 	default ARCH_BRCMSTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) 	  Say Y here to enable PCIe host controller support for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) 	  Broadcom STB based SoCs, like the Raspberry Pi 4.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) config PCI_HYPERV_INTERFACE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) 	tristate "Hyper-V PCI Interface"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) 	depends on X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 	  The Hyper-V PCI Interface is a helper driver allows other drivers to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) 	  have a common interface with the Hyper-V PCI frontend driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) config PCI_LOONGSON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) 	bool "LOONGSON PCI Controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) 	depends on MACH_LOONGSON64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) 	depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) 	depends on PCI_QUIRKS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) 	default MACH_LOONGSON64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) 	  Say Y here if you want to enable PCI controller support on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) 	  Loongson systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) config PCIE_HISI_ERR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) 	depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) 	bool "HiSilicon HIP PCIe controller error handling driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) 	  Say Y here if you want error handling support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) 	  for the PCIe controller's errors on HiSilicon HIP SoCs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) source "drivers/pci/controller/dwc/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) source "drivers/pci/controller/mobiveil/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) source "drivers/pci/controller/cadence/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) endmenu