1 # SPDX-License-Identifier: GPL-2.0-only
5 menu "Qualcomm SoC drivers"
8 bool "Qualcomm Command DB"
9 depends on ARCH_QCOM || COMPILE_TEST
10 depends on OF_RESERVED_MEM
12 Command DB queries shared memory by key string for shared system
13 resources. Platform drivers that require to set state of a shared
14 resource on a RPM-hardened platform must use this database to get
15 SoC specific identifier and information for the shared resources.
18 tristate "QCOM GENI Serial Engine Driver"
19 depends on ARCH_QCOM || COMPILE_TEST
21 This driver is used to manage Generic Interface (GENI) firmware based
22 Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
23 driver is also used to manage the common aspects of multiple Serial
24 Engines present in the QUP.
27 tristate "Qualcomm Glink SSR driver"
29 depends on QCOM_RPROC_COMMON
31 Say y here to enable GLINK SSR support. The GLINK SSR driver
32 implements the SSR protocol for notifying the remote processor about
33 neighboring subsystems going up or down.
36 tristate "QCOM General Serial Bus Interface"
37 depends on ARCH_QCOM || COMPILE_TEST
40 Say y here to enable GSBI support. The GSBI provides control
41 functions for connecting the underlying serial UART, SPI, and I2C
42 devices to the output pins.
45 tristate "Qualcomm Technologies, Inc. LLCC driver"
46 depends on ARCH_QCOM || COMPILE_TEST
48 Qualcomm Technologies, Inc. platform specific
49 Last Level Cache Controller(LLCC) driver. This provides interfaces
50 to clients that use the LLCC. Say yes here to enable LLCC slice
53 config QCOM_SDM845_LLCC
54 tristate "Qualcomm Technologies, Inc. SDM845 LLCC driver"
57 Say yes here to enable the LLCC driver for SDM845. This provides
58 data required to configure LLCC so that clients can start using the
61 config QCOM_MDT_LOADER
66 bool "Qualcomm Power Management"
67 depends on ARCH_QCOM && !ARM64
68 select ARM_CPU_SUSPEND
71 QCOM Platform specific power driver to manage cores and L2 low power
72 modes. It interface with various system drivers to put the cores in
75 config QCOM_QMI_HELPERS
77 depends on ARCH_QCOM || COMPILE_TEST
81 tristate "Qualcomm Remote Filesystem memory driver"
85 The Qualcomm remote filesystem memory driver is used for allocating
86 and exposing regions of shared memory with remote processors for the
87 purpose of exchanging sector-data between the remote filesystem
88 service and its clients.
90 Say y here if you intend to boot the modem remoteproc.
93 bool "Qualcomm RPM-Hardened (RPMH) Communication"
94 depends on ARCH_QCOM && ARM64 || COMPILE_TEST
96 Support for communication with the hardened-RPM blocks in
97 Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
98 internal bus to transmit state requests for shared resources. A set
99 of hardware components aggregate requests for these resources and
100 help apply the aggregated state on the resource.
103 bool "Qualcomm RPMh Power domain driver"
104 depends on QCOM_RPMH && QCOM_COMMAND_DB
106 QCOM RPMh Power domain driver to support power-domains with
107 performance states. The driver communicates a performance state
108 value to RPMh which then translates it into corresponding voltage
109 for the voltage rail.
112 bool "Qualcomm RPM Power domain driver"
113 depends on QCOM_SMD_RPM=y
115 QCOM RPM Power domain driver to support power-domains with
116 performance states. The driver communicates a performance state
117 value to RPM which then translates it into corresponding voltage
118 for the voltage rail.
121 tristate "Qualcomm Shared Memory Manager (SMEM)"
122 depends on ARCH_QCOM || COMPILE_TEST
123 depends on HWSPINLOCK
125 Say y here to enable support for the Qualcomm Shared Memory Manager.
126 The driver provides an interface to items in a heap shared among all
127 processors in a Qualcomm platform.
130 tristate "Qualcomm Resource Power Manager (RPM) over SMD"
131 depends on ARCH_QCOM || COMPILE_TEST
134 If you say yes to this option, support will be included for the
135 Resource Power Manager system found in the Qualcomm 8974 based
138 This is required to access many regulators, clocks and bus
139 frequencies controlled by the RPM on these devices.
141 Say M here if you want to include support for the Qualcomm RPM as a
142 module. This will build a module called "qcom-smd-rpm".
144 config QCOM_SMEM_STATE
148 tristate "Qualcomm Shared Memory Point to Point support"
151 select QCOM_SMEM_STATE
154 Say yes here to support the Qualcomm Shared Memory Point to Point
158 tristate "Qualcomm Shared Memory State Machine"
160 select QCOM_SMEM_STATE
163 Say yes here to support the Qualcomm Shared Memory State Machine.
164 The state machine is represented by bits in shared memory.
166 config QCOM_WCNSS_CTRL
167 tristate "Qualcomm WCNSS control driver"
168 depends on ARCH_QCOM || COMPILE_TEST
171 Client driver for the WCNSS_CTRL SMD channel, used to download nv
172 firmware to a newly booted WCNSS chip.
175 tristate "Qualcomm APR Bus (Asynchronous Packet Router)"
176 depends on ARCH_QCOM || COMPILE_TEST
179 Enable APR IPC protocol support between
180 application processor and QDSP6. APR is
181 used by audio driver to configure QDSP6
182 ASM, ADM and AFE modules.