| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298 |
- # SPDX-License-Identifier: GPL-2.0-only
- #
- # QCOM Soc drivers
- #
- menu "Qualcomm SoC drivers"
- config QCOM_AOSS_QMP
- tristate "Qualcomm AOSS Driver"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on MAILBOX
- depends on COMMON_CLK && PM
- select PM_GENERIC_DOMAINS
- help
- This driver provides the means of communicating with and controlling
- the low-power state for resources related to the remoteproc
- subsystems as well as controlling the debug clocks exposed by the Always On
- Subsystem (AOSS) using Qualcomm Messaging Protocol (QMP).
- config QCOM_COMMAND_DB
- tristate "Qualcomm Command DB"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on OF_RESERVED_MEM
- help
- Command DB queries shared memory by key string for shared system
- resources. Platform drivers that require to set state of a shared
- resource on a RPM-hardened platform must use this database to get
- SoC specific identifier and information for the shared resources.
- config QCOM_GENI_SE
- tristate "QCOM GENI Serial Engine Driver"
- depends on ARCH_QCOM || COMPILE_TEST
- help
- This driver is used to manage Generic Interface (GENI) firmware based
- Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
- driver is also used to manage the common aspects of multiple Serial
- Engines present in the QUP.
- config QCOM_GSBI
- tristate "QCOM General Serial Bus Interface"
- depends on ARCH_QCOM || COMPILE_TEST
- select MFD_SYSCON
- help
- Say y here to enable GSBI support. The GSBI provides control
- functions for connecting the underlying serial UART, SPI, and I2C
- devices to the output pins.
- config QCOM_LLCC
- tristate "Qualcomm Technologies, Inc. LLCC driver"
- depends on ARCH_QCOM || COMPILE_TEST
- select REGMAP_MMIO
- help
- Qualcomm Technologies, Inc. platform specific
- Last Level Cache Controller(LLCC) driver for platforms such as,
- SDM845. This provides interfaces to clients that use the LLCC.
- 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
- tristate "Qualcomm On Chip Memory (OCMEM) driver"
- depends on ARCH_QCOM
- select QCOM_SCM
- help
- The On Chip Memory (OCMEM) allocator allows various clients to
- allocate memory from OCMEM based on performance, latency and power
- requirements. This is typically used by the GPU, camera/video, and
- audio components on some Snapdragon SoCs.
- config QCOM_PD_MAPPER
- tristate "Qualcomm Protection Domain Mapper"
- select QCOM_QMI_HELPERS
- select QCOM_PDR_MSG
- select AUXILIARY_BUS
- depends on NET && QRTR && (ARCH_QCOM || COMPILE_TEST)
- default QCOM_RPROC_COMMON
- help
- The Protection Domain Mapper maps registered services to the domains
- and instances handled by the remote DSPs. This is a kernel-space
- implementation of the service. It is a simpler alternative to the
- userspace daemon.
- config QCOM_PDR_HELPERS
- tristate
- select QCOM_QMI_HELPERS
- select QCOM_PDR_MSG
- depends on NET
- config QCOM_PDR_MSG
- tristate
- config QCOM_PMIC_PDCHARGER_ULOG
- tristate "Qualcomm PMIC PDCharger ULOG driver"
- depends on RPMSG
- depends on EVENT_TRACING
- help
- The Qualcomm PMIC PDCharger ULOG driver provides access to logs of
- the ADSP firmware PDCharger module in charge of Battery and Power
- Delivery on modern systems.
- Say yes here to support PDCharger ULOG event tracing on modern
- Qualcomm platforms.
- config QCOM_PMIC_GLINK
- tristate "Qualcomm PMIC GLINK driver"
- depends on RPMSG
- depends on TYPEC
- depends on DRM
- depends on NET
- depends on OF
- select AUXILIARY_BUS
- select QCOM_PDR_HELPERS
- select DRM_AUX_HPD_BRIDGE
- help
- The Qualcomm PMIC GLINK driver provides access, over GLINK, to the
- USB and battery firmware running on one of the coprocessors in
- several modern Qualcomm platforms.
- Say yes here to support USB-C and battery status on modern Qualcomm
- platforms.
- config QCOM_QMI_HELPERS
- tristate
- depends on NET
- config QCOM_RAMP_CTRL
- tristate "Qualcomm Ramp Controller driver"
- depends on ARCH_QCOM || COMPILE_TEST
- help
- The Ramp Controller is used to program the sequence ID for pulse
- swallowing, enable sequence and link sequence IDs for the CPU
- cores on some Qualcomm SoCs.
- Say y here to enable support for the ramp controller.
- config QCOM_RMTFS_MEM
- tristate "Qualcomm Remote Filesystem memory driver"
- depends on ARCH_QCOM
- select QCOM_SCM
- help
- The Qualcomm remote filesystem memory driver is used for allocating
- and exposing regions of shared memory with remote processors for the
- purpose of exchanging sector-data between the remote filesystem
- service and its clients.
- Say y here if you intend to boot the modem remoteproc.
- config QCOM_RPM_MASTER_STATS
- tristate "Qualcomm RPM Master stats"
- depends on ARCH_QCOM || COMPILE_TEST
- help
- The RPM Master sleep stats driver provides detailed per-subsystem
- sleep/wake data, read from the RPM message RAM. It can be used to
- assess whether all the low-power modes available are entered as
- expected or to check which part of the SoC prevents it from sleeping.
- Say y here if you intend to debug or monitor platform sleep.
- config QCOM_RPMH
- tristate "Qualcomm RPM-Hardened (RPMH) Communication"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on (QCOM_COMMAND_DB || !QCOM_COMMAND_DB)
- help
- Support for communication with the hardened-RPM blocks in
- Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
- internal bus to transmit state requests for shared resources. A set
- of hardware components aggregate requests for these resources and
- help apply the aggregated state on the resource.
- config QCOM_SMEM
- tristate "Qualcomm Shared Memory Manager (SMEM)"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on HWSPINLOCK
- help
- Say y here to enable support for the Qualcomm Shared Memory Manager.
- The driver provides an interface to items in a heap shared among all
- processors in a Qualcomm platform.
- config QCOM_SMD_RPM
- tristate "Qualcomm Resource Power Manager (RPM) over SMD"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on RPMSG
- depends on RPMSG_QCOM_SMD || RPMSG_QCOM_SMD=n
- help
- If you say yes to this option, support will be included for the
- Resource Power Manager system found in the Qualcomm 8974 based
- devices.
- This is required to access many regulators, clocks and bus
- frequencies controlled by the RPM on these devices.
- Say M here if you want to include support for the Qualcomm RPM as a
- module. This will build a module called "qcom-smd-rpm".
- config QCOM_SMEM_STATE
- bool
- config QCOM_SMP2P
- tristate "Qualcomm Shared Memory Point to Point support"
- depends on MAILBOX
- depends on QCOM_SMEM
- select QCOM_SMEM_STATE
- select IRQ_DOMAIN
- help
- Say yes here to support the Qualcomm Shared Memory Point to Point
- protocol.
- config QCOM_SMSM
- tristate "Qualcomm Shared Memory State Machine"
- depends on MAILBOX
- depends on QCOM_SMEM
- select QCOM_SMEM_STATE
- select IRQ_DOMAIN
- help
- Say yes here to support the Qualcomm Shared Memory State Machine.
- The state machine is represented by bits in shared memory.
- config QCOM_SOCINFO
- tristate "Qualcomm socinfo driver"
- depends on QCOM_SMEM
- select SOC_BUS
- help
- Say yes here to support the Qualcomm socinfo driver, providing
- information about the SoC to user space.
- config QCOM_SPM
- tristate "Qualcomm Subsystem Power Manager (SPM)"
- depends on ARCH_QCOM || COMPILE_TEST
- select QCOM_SCM
- help
- Enable the support for the Qualcomm Subsystem Power Manager, used
- to manage cores, L2 low power modes and to configure the internal
- Adaptive Voltage Scaler parameters, where supported.
- config QCOM_STATS
- tristate "Qualcomm Technologies, Inc. (QTI) Sleep stats driver"
- depends on (ARCH_QCOM && DEBUG_FS) || COMPILE_TEST
- depends on QCOM_SMEM
- depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
- help
- Qualcomm Technologies, Inc. (QTI) Sleep stats driver to read
- the shared memory exported by the remote processor related to
- various SoC level low power modes statistics and export to debugfs
- interface.
- config QCOM_WCNSS_CTRL
- tristate "Qualcomm WCNSS control driver"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on RPMSG
- help
- Client driver for the WCNSS_CTRL SMD channel, used to download nv
- firmware to a newly booted WCNSS chip.
- config QCOM_APR
- tristate "Qualcomm APR/GPR Bus (Asynchronous/Generic Packet Router)"
- depends on ARCH_QCOM || COMPILE_TEST
- depends on RPMSG
- depends on NET
- select QCOM_PDR_HELPERS
- help
- Enable APR IPC protocol support between
- application processor and QDSP6. APR is
- used by audio driver to configure QDSP6
- ASM, ADM and AFE modules.
- config QCOM_ICC_BWMON
- tristate "QCOM Interconnect Bandwidth Monitor driver"
- depends on ARCH_QCOM || COMPILE_TEST
- select PM_OPP
- select REGMAP_MMIO
- help
- Sets up driver monitoring bandwidth on various interconnects and
- based on that voting for interconnect bandwidth, adjusting their
- speed to current demand.
- Current implementation brings support for BWMON v4, used for example
- on SDM845 to measure bandwidth between CPU (gladiator_noc) and Last
- Level Cache (memnoc). Usage of this BWMON allows to remove some of
- the fixed bandwidth votes from cpufreq (CPU nodes) thus achieve high
- memory throughput even with lower CPU frequencies.
- config QCOM_INLINE_CRYPTO_ENGINE
- tristate
- select QCOM_SCM
- config QCOM_PBS
- tristate "PBS trigger support for Qualcomm Technologies, Inc. PMICS"
- depends on SPMI
- help
- This driver supports configuring software programmable boot sequencer (PBS)
- trigger event through PBS RAM on Qualcomm Technologies, Inc. PMICs.
- This module provides the APIs to the client drivers that wants to send the
- PBS trigger event to the PBS RAM.
- endmenu
|