# SPDX-License-Identifier: GPL-2.0

menu "Cadence-based PCIe controllers"
	depends on PCI

config PCIE_CADENCE
	bool

config PCIE_CADENCE_HOST
	bool
	depends on OF
	select IRQ_DOMAIN
	select PCIE_CADENCE

config PCIE_CADENCE_EP
	bool
	depends on OF
	depends on PCI_ENDPOINT
	select PCIE_CADENCE

config PCIE_CADENCE_PLAT
	bool

config PCIE_CADENCE_PLAT_HOST
	bool "Cadence platform PCIe controller (host mode)"
	depends on OF
	select PCIE_CADENCE_HOST
	select PCIE_CADENCE_PLAT
	help
	  Say Y here if you want to support the Cadence PCIe platform controller in
	  host mode. This PCIe controller may be embedded into many different
	  vendors SoCs.

config PCIE_CADENCE_PLAT_EP
	bool "Cadence platform PCIe controller (endpoint mode)"
	depends on OF
	depends on PCI_ENDPOINT
	select PCIE_CADENCE_EP
	select PCIE_CADENCE_PLAT
	help
	  Say Y here if you want to support the Cadence PCIe  platform controller in
	  endpoint mode. This PCIe controller may be embedded into many
	  different vendors SoCs.

config PCIE_SG2042
	bool "Sophgo SG2042 PCIe controller (host mode)"
	depends on ARCH_SOPHGO || COMPILE_TEST
	select OF
	select IRQ_MSI_LIB
	select PCI_MSI
	select PCIE_CADENCE_HOST
	help
	  Say Y here if you want to support the Sophgo SG2042 PCIe platform
	  controller in host mode. Sophgo SG2042 PCIe controller uses Cadence
	  PCIe core.

config PCI_J721E
	bool

config PCI_J721E_HOST
	bool "TI J721E PCIe controller (host mode)"
	depends on OF
	select PCIE_CADENCE_HOST
	select PCI_J721E
	help
	  Say Y here if you want to support the TI J721E PCIe platform
	  controller in host mode. TI J721E PCIe controller uses Cadence PCIe
	  core.

config PCI_J721E_EP
	bool "TI J721E PCIe controller (endpoint mode)"
	depends on OF
	depends on PCI_ENDPOINT
	select PCIE_CADENCE_EP
	select PCI_J721E
	help
	  Say Y here if you want to support the TI J721E PCIe platform
	  controller in endpoint mode. TI J721E PCIe controller uses Cadence PCIe
	  core.

endmenu
