]>
Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
5d144e36 AG |
2 | # |
3 | # QCOM Soc drivers | |
4 | # | |
2a464815 SK |
5 | menu "Qualcomm SoC drivers" |
6 | ||
22094814 BA |
7 | config QCOM_AOSS_QMP |
8 | tristate "Qualcomm AOSS Driver" | |
9 | depends on ARCH_QCOM || COMPILE_TEST | |
10 | depends on MAILBOX | |
6b9d226b | 11 | depends on COMMON_CLK && PM |
22094814 BA |
12 | select PM_GENERIC_DOMAINS |
13 | help | |
14 | This driver provides the means of communicating with and controlling | |
15 | the low-power state for resources related to the remoteproc | |
16 | subsystems as well as controlling the debug clocks exposed by the Always On | |
17 | Subsystem (AOSS) using Qualcomm Messaging Protocol (QMP). | |
18 | ||
312416d9 | 19 | config QCOM_COMMAND_DB |
778279f4 | 20 | tristate "Qualcomm Command DB" |
0ea3fa15 AB |
21 | depends on ARCH_QCOM || COMPILE_TEST |
22 | depends on OF_RESERVED_MEM | |
312416d9 MS |
23 | help |
24 | Command DB queries shared memory by key string for shared system | |
25 | resources. Platform drivers that require to set state of a shared | |
26 | resource on a RPM-hardened platform must use this database to get | |
27 | SoC specific identifier and information for the shared resources. | |
28 | ||
a7305e68 UH |
29 | config QCOM_CPR |
30 | tristate "QCOM Core Power Reduction (CPR) support" | |
31 | depends on ARCH_QCOM && HAS_IOMEM | |
32 | select PM_OPP | |
33 | select REGMAP | |
34 | help | |
35 | Say Y here to enable support for the CPR hardware found on Qualcomm | |
36 | SoCs like QCS404. | |
37 | ||
38 | This driver populates CPU OPPs tables and makes adjustments to the | |
39 | tables based on feedback from the CPR hardware. If you want to do | |
40 | CPUfrequency scaling say Y here. | |
41 | ||
42 | To compile this driver as a module, choose M here: the module will | |
43 | be called qcom-cpr | |
44 | ||
eddac5af KR |
45 | config QCOM_GENI_SE |
46 | tristate "QCOM GENI Serial Engine Driver" | |
47 | depends on ARCH_QCOM || COMPILE_TEST | |
48 | help | |
49 | This driver is used to manage Generic Interface (GENI) firmware based | |
50 | Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This | |
51 | driver is also used to manage the common aspects of multiple Serial | |
52 | Engines present in the QUP. | |
53 | ||
5d144e36 | 54 | config QCOM_GSBI |
a9e8fce6 KK |
55 | tristate "QCOM General Serial Bus Interface" |
56 | depends on ARCH_QCOM || COMPILE_TEST | |
57 | select MFD_SYSCON | |
58 | help | |
59 | Say y here to enable GSBI support. The GSBI provides control | |
60 | functions for connecting the underlying serial UART, SPI, and I2C | |
61 | devices to the output pins. | |
5d144e36 | 62 | |
a3134fb0 RB |
63 | config QCOM_LLCC |
64 | tristate "Qualcomm Technologies, Inc. LLCC driver" | |
ccfb464c | 65 | depends on ARCH_QCOM || COMPILE_TEST |
a3134fb0 RB |
66 | help |
67 | Qualcomm Technologies, Inc. platform specific | |
a14b8203 VG |
68 | Last Level Cache Controller(LLCC) driver for platforms such as, |
69 | SDM845. This provides interfaces to clients that use the LLCC. | |
70 | Say yes here to enable LLCC slice driver. | |
a3134fb0 | 71 | |
6d0efeb1 IL |
72 | config QCOM_KRYO_L2_ACCESSORS |
73 | bool | |
74 | depends on ARCH_QCOM && ARM64 || COMPILE_TEST | |
75 | ||
2aad40d9 BA |
76 | config QCOM_MDT_LOADER |
77 | tristate | |
78 | select QCOM_SCM | |
79 | ||
88c1e940 BM |
80 | config QCOM_OCMEM |
81 | tristate "Qualcomm On Chip Memory (OCMEM) driver" | |
82 | depends on ARCH_QCOM | |
83 | select QCOM_SCM | |
84 | help | |
a9e8fce6 KK |
85 | The On Chip Memory (OCMEM) allocator allows various clients to |
86 | allocate memory from OCMEM based on performance, latency and power | |
87 | requirements. This is typically used by the GPU, camera/video, and | |
88 | audio components on some Snapdragon SoCs. | |
88c1e940 | 89 | |
fbe639b4 SS |
90 | config QCOM_PDR_HELPERS |
91 | tristate | |
92 | select QCOM_QMI_HELPERS | |
93 | ||
9b8a11e8 BA |
94 | config QCOM_QMI_HELPERS |
95 | tristate | |
ccfb464c | 96 | depends on NET |
9b8a11e8 | 97 | |
d1de6d6c BA |
98 | config QCOM_RMTFS_MEM |
99 | tristate "Qualcomm Remote Filesystem memory driver" | |
100 | depends on ARCH_QCOM | |
fa65f804 | 101 | select QCOM_SCM |
d1de6d6c BA |
102 | help |
103 | The Qualcomm remote filesystem memory driver is used for allocating | |
104 | and exposing regions of shared memory with remote processors for the | |
105 | purpose of exchanging sector-data between the remote filesystem | |
106 | service and its clients. | |
107 | ||
108 | Say y here if you intend to boot the modem remoteproc. | |
109 | ||
658628e7 | 110 | config QCOM_RPMH |
cb365926 | 111 | tristate "Qualcomm RPM-Hardened (RPMH) Communication" |
681b0912 | 112 | depends on ARCH_QCOM || COMPILE_TEST |
827b5e6e | 113 | depends on (QCOM_COMMAND_DB || !QCOM_COMMAND_DB) |
658628e7 LI |
114 | help |
115 | Support for communication with the hardened-RPM blocks in | |
116 | Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an | |
117 | internal bus to transmit state requests for shared resources. A set | |
118 | of hardware components aggregate requests for these resources and | |
119 | help apply the aggregated state on the resource. | |
120 | ||
279b7e8a | 121 | config QCOM_RPMHPD |
d4889ec1 | 122 | tristate "Qualcomm RPMh Power domain driver" |
279b7e8a RN |
123 | depends on QCOM_RPMH && QCOM_COMMAND_DB |
124 | help | |
125 | QCOM RPMh Power domain driver to support power-domains with | |
126 | performance states. The driver communicates a performance state | |
127 | value to RPMh which then translates it into corresponding voltage | |
128 | for the voltage rail. | |
129 | ||
bbe3a66c | 130 | config QCOM_RPMPD |
f29808b2 JS |
131 | tristate "Qualcomm RPM Power domain driver" |
132 | depends on QCOM_SMD_RPM | |
bbe3a66c RN |
133 | help |
134 | QCOM RPM Power domain driver to support power-domains with | |
135 | performance states. The driver communicates a performance state | |
136 | value to RPM which then translates it into corresponding voltage | |
137 | for the voltage rail. | |
138 | ||
7d0c8bee SB |
139 | config QCOM_SMEM |
140 | tristate "Qualcomm Shared Memory Manager (SMEM)" | |
ccfb464c | 141 | depends on ARCH_QCOM || COMPILE_TEST |
73ebb854 | 142 | depends on HWSPINLOCK |
7d0c8bee SB |
143 | help |
144 | Say y here to enable support for the Qualcomm Shared Memory Manager. | |
145 | The driver provides an interface to items in a heap shared among all | |
146 | processors in a Qualcomm platform. | |
147 | ||
936f14cf BA |
148 | config QCOM_SMD_RPM |
149 | tristate "Qualcomm Resource Power Manager (RPM) over SMD" | |
ccfb464c | 150 | depends on ARCH_QCOM || COMPILE_TEST |
a09b440a | 151 | depends on RPMSG |
936f14cf BA |
152 | help |
153 | If you say yes to this option, support will be included for the | |
154 | Resource Power Manager system found in the Qualcomm 8974 based | |
155 | devices. | |
156 | ||
157 | This is required to access many regulators, clocks and bus | |
158 | frequencies controlled by the RPM on these devices. | |
159 | ||
160 | Say M here if you want to include support for the Qualcomm RPM as a | |
161 | module. This will build a module called "qcom-smd-rpm". | |
9460ae2f BA |
162 | |
163 | config QCOM_SMEM_STATE | |
164 | bool | |
c97c4090 | 165 | |
50e99641 | 166 | config QCOM_SMP2P |
10475d59 | 167 | tristate "Qualcomm Shared Memory Point to Point support" |
e7180264 | 168 | depends on MAILBOX |
50e99641 BA |
169 | depends on QCOM_SMEM |
170 | select QCOM_SMEM_STATE | |
810f11a9 | 171 | select IRQ_DOMAIN |
50e99641 BA |
172 | help |
173 | Say yes here to support the Qualcomm Shared Memory Point to Point | |
174 | protocol. | |
175 | ||
c97c4090 | 176 | config QCOM_SMSM |
10475d59 | 177 | tristate "Qualcomm Shared Memory State Machine" |
c97c4090 BA |
178 | depends on QCOM_SMEM |
179 | select QCOM_SMEM_STATE | |
0a5cdb41 | 180 | select IRQ_DOMAIN |
c97c4090 BA |
181 | help |
182 | Say yes here to support the Qualcomm Shared Memory State Machine. | |
183 | The state machine is represented by bits in shared memory. | |
ea7a1f27 | 184 | |
efb448d0 IK |
185 | config QCOM_SOCINFO |
186 | tristate "Qualcomm socinfo driver" | |
187 | depends on QCOM_SMEM | |
188 | select SOC_BUS | |
189 | help | |
190 | Say yes here to support the Qualcomm socinfo driver, providing | |
191 | information about the SoC to user space. | |
192 | ||
ea7a1f27 BA |
193 | config QCOM_WCNSS_CTRL |
194 | tristate "Qualcomm WCNSS control driver" | |
ccfb464c | 195 | depends on ARCH_QCOM || COMPILE_TEST |
5052de8d | 196 | depends on RPMSG |
ea7a1f27 BA |
197 | help |
198 | Client driver for the WCNSS_CTRL SMD channel, used to download nv | |
199 | firmware to a newly booted WCNSS chip. | |
2a464815 | 200 | |
6adba21e SK |
201 | config QCOM_APR |
202 | tristate "Qualcomm APR Bus (Asynchronous Packet Router)" | |
ccfb464c | 203 | depends on ARCH_QCOM || COMPILE_TEST |
6adba21e | 204 | depends on RPMSG |
de722e41 | 205 | depends on NET |
83473566 | 206 | select QCOM_PDR_HELPERS |
6adba21e | 207 | help |
a9e8fce6 KK |
208 | Enable APR IPC protocol support between |
209 | application processor and QDSP6. APR is | |
210 | used by audio driver to configure QDSP6 | |
211 | ASM, ADM and AFE modules. | |
2a464815 | 212 | endmenu |