mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
soc: qcom: Hide all drivers behind selectable menu
Switch from a simple menu to menuconfig, so all Qualcomm SoC drivers will be under one selectable option, allowing to disable them all which should make kernel configuration easier when preparing a non-Qualcomm kernel. This has few benefits (functional impact of this commit): 1. Allow compile testing of QCOM_OCMEM, which previously required ARCH_QCOM. 2. Hide behind ARCH_QCOM or COMPILE_TEST drivers specific to Qualcomm which should not be available to other kernel builds: QCOM_PMIC_PDCHARGER_ULOG, QCOM_PMIC_GLINK, QCOM_SPM and QCOM_PBS. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260711-qcom-soc-kconfig-v2-1-4a907e064281@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
parent
982af1cc6c
commit
f2866e6a27
|
|
@ -2,11 +2,21 @@
|
||||||
#
|
#
|
||||||
# QCOM Soc drivers
|
# QCOM Soc drivers
|
||||||
#
|
#
|
||||||
menu "Qualcomm SoC drivers"
|
menuconfig QCOM_SOC
|
||||||
|
bool "Qualcomm SoC drivers"
|
||||||
|
depends on ARCH_QCOM || COMPILE_TEST
|
||||||
|
default ARCH_QCOM
|
||||||
|
help
|
||||||
|
This collection of drivers is specific to Qualcomm System-on-Chips
|
||||||
|
and most of them are necessary for a fully functional boot of the
|
||||||
|
Linux kernel (plus a few debugging drivers).
|
||||||
|
Drivers can be skipped when building Linux kernel not intended to run
|
||||||
|
said processors.
|
||||||
|
|
||||||
|
if QCOM_SOC
|
||||||
|
|
||||||
config QCOM_AOSS_QMP
|
config QCOM_AOSS_QMP
|
||||||
tristate "Qualcomm AOSS Driver"
|
tristate "Qualcomm AOSS Driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on MAILBOX
|
depends on MAILBOX
|
||||||
depends on COMMON_CLK && PM
|
depends on COMMON_CLK && PM
|
||||||
select PM_GENERIC_DOMAINS
|
select PM_GENERIC_DOMAINS
|
||||||
|
|
@ -18,7 +28,6 @@ config QCOM_AOSS_QMP
|
||||||
|
|
||||||
config QCOM_COMMAND_DB
|
config QCOM_COMMAND_DB
|
||||||
tristate "Qualcomm Command DB"
|
tristate "Qualcomm Command DB"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on OF_RESERVED_MEM
|
depends on OF_RESERVED_MEM
|
||||||
help
|
help
|
||||||
Command DB queries shared memory by key string for shared system
|
Command DB queries shared memory by key string for shared system
|
||||||
|
|
@ -28,7 +37,6 @@ config QCOM_COMMAND_DB
|
||||||
|
|
||||||
config QCOM_GENI_SE
|
config QCOM_GENI_SE
|
||||||
tristate "Qualcomm GENI Serial Engine Driver"
|
tristate "Qualcomm GENI Serial Engine Driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
help
|
help
|
||||||
This driver is used to manage Generic Interface (GENI) firmware based
|
This driver is used to manage Generic Interface (GENI) firmware based
|
||||||
Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
|
Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
|
||||||
|
|
@ -37,7 +45,6 @@ config QCOM_GENI_SE
|
||||||
|
|
||||||
config QCOM_GSBI
|
config QCOM_GSBI
|
||||||
tristate "Qualcomm General Serial Bus Interface"
|
tristate "Qualcomm General Serial Bus Interface"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
select MFD_SYSCON
|
select MFD_SYSCON
|
||||||
help
|
help
|
||||||
Say y here to enable GSBI support. The GSBI provides control
|
Say y here to enable GSBI support. The GSBI provides control
|
||||||
|
|
@ -46,7 +53,6 @@ config QCOM_GSBI
|
||||||
|
|
||||||
config QCOM_LLCC
|
config QCOM_LLCC
|
||||||
tristate "Qualcomm LLCC driver"
|
tristate "Qualcomm LLCC driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
select REGMAP_MMIO
|
select REGMAP_MMIO
|
||||||
help
|
help
|
||||||
Qualcomm Technologies, Inc. platform specific
|
Qualcomm Technologies, Inc. platform specific
|
||||||
|
|
@ -54,17 +60,8 @@ config QCOM_LLCC
|
||||||
SDM845. This provides interfaces to clients that use the LLCC.
|
SDM845. This provides interfaces to clients that use the LLCC.
|
||||||
Say yes here to enable LLCC slice driver.
|
Say yes here to enable LLCC slice driver.
|
||||||
|
|
||||||
config QCOM_KRYO_L2_ACCESSORS
|
|
||||||
bool
|
|
||||||
depends on (ARCH_QCOM || COMPILE_TEST) && ARM64
|
|
||||||
|
|
||||||
config QCOM_MDT_LOADER
|
|
||||||
tristate
|
|
||||||
select QCOM_SCM
|
|
||||||
|
|
||||||
config QCOM_OCMEM
|
config QCOM_OCMEM
|
||||||
tristate "Qualcomm On Chip Memory (OCMEM) driver"
|
tristate "Qualcomm On Chip Memory (OCMEM) driver"
|
||||||
depends on ARCH_QCOM
|
|
||||||
select QCOM_SCM
|
select QCOM_SCM
|
||||||
help
|
help
|
||||||
The On Chip Memory (OCMEM) allocator allows various clients to
|
The On Chip Memory (OCMEM) allocator allows various clients to
|
||||||
|
|
@ -77,7 +74,7 @@ config QCOM_PD_MAPPER
|
||||||
select QCOM_QMI_HELPERS
|
select QCOM_QMI_HELPERS
|
||||||
select QCOM_PDR_MSG
|
select QCOM_PDR_MSG
|
||||||
select AUXILIARY_BUS
|
select AUXILIARY_BUS
|
||||||
depends on NET && QRTR && (ARCH_QCOM || COMPILE_TEST)
|
depends on NET && QRTR
|
||||||
default QCOM_RPROC_COMMON
|
default QCOM_RPROC_COMMON
|
||||||
help
|
help
|
||||||
The Protection Domain Mapper maps registered services to the domains
|
The Protection Domain Mapper maps registered services to the domains
|
||||||
|
|
@ -85,12 +82,6 @@ config QCOM_PD_MAPPER
|
||||||
implementation of the service. It is a simpler alternative to the
|
implementation of the service. It is a simpler alternative to the
|
||||||
userspace daemon.
|
userspace daemon.
|
||||||
|
|
||||||
config QCOM_PDR_HELPERS
|
|
||||||
tristate
|
|
||||||
select QCOM_QMI_HELPERS
|
|
||||||
select QCOM_PDR_MSG
|
|
||||||
depends on NET
|
|
||||||
|
|
||||||
config QCOM_PDR_MSG
|
config QCOM_PDR_MSG
|
||||||
tristate
|
tristate
|
||||||
|
|
||||||
|
|
@ -124,13 +115,8 @@ config QCOM_PMIC_GLINK
|
||||||
Say yes here to support USB-C and battery status on modern Qualcomm
|
Say yes here to support USB-C and battery status on modern Qualcomm
|
||||||
platforms.
|
platforms.
|
||||||
|
|
||||||
config QCOM_QMI_HELPERS
|
|
||||||
tristate
|
|
||||||
depends on NET
|
|
||||||
|
|
||||||
config QCOM_RAMP_CTRL
|
config QCOM_RAMP_CTRL
|
||||||
tristate "Qualcomm Ramp Controller driver"
|
tristate "Qualcomm Ramp Controller driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
help
|
help
|
||||||
The Ramp Controller is used to program the sequence ID for pulse
|
The Ramp Controller is used to program the sequence ID for pulse
|
||||||
swallowing, enable sequence and link sequence IDs for the CPU
|
swallowing, enable sequence and link sequence IDs for the CPU
|
||||||
|
|
@ -139,7 +125,6 @@ config QCOM_RAMP_CTRL
|
||||||
|
|
||||||
config QCOM_RMTFS_MEM
|
config QCOM_RMTFS_MEM
|
||||||
tristate "Qualcomm Remote Filesystem memory driver"
|
tristate "Qualcomm Remote Filesystem memory driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
select QCOM_SCM
|
select QCOM_SCM
|
||||||
help
|
help
|
||||||
The Qualcomm remote filesystem memory driver is used for allocating
|
The Qualcomm remote filesystem memory driver is used for allocating
|
||||||
|
|
@ -151,7 +136,6 @@ config QCOM_RMTFS_MEM
|
||||||
|
|
||||||
config QCOM_RPM_MASTER_STATS
|
config QCOM_RPM_MASTER_STATS
|
||||||
tristate "Qualcomm RPM Master stats"
|
tristate "Qualcomm RPM Master stats"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
help
|
help
|
||||||
The RPM Master sleep stats driver provides detailed per-subsystem
|
The RPM Master sleep stats driver provides detailed per-subsystem
|
||||||
sleep/wake data, read from the RPM message RAM. It can be used to
|
sleep/wake data, read from the RPM message RAM. It can be used to
|
||||||
|
|
@ -162,7 +146,6 @@ config QCOM_RPM_MASTER_STATS
|
||||||
|
|
||||||
config QCOM_RPMH
|
config QCOM_RPMH
|
||||||
tristate "Qualcomm RPM-Hardened (RPMH) Communication"
|
tristate "Qualcomm RPM-Hardened (RPMH) Communication"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on (QCOM_COMMAND_DB || !QCOM_COMMAND_DB)
|
depends on (QCOM_COMMAND_DB || !QCOM_COMMAND_DB)
|
||||||
help
|
help
|
||||||
Support for communication with the hardened-RPM blocks in
|
Support for communication with the hardened-RPM blocks in
|
||||||
|
|
@ -173,7 +156,6 @@ config QCOM_RPMH
|
||||||
|
|
||||||
config QCOM_SMEM
|
config QCOM_SMEM
|
||||||
tristate "Qualcomm Shared Memory Manager (SMEM)"
|
tristate "Qualcomm Shared Memory Manager (SMEM)"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on HWSPINLOCK
|
depends on HWSPINLOCK
|
||||||
help
|
help
|
||||||
Say y here to enable support for the Qualcomm Shared Memory Manager.
|
Say y here to enable support for the Qualcomm Shared Memory Manager.
|
||||||
|
|
@ -182,7 +164,6 @@ config QCOM_SMEM
|
||||||
|
|
||||||
config QCOM_SMD_RPM
|
config QCOM_SMD_RPM
|
||||||
tristate "Qualcomm Resource Power Manager (RPM) over SMD"
|
tristate "Qualcomm Resource Power Manager (RPM) over SMD"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on RPMSG
|
depends on RPMSG
|
||||||
depends on RPMSG_QCOM_SMD || RPMSG_QCOM_SMD=n
|
depends on RPMSG_QCOM_SMD || RPMSG_QCOM_SMD=n
|
||||||
help
|
help
|
||||||
|
|
@ -229,7 +210,6 @@ config QCOM_SOCINFO
|
||||||
|
|
||||||
config QCOM_SPM
|
config QCOM_SPM
|
||||||
tristate "Qualcomm Subsystem Power Manager (SPM)"
|
tristate "Qualcomm Subsystem Power Manager (SPM)"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
select QCOM_SCM
|
select QCOM_SCM
|
||||||
help
|
help
|
||||||
Enable the support for the Qualcomm Subsystem Power Manager, used
|
Enable the support for the Qualcomm Subsystem Power Manager, used
|
||||||
|
|
@ -238,7 +218,7 @@ config QCOM_SPM
|
||||||
|
|
||||||
config QCOM_STATS
|
config QCOM_STATS
|
||||||
tristate "Qualcomm Sleep stats driver"
|
tristate "Qualcomm Sleep stats driver"
|
||||||
depends on (ARCH_QCOM && DEBUG_FS) || COMPILE_TEST
|
depends on DEBUG_FS || COMPILE_TEST
|
||||||
depends on QCOM_SMEM
|
depends on QCOM_SMEM
|
||||||
depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
|
depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
|
||||||
help
|
help
|
||||||
|
|
@ -249,7 +229,6 @@ config QCOM_STATS
|
||||||
|
|
||||||
config QCOM_WCNSS_CTRL
|
config QCOM_WCNSS_CTRL
|
||||||
tristate "Qualcomm WCNSS control driver"
|
tristate "Qualcomm WCNSS control driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on RPMSG
|
depends on RPMSG
|
||||||
help
|
help
|
||||||
Client driver for the WCNSS_CTRL SMD channel, used to download nv
|
Client driver for the WCNSS_CTRL SMD channel, used to download nv
|
||||||
|
|
@ -257,7 +236,6 @@ config QCOM_WCNSS_CTRL
|
||||||
|
|
||||||
config QCOM_APR
|
config QCOM_APR
|
||||||
tristate "Qualcomm APR/GPR Bus (Asynchronous/Generic Packet Router)"
|
tristate "Qualcomm APR/GPR Bus (Asynchronous/Generic Packet Router)"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
depends on RPMSG
|
depends on RPMSG
|
||||||
depends on NET
|
depends on NET
|
||||||
select QCOM_PDR_HELPERS
|
select QCOM_PDR_HELPERS
|
||||||
|
|
@ -269,7 +247,6 @@ config QCOM_APR
|
||||||
|
|
||||||
config QCOM_ICC_BWMON
|
config QCOM_ICC_BWMON
|
||||||
tristate "Qualcomm Interconnect Bandwidth Monitor driver"
|
tristate "Qualcomm Interconnect Bandwidth Monitor driver"
|
||||||
depends on ARCH_QCOM || COMPILE_TEST
|
|
||||||
select PM_OPP
|
select PM_OPP
|
||||||
select REGMAP_MMIO
|
select REGMAP_MMIO
|
||||||
help
|
help
|
||||||
|
|
@ -282,10 +259,6 @@ config QCOM_ICC_BWMON
|
||||||
the fixed bandwidth votes from cpufreq (CPU nodes) thus achieve high
|
the fixed bandwidth votes from cpufreq (CPU nodes) thus achieve high
|
||||||
memory throughput even with lower CPU frequencies.
|
memory throughput even with lower CPU frequencies.
|
||||||
|
|
||||||
config QCOM_INLINE_CRYPTO_ENGINE
|
|
||||||
tristate
|
|
||||||
select QCOM_SCM
|
|
||||||
|
|
||||||
config QCOM_PBS
|
config QCOM_PBS
|
||||||
tristate "PBS trigger support for Qualcomm PMICs"
|
tristate "PBS trigger support for Qualcomm PMICs"
|
||||||
depends on SPMI
|
depends on SPMI
|
||||||
|
|
@ -295,7 +268,32 @@ config QCOM_PBS
|
||||||
This module provides the APIs to the client drivers that wants to send the
|
This module provides the APIs to the client drivers that wants to send the
|
||||||
PBS trigger event to the PBS RAM.
|
PBS trigger event to the PBS RAM.
|
||||||
|
|
||||||
endmenu
|
endif
|
||||||
|
|
||||||
|
# Options selected by other drivers from different subsystems must be outside
|
||||||
|
# of the menuconfig if-block:
|
||||||
|
|
||||||
|
config QCOM_INLINE_CRYPTO_ENGINE
|
||||||
|
tristate
|
||||||
|
select QCOM_SCM
|
||||||
|
|
||||||
|
config QCOM_KRYO_L2_ACCESSORS
|
||||||
|
bool
|
||||||
|
depends on ARM64
|
||||||
|
|
||||||
|
config QCOM_MDT_LOADER
|
||||||
|
tristate
|
||||||
|
select QCOM_SCM
|
||||||
|
|
||||||
|
config QCOM_PDR_HELPERS
|
||||||
|
tristate
|
||||||
|
select QCOM_QMI_HELPERS
|
||||||
|
select QCOM_PDR_MSG
|
||||||
|
depends on NET
|
||||||
|
|
||||||
|
config QCOM_QMI_HELPERS
|
||||||
|
tristate
|
||||||
|
depends on NET
|
||||||
|
|
||||||
config QCOM_UBWC_CONFIG
|
config QCOM_UBWC_CONFIG
|
||||||
tristate
|
tristate
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user