Merge branch 'mlx5-next' into rdma.git for-next
[linux-2.6-microblaze.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 || COMPILE_TEST
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 || COMPILE_TEST
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 || COMPILE_TEST
77         depends on NET
78
79 config QCOM_RMTFS_MEM
80         tristate "Qualcomm Remote Filesystem memory driver"
81         depends on ARCH_QCOM
82         select QCOM_SCM
83         help
84           The Qualcomm remote filesystem memory driver is used for allocating
85           and exposing regions of shared memory with remote processors for the
86           purpose of exchanging sector-data between the remote filesystem
87           service and its clients.
88
89           Say y here if you intend to boot the modem remoteproc.
90
91 config QCOM_RPMH
92         bool "Qualcomm RPM-Hardened (RPMH) Communication"
93         depends on ARCH_QCOM && ARM64 || COMPILE_TEST
94         help
95           Support for communication with the hardened-RPM blocks in
96           Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
97           internal bus to transmit state requests for shared resources. A set
98           of hardware components aggregate requests for these resources and
99           help apply the aggregated state on the resource.
100
101 config QCOM_RPMHPD
102         bool "Qualcomm RPMh Power domain driver"
103         depends on QCOM_RPMH && QCOM_COMMAND_DB
104         help
105           QCOM RPMh Power domain driver to support power-domains with
106           performance states. The driver communicates a performance state
107           value to RPMh which then translates it into corresponding voltage
108           for the voltage rail.
109
110 config QCOM_RPMPD
111         bool "Qualcomm RPM Power domain driver"
112         depends on QCOM_SMD_RPM=y
113         help
114           QCOM RPM Power domain driver to support power-domains with
115           performance states. The driver communicates a performance state
116           value to RPM which then translates it into corresponding voltage
117           for the voltage rail.
118
119 config QCOM_SMEM
120         tristate "Qualcomm Shared Memory Manager (SMEM)"
121         depends on ARCH_QCOM || COMPILE_TEST
122         depends on HWSPINLOCK
123         help
124           Say y here to enable support for the Qualcomm Shared Memory Manager.
125           The driver provides an interface to items in a heap shared among all
126           processors in a Qualcomm platform.
127
128 config QCOM_SMD_RPM
129         tristate "Qualcomm Resource Power Manager (RPM) over SMD"
130         depends on ARCH_QCOM || COMPILE_TEST
131         depends on RPMSG
132         help
133           If you say yes to this option, support will be included for the
134           Resource Power Manager system found in the Qualcomm 8974 based
135           devices.
136
137           This is required to access many regulators, clocks and bus
138           frequencies controlled by the RPM on these devices.
139
140           Say M here if you want to include support for the Qualcomm RPM as a
141           module. This will build a module called "qcom-smd-rpm".
142
143 config QCOM_SMEM_STATE
144         bool
145
146 config QCOM_SMP2P
147         tristate "Qualcomm Shared Memory Point to Point support"
148         depends on MAILBOX
149         depends on QCOM_SMEM
150         select QCOM_SMEM_STATE
151         select IRQ_DOMAIN
152         help
153           Say yes here to support the Qualcomm Shared Memory Point to Point
154           protocol.
155
156 config QCOM_SMSM
157         tristate "Qualcomm Shared Memory State Machine"
158         depends on QCOM_SMEM
159         select QCOM_SMEM_STATE
160         select IRQ_DOMAIN
161         help
162           Say yes here to support the Qualcomm Shared Memory State Machine.
163           The state machine is represented by bits in shared memory.
164
165 config QCOM_WCNSS_CTRL
166         tristate "Qualcomm WCNSS control driver"
167         depends on ARCH_QCOM || COMPILE_TEST
168         depends on RPMSG
169         help
170           Client driver for the WCNSS_CTRL SMD channel, used to download nv
171           firmware to a newly booted WCNSS chip.
172
173 config QCOM_APR
174         tristate "Qualcomm APR Bus (Asynchronous Packet Router)"
175         depends on ARCH_QCOM || COMPILE_TEST
176         depends on RPMSG
177         help
178           Enable APR IPC protocol support between
179           application processor and QDSP6. APR is
180           used by audio driver to configure QDSP6
181           ASM, ADM and AFE modules.
182 endmenu