# SPDX-License-Identifier: GPL-2.0-only
menu "Broadcom SoC drivers"

config BCM2835_POWER
	bool "BCM2835 power domain driver"
	depends on ARCH_BCM2835 || (COMPILE_TEST && OF)
	default y if ARCH_BCM2835
	select PM_GENERIC_DOMAINS if PM
	select RESET_CONTROLLER
	help
	  This enables support for the BCM2835 power domains and reset
	  controller.  Any usage of power domains by the Raspberry Pi
	  firmware means that Linux usage of the same power domain
	  must be accessed using the RASPBERRYPI_POWER driver

config RASPBERRYPI_POWER
	bool "Raspberry Pi power domain driver"
	depends on ARCH_BCM2835 || (COMPILE_TEST && OF)
	depends on RASPBERRYPI_FIRMWARE=y
	select PM_GENERIC_DOMAINS if PM
	help
	  This enables support for the RPi power domains which can be enabled
	  or disabled via the RPi firmware.

config SOC_BCM63XX
	bool "Broadcom 63xx SoC drivers"
	depends on BMIPS_GENERIC || COMPILE_TEST
	help
	  Enables drivers for the Broadcom 63xx series of chips.
	  Drivers can be enabled individually within this menu.

	  If unsure, say N.

config SOC_BRCMSTB
	bool "Broadcom STB SoC drivers"
	depends on ARM || ARM64 || BMIPS_GENERIC || COMPILE_TEST
	select SOC_BUS
	help
	  Enables drivers for the Broadcom Set-Top Box (STB) series of chips.
	  This option alone enables only some support code, while the drivers
	  can be enabled individually within this menu.

	  If unsure, say N.

source "drivers/soc/bcm/bcm63xx/Kconfig"
source "drivers/soc/bcm/brcmstb/Kconfig"

endmenu
