blob: 37ffc8cfcf276626d41e5faef354c67d0d0f34e6 [file] [log] [blame]
menuconfig SOC_BRCMSTB
bool "Broadcom STB SoC drivers"
depends on ARM || ARM64 || BMIPS_GENERIC
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.
if SOC_BRCMSTB
config BRCMSTB_BMEM
bool "Enable BMEM reserved A/V memory"
depends on HAVE_MEMBLOCK && ARCH_BRCMSTB && BRCMSTB_MEMORY_API
help
The A/V peripherals (managed by the PI/Nexus middleware) require
large, contiguous memory regions to be set aside at boot time. This
option sets those up in a default config that reserves most of
memory. Also allows the user to manually define region sizes and
locations using the 'bmem' command line param. Allows for O_DIRECT
I/O using these regions, mmap() from user programs, and
ioremap() from kernel drivers.
If you are planning to use Broadcom middleware, choose Y here.
config BRCMSTB_CMA
bool "Broadcom STB CMA"
depends on ARCH_BRCMSTB && (ARM || ARM64) && CMA && BRCMSTB_MEMORY_API
help
This driver provides the ioctls for manipulating with the reserved
areas used by Broadcom middleware, as well as the functions for the
kernel interface. It also provides register and reserve functions
for setting up the CMA regions it uses at early boot.
If you are planning to use Broadcom middleware, choose Y here.
config BRCMSTB_MEMORY_API
bool "Enable BRCMSTB memory API"
depends on HAVE_MEMBLOCK && ARCH_BRCMSTB
select LIBFDT
help
This provides information on how system memory is arranged so that
Broadcom STB middleware can determine how to set up its memory heaps.
If you are planning to use Broadcom middleware, choose Y here.
config BRCMSTB_PM
bool "Support suspend/resume for STB platforms"
default y
depends on PM
depends on ARM && ARCH_BRCMSTB
config BRCMSTB_PM_DEBUG
bool "Add debugfs interface for STB suspend/resume driver"
default y
depends on BRCMSTB_PM && PM_DEBUG && DEBUG_FS
help
This option enables debugfs support for the STB suspend/resume
driver. Specifically, for memory regions to be included or excluded
from hashing.
If you are unsure, choose Y here.
config BRCMSTB_SRPD
tristate "Support enabling DDR self-refresh modes"
help
Provides a sysfs interface for setting the self-refresh timeout
value on Broadcom STB memory controllers.
config BRCMSTB_WKTMR
tristate "Support wake-up timer"
# Perform memory hashing before entering S3, using XPT DMA
config BRCMSTB_XPT_HASH
select BRCMSTB_MEMORY_API
bool
config BRCMSTB_NEXUS_API
tristate "Support for Nexus APIs"
help
Provides APIs for Nexus kernel-mode driver to facilitate
sharing of resources: IRQs, GPIOs, Pinmuxing etc.
endif # SOC_BRCMSTB
#####################################################################
# Hidden options
#####################################################################
config BRCMSTB
bool