Merge branch 'regulator-4.19' into regulator-next
[muen/linux.git] / drivers / soc / qcom / Kconfig
1 #
2 # QCOM Soc drivers
3 #
4 menu "Qualcomm SoC drivers"
5
6 config QCOM_COMMAND_DB
7         bool "Qualcomm Command DB"
8         depends on ARCH_QCOM || COMPILE_TEST
9         depends on OF_RESERVED_MEM
10         help
11           Command DB queries shared memory by key string for shared system
12           resources. Platform drivers that require to set state of a shared
13           resource on a RPM-hardened platform must use this database to get
14           SoC specific identifier and information for the shared resources.
15
16 config QCOM_GENI_SE
17         tristate "QCOM GENI Serial Engine Driver"
18         depends on ARCH_QCOM || COMPILE_TEST
19         help
20           This driver is used to manage Generic Interface (GENI) firmware based
21           Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
22           driver is also used to manage the common aspects of multiple Serial
23           Engines present in the QUP.
24
25 config QCOM_GLINK_SSR
26         tristate "Qualcomm Glink SSR driver"
27         depends on RPMSG
28         depends on QCOM_RPROC_COMMON
29         help
30           Say y here to enable GLINK SSR support. The GLINK SSR driver
31           implements the SSR protocol for notifying the remote processor about
32           neighboring subsystems going up or down.
33
34 config QCOM_GSBI
35         tristate "QCOM General Serial Bus Interface"
36         depends on ARCH_QCOM
37         select MFD_SYSCON
38         help
39           Say y here to enable GSBI support.  The GSBI provides control
40           functions for connecting the underlying serial UART, SPI, and I2C
41           devices to the output pins.
42
43 config QCOM_LLCC
44         tristate "Qualcomm Technologies, Inc. LLCC driver"
45         depends on ARCH_QCOM
46         help
47           Qualcomm Technologies, Inc. platform specific
48           Last Level Cache Controller(LLCC) driver. This provides interfaces
49           to clients that use the LLCC. Say yes here to enable LLCC slice
50           driver.
51
52 config QCOM_SDM845_LLCC
53         tristate "Qualcomm Technologies, Inc. SDM845 LLCC driver"
54         depends on QCOM_LLCC
55         help
56           Say yes here to enable the LLCC driver for SDM845. This provides
57           data required to configure LLCC so that clients can start using the
58           LLCC slices.
59
60 config QCOM_MDT_LOADER
61         tristate
62         select QCOM_SCM
63
64 config QCOM_PM
65         bool "Qualcomm Power Management"
66         depends on ARCH_QCOM && !ARM64
67         select ARM_CPU_SUSPEND
68         select QCOM_SCM
69         help
70           QCOM Platform specific power driver to manage cores and L2 low power
71           modes. It interface with various system drivers to put the cores in
72           low power modes.
73
74 config QCOM_QMI_HELPERS
75         tristate
76         depends on ARCH_QCOM && NET
77         help
78           Helper library for handling QMI encoded messages.  QMI encoded
79           messages are used in communication between the majority of QRTR
80           clients and this helpers provide the common functionality needed for
81           doing this from a kernel driver.
82
83 config QCOM_RMTFS_MEM
84         tristate "Qualcomm Remote Filesystem memory driver"
85         depends on ARCH_QCOM
86         select QCOM_SCM
87         help
88           The Qualcomm remote filesystem memory driver is used for allocating
89           and exposing regions of shared memory with remote processors for the
90           purpose of exchanging sector-data between the remote filesystem
91           service and its clients.
92
93           Say y here if you intend to boot the modem remoteproc.
94
95 config QCOM_RPMH
96         bool "Qualcomm RPM-Hardened (RPMH) Communication"
97         depends on ARCH_QCOM && ARM64 && OF || COMPILE_TEST
98         help
99           Support for communication with the hardened-RPM blocks in
100           Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
101           internal bus to transmit state requests for shared resources. A set
102           of hardware components aggregate requests for these resources and
103           help apply the aggregated state on the resource.
104
105 config QCOM_SMEM
106         tristate "Qualcomm Shared Memory Manager (SMEM)"
107         depends on ARCH_QCOM
108         depends on HWSPINLOCK
109         help
110           Say y here to enable support for the Qualcomm Shared Memory Manager.
111           The driver provides an interface to items in a heap shared among all
112           processors in a Qualcomm platform.
113
114 config QCOM_SMD_RPM
115         tristate "Qualcomm Resource Power Manager (RPM) over SMD"
116         depends on ARCH_QCOM
117         depends on RPMSG && OF
118         help
119           If you say yes to this option, support will be included for the
120           Resource Power Manager system found in the Qualcomm 8974 based
121           devices.
122
123           This is required to access many regulators, clocks and bus
124           frequencies controlled by the RPM on these devices.
125
126           Say M here if you want to include support for the Qualcomm RPM as a
127           module. This will build a module called "qcom-smd-rpm".
128
129 config QCOM_SMEM_STATE
130         bool
131
132 config QCOM_SMP2P
133         tristate "Qualcomm Shared Memory Point to Point support"
134         depends on MAILBOX
135         depends on QCOM_SMEM
136         select QCOM_SMEM_STATE
137         help
138           Say yes here to support the Qualcomm Shared Memory Point to Point
139           protocol.
140
141 config QCOM_SMSM
142         tristate "Qualcomm Shared Memory State Machine"
143         depends on QCOM_SMEM
144         select QCOM_SMEM_STATE
145         help
146           Say yes here to support the Qualcomm Shared Memory State Machine.
147           The state machine is represented by bits in shared memory.
148
149 config QCOM_WCNSS_CTRL
150         tristate "Qualcomm WCNSS control driver"
151         depends on ARCH_QCOM
152         depends on RPMSG
153         help
154           Client driver for the WCNSS_CTRL SMD channel, used to download nv
155           firmware to a newly booted WCNSS chip.
156
157 config QCOM_APR
158         tristate "Qualcomm APR Bus (Asynchronous Packet Router)"
159         depends on ARCH_QCOM
160         depends on RPMSG
161         help
162           Enable APR IPC protocol support between
163           application processor and QDSP6. APR is
164           used by audio driver to configure QDSP6
165           ASM, ADM and AFE modules.
166 endmenu