| # 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_CPR | |
| tristate "QCOM Core Power Reduction (CPR) support" | |
| depends on ARCH_QCOM && HAS_IOMEM | |
| select PM_OPP | |
| select REGMAP | |
| help | |
| Say Y here to enable support for the CPR hardware found on Qualcomm | |
| SoCs like QCS404. | |
| This driver populates CPU OPPs tables and makes adjustments to the | |
| tables based on feedback from the CPR hardware. If you want to do | |
| CPUfrequency scaling say Y here. | |
| To compile this driver as a module, choose M here: the module will | |
| be called qcom-cpr | |
| 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 | |
| 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 && ARM64 || COMPILE_TEST | |
| 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_PDR_HELPERS | |
| tristate | |
| select QCOM_QMI_HELPERS | |
| config QCOM_QMI_HELPERS | |
| tristate | |
| depends on NET | |
| 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_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_RPMHPD | |
| tristate "Qualcomm RPMh Power domain driver" | |
| depends on QCOM_RPMH && QCOM_COMMAND_DB | |
| help | |
| QCOM RPMh Power domain driver to support power-domains with | |
| performance states. The driver communicates a performance state | |
| value to RPMh which then translates it into corresponding voltage | |
| for the voltage rail. | |
| config QCOM_RPMPD | |
| tristate "Qualcomm RPM Power domain driver" | |
| depends on PM | |
| depends on QCOM_SMD_RPM | |
| help | |
| QCOM RPM Power domain driver to support power-domains with | |
| performance states. The driver communicates a performance state | |
| value to RPM which then translates it into corresponding voltage | |
| for the voltage rail. | |
| 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 | |
| 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 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_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 Bus (Asynchronous 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. | |
| endmenu |