18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ciconfig BCMA_POSSIBLE
38c2ecf20Sopenharmony_ci	bool
48c2ecf20Sopenharmony_ci	depends on HAS_IOMEM && HAS_DMA
58c2ecf20Sopenharmony_ci	default y
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cimenuconfig BCMA
88c2ecf20Sopenharmony_ci	tristate "Broadcom specific AMBA"
98c2ecf20Sopenharmony_ci	depends on BCMA_POSSIBLE
108c2ecf20Sopenharmony_ci	help
118c2ecf20Sopenharmony_ci	  Bus driver for Broadcom specific Advanced Microcontroller Bus
128c2ecf20Sopenharmony_ci	  Architecture.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciif BCMA
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci# Support for Block-I/O. SELECT this from the driver that needs it.
178c2ecf20Sopenharmony_ciconfig BCMA_BLOCKIO
188c2ecf20Sopenharmony_ci	bool
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciconfig BCMA_HOST_PCI_POSSIBLE
218c2ecf20Sopenharmony_ci	bool
228c2ecf20Sopenharmony_ci	depends on PCI = y
238c2ecf20Sopenharmony_ci	default y
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciconfig BCMA_HOST_PCI
268c2ecf20Sopenharmony_ci	bool "Support for BCMA on PCI-host bus"
278c2ecf20Sopenharmony_ci	depends on BCMA_HOST_PCI_POSSIBLE
288c2ecf20Sopenharmony_ci	select BCMA_DRIVER_PCI
298c2ecf20Sopenharmony_ci	default y
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciconfig BCMA_HOST_SOC
328c2ecf20Sopenharmony_ci	bool "Support for BCMA in a SoC"
338c2ecf20Sopenharmony_ci	depends on HAS_IOMEM
348c2ecf20Sopenharmony_ci	help
358c2ecf20Sopenharmony_ci	  Host interface for a Broadcom AIX bus directly mapped into
368c2ecf20Sopenharmony_ci	  the memory. This only works with the Broadcom SoCs from the
378c2ecf20Sopenharmony_ci	  BCM47XX line.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	  If unsure, say N
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciconfig BCMA_DRIVER_PCI
428c2ecf20Sopenharmony_ci	bool "BCMA Broadcom PCI core driver"
438c2ecf20Sopenharmony_ci	depends on PCI
448c2ecf20Sopenharmony_ci	default y
458c2ecf20Sopenharmony_ci	help
468c2ecf20Sopenharmony_ci	  BCMA bus may have many versions of PCIe core. This driver
478c2ecf20Sopenharmony_ci	  supports:
488c2ecf20Sopenharmony_ci	  1) PCIe core working in clientmode
498c2ecf20Sopenharmony_ci	  2) PCIe Gen 2 clientmode core
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci	  In general PCIe (Gen 2) clientmode core is required on PCIe
528c2ecf20Sopenharmony_ci	  hosted buses. It's responsible for initialization and basic
538c2ecf20Sopenharmony_ci	  hardware management.
548c2ecf20Sopenharmony_ci	  This driver is also prerequisite for a hostmode PCIe core
558c2ecf20Sopenharmony_ci	  support.
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ciconfig BCMA_DRIVER_PCI_HOSTMODE
588c2ecf20Sopenharmony_ci	bool "Driver for PCI core working in hostmode"
598c2ecf20Sopenharmony_ci	depends on MIPS && BCMA_DRIVER_PCI && PCI_DRIVERS_LEGACY && BCMA = y
608c2ecf20Sopenharmony_ci	help
618c2ecf20Sopenharmony_ci	  PCI core hostmode operation (external PCI bus).
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ciconfig BCMA_DRIVER_MIPS
648c2ecf20Sopenharmony_ci	bool "BCMA Broadcom MIPS core driver"
658c2ecf20Sopenharmony_ci	depends on MIPS || COMPILE_TEST
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  Driver for the Broadcom MIPS core attached to Broadcom specific
688c2ecf20Sopenharmony_ci	  Advanced Microcontroller Bus.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci	  If unsure, say N
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ciconfig BCMA_PFLASH
738c2ecf20Sopenharmony_ci	bool
748c2ecf20Sopenharmony_ci	depends on BCMA_DRIVER_MIPS
758c2ecf20Sopenharmony_ci	default y
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciconfig BCMA_SFLASH
788c2ecf20Sopenharmony_ci	bool "ChipCommon-attached serial flash support"
798c2ecf20Sopenharmony_ci	depends on BCMA_HOST_SOC
808c2ecf20Sopenharmony_ci	default y
818c2ecf20Sopenharmony_ci	help
828c2ecf20Sopenharmony_ci	  Some cheap devices have serial flash connected to the ChipCommon
838c2ecf20Sopenharmony_ci	  instead of independent SPI controller. It requires using a separated
848c2ecf20Sopenharmony_ci	  driver that implements ChipCommon specific interface communication.
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci	  Enabling this symbol will let bcma recognize serial flash and register
878c2ecf20Sopenharmony_ci	  it as platform device.
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ciconfig BCMA_NFLASH
908c2ecf20Sopenharmony_ci	bool
918c2ecf20Sopenharmony_ci	depends on BCMA_DRIVER_MIPS
928c2ecf20Sopenharmony_ci	default y
938c2ecf20Sopenharmony_ci
948c2ecf20Sopenharmony_ciconfig BCMA_DRIVER_GMAC_CMN
958c2ecf20Sopenharmony_ci	bool "BCMA Broadcom GBIT MAC COMMON core driver"
968c2ecf20Sopenharmony_ci	help
978c2ecf20Sopenharmony_ci	  Driver for the Broadcom GBIT MAC COMMON core attached to Broadcom
988c2ecf20Sopenharmony_ci	  specific Advanced Microcontroller Bus.
998c2ecf20Sopenharmony_ci
1008c2ecf20Sopenharmony_ci	  If unsure, say N
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ciconfig BCMA_DRIVER_GPIO
1038c2ecf20Sopenharmony_ci	bool "BCMA GPIO driver"
1048c2ecf20Sopenharmony_ci	depends on GPIOLIB
1058c2ecf20Sopenharmony_ci	select GPIOLIB_IRQCHIP if BCMA_HOST_SOC
1068c2ecf20Sopenharmony_ci	help
1078c2ecf20Sopenharmony_ci	  Driver to provide access to the GPIO pins of the bcma bus.
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ci	  If unsure, say N
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig BCMA_DEBUG
1128c2ecf20Sopenharmony_ci	bool "BCMA debugging"
1138c2ecf20Sopenharmony_ci	help
1148c2ecf20Sopenharmony_ci	  This turns on additional debugging messages.
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ci	  If unsure, say N
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ciendif # BCMA
119