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 MS |
19 | config QCOM_COMMAND_DB |
20 | bool "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 | ||
eddac5af KR |
29 | config QCOM_GENI_SE |
30 | tristate "QCOM GENI Serial Engine Driver" | |
31 | depends on ARCH_QCOM || COMPILE_TEST | |
32 | help | |
33 | This driver is used to manage Generic Interface (GENI) firmware based | |
34 | Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This | |
35 | driver is also used to manage the common aspects of multiple Serial | |
36 | Engines present in the QUP. | |
37 | ||
c4d77d5f BA |
38 | config QCOM_GLINK_SSR |
39 | tristate "Qualcomm Glink SSR driver" | |
40 | depends on RPMSG | |
41 | depends on QCOM_RPROC_COMMON | |
42 | help | |
43 | Say y here to enable GLINK SSR support. The GLINK SSR driver | |
44 | implements the SSR protocol for notifying the remote processor about | |
45 | neighboring subsystems going up or down. | |
46 | ||
5d144e36 AG |
47 | config QCOM_GSBI |
48 | tristate "QCOM General Serial Bus Interface" | |
ccfb464c | 49 | depends on ARCH_QCOM || COMPILE_TEST |
e5fdad68 | 50 | select MFD_SYSCON |
5d144e36 AG |
51 | help |
52 | Say y here to enable GSBI support. The GSBI provides control | |
53 | functions for connecting the underlying serial UART, SPI, and I2C | |
54 | devices to the output pins. | |
55 | ||
a3134fb0 RB |
56 | config QCOM_LLCC |
57 | tristate "Qualcomm Technologies, Inc. LLCC driver" | |
ccfb464c | 58 | depends on ARCH_QCOM || COMPILE_TEST |
a3134fb0 RB |
59 | help |
60 | Qualcomm Technologies, Inc. platform specific | |
61 | Last Level Cache Controller(LLCC) driver. This provides interfaces | |
62 | to clients that use the LLCC. Say yes here to enable LLCC slice | |
63 | driver. | |
64 | ||
65 | config QCOM_SDM845_LLCC | |
66 | tristate "Qualcomm Technologies, Inc. SDM845 LLCC driver" | |
67 | depends on QCOM_LLCC | |
68 | help | |
69 | Say yes here to enable the LLCC driver for SDM845. This provides | |
70 | data required to configure LLCC so that clients can start using the | |
71 | LLCC slices. | |
72 | ||
2aad40d9 BA |
73 | config QCOM_MDT_LOADER |
74 | tristate | |
75 | select QCOM_SCM | |
76 | ||
7ce75bb2 LI |
77 | config QCOM_PM |
78 | bool "Qualcomm Power Management" | |
79 | depends on ARCH_QCOM && !ARM64 | |
d9d6888f | 80 | select ARM_CPU_SUSPEND |
23b38ceb | 81 | select QCOM_SCM |
7ce75bb2 LI |
82 | help |
83 | QCOM Platform specific power driver to manage cores and L2 low power | |
84 | modes. It interface with various system drivers to put the cores in | |
85 | low power modes. | |
4b638df4 | 86 | |
9b8a11e8 BA |
87 | config QCOM_QMI_HELPERS |
88 | tristate | |
ccfb464c NC |
89 | depends on ARCH_QCOM || COMPILE_TEST |
90 | depends on NET | |
9b8a11e8 | 91 | |
d1de6d6c BA |
92 | config QCOM_RMTFS_MEM |
93 | tristate "Qualcomm Remote Filesystem memory driver" | |
94 | depends on ARCH_QCOM | |
fa65f804 | 95 | select QCOM_SCM |
d1de6d6c BA |
96 | help |
97 | The Qualcomm remote filesystem memory driver is used for allocating | |
98 | and exposing regions of shared memory with remote processors for the | |
99 | purpose of exchanging sector-data between the remote filesystem | |
100 | service and its clients. | |
101 | ||
102 | Say y here if you intend to boot the modem remoteproc. | |
103 | ||
658628e7 LI |
104 | config QCOM_RPMH |
105 | bool "Qualcomm RPM-Hardened (RPMH) Communication" | |
c62615b1 | 106 | depends on ARCH_QCOM && ARM64 || COMPILE_TEST |
658628e7 LI |
107 | help |
108 | Support for communication with the hardened-RPM blocks in | |
109 | Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an | |
110 | internal bus to transmit state requests for shared resources. A set | |
111 | of hardware components aggregate requests for these resources and | |
112 | help apply the aggregated state on the resource. | |
113 | ||
279b7e8a RN |
114 | config QCOM_RPMHPD |
115 | bool "Qualcomm RPMh Power domain driver" | |
116 | depends on QCOM_RPMH && QCOM_COMMAND_DB | |
117 | help | |
118 | QCOM RPMh Power domain driver to support power-domains with | |
119 | performance states. The driver communicates a performance state | |
120 | value to RPMh which then translates it into corresponding voltage | |
121 | for the voltage rail. | |
122 | ||
bbe3a66c RN |
123 | config QCOM_RPMPD |
124 | bool "Qualcomm RPM Power domain driver" | |
4eccc154 | 125 | depends on QCOM_SMD_RPM=y |
bbe3a66c RN |
126 | help |
127 | QCOM RPM Power domain driver to support power-domains with | |
128 | performance states. The driver communicates a performance state | |
129 | value to RPM which then translates it into corresponding voltage | |
130 | for the voltage rail. | |
131 | ||
7d0c8bee SB |
132 | config QCOM_SMEM |
133 | tristate "Qualcomm Shared Memory Manager (SMEM)" | |
ccfb464c | 134 | depends on ARCH_QCOM || COMPILE_TEST |
73ebb854 | 135 | depends on HWSPINLOCK |
7d0c8bee SB |
136 | help |
137 | Say y here to enable support for the Qualcomm Shared Memory Manager. | |
138 | The driver provides an interface to items in a heap shared among all | |
139 | processors in a Qualcomm platform. | |
140 | ||
936f14cf BA |
141 | config QCOM_SMD_RPM |
142 | tristate "Qualcomm Resource Power Manager (RPM) over SMD" | |
ccfb464c | 143 | depends on ARCH_QCOM || COMPILE_TEST |
a09b440a | 144 | depends on RPMSG |
936f14cf BA |
145 | help |
146 | If you say yes to this option, support will be included for the | |
147 | Resource Power Manager system found in the Qualcomm 8974 based | |
148 | devices. | |
149 | ||
150 | This is required to access many regulators, clocks and bus | |
151 | frequencies controlled by the RPM on these devices. | |
152 | ||
153 | Say M here if you want to include support for the Qualcomm RPM as a | |
154 | module. This will build a module called "qcom-smd-rpm". | |
9460ae2f BA |
155 | |
156 | config QCOM_SMEM_STATE | |
157 | bool | |
c97c4090 | 158 | |
50e99641 | 159 | config QCOM_SMP2P |
10475d59 | 160 | tristate "Qualcomm Shared Memory Point to Point support" |
e7180264 | 161 | depends on MAILBOX |
50e99641 BA |
162 | depends on QCOM_SMEM |
163 | select QCOM_SMEM_STATE | |
810f11a9 | 164 | select IRQ_DOMAIN |
50e99641 BA |
165 | help |
166 | Say yes here to support the Qualcomm Shared Memory Point to Point | |
167 | protocol. | |
168 | ||
c97c4090 | 169 | config QCOM_SMSM |
10475d59 | 170 | tristate "Qualcomm Shared Memory State Machine" |
c97c4090 BA |
171 | depends on QCOM_SMEM |
172 | select QCOM_SMEM_STATE | |
0a5cdb41 | 173 | select IRQ_DOMAIN |
c97c4090 BA |
174 | help |
175 | Say yes here to support the Qualcomm Shared Memory State Machine. | |
176 | The state machine is represented by bits in shared memory. | |
ea7a1f27 BA |
177 | |
178 | config QCOM_WCNSS_CTRL | |
179 | tristate "Qualcomm WCNSS control driver" | |
ccfb464c | 180 | depends on ARCH_QCOM || COMPILE_TEST |
5052de8d | 181 | depends on RPMSG |
ea7a1f27 BA |
182 | help |
183 | Client driver for the WCNSS_CTRL SMD channel, used to download nv | |
184 | firmware to a newly booted WCNSS chip. | |
2a464815 | 185 | |
6adba21e SK |
186 | config QCOM_APR |
187 | tristate "Qualcomm APR Bus (Asynchronous Packet Router)" | |
ccfb464c | 188 | depends on ARCH_QCOM || COMPILE_TEST |
6adba21e SK |
189 | depends on RPMSG |
190 | help | |
191 | Enable APR IPC protocol support between | |
192 | application processor and QDSP6. APR is | |
193 | used by audio driver to configure QDSP6 | |
194 | ASM, ADM and AFE modules. | |
2a464815 | 195 | endmenu |