xref: /openbmc/linux/drivers/soc/qcom/Kconfig (revision 4eccc154)
15d144e36SAndy Gross#
25d144e36SAndy Gross# QCOM Soc drivers
35d144e36SAndy Gross#
42a464815SSrinivas Kandagatlamenu "Qualcomm SoC drivers"
52a464815SSrinivas Kandagatla
6312416d9SMahesh Sivasubramanianconfig QCOM_COMMAND_DB
7312416d9SMahesh Sivasubramanian	bool "Qualcomm Command DB"
80ea3fa15SArnd Bergmann	depends on ARCH_QCOM || COMPILE_TEST
90ea3fa15SArnd Bergmann	depends on OF_RESERVED_MEM
10312416d9SMahesh Sivasubramanian	help
11312416d9SMahesh Sivasubramanian	  Command DB queries shared memory by key string for shared system
12312416d9SMahesh Sivasubramanian	  resources. Platform drivers that require to set state of a shared
13312416d9SMahesh Sivasubramanian	  resource on a RPM-hardened platform must use this database to get
14312416d9SMahesh Sivasubramanian	  SoC specific identifier and information for the shared resources.
15312416d9SMahesh Sivasubramanian
16eddac5afSKarthikeyan Ramasubramanianconfig QCOM_GENI_SE
17eddac5afSKarthikeyan Ramasubramanian	tristate "QCOM GENI Serial Engine Driver"
18eddac5afSKarthikeyan Ramasubramanian	depends on ARCH_QCOM || COMPILE_TEST
19eddac5afSKarthikeyan Ramasubramanian	help
20eddac5afSKarthikeyan Ramasubramanian	  This driver is used to manage Generic Interface (GENI) firmware based
21eddac5afSKarthikeyan Ramasubramanian	  Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This
22eddac5afSKarthikeyan Ramasubramanian	  driver is also used to manage the common aspects of multiple Serial
23eddac5afSKarthikeyan Ramasubramanian	  Engines present in the QUP.
24eddac5afSKarthikeyan Ramasubramanian
25c4d77d5fSBjorn Anderssonconfig QCOM_GLINK_SSR
26c4d77d5fSBjorn Andersson	tristate "Qualcomm Glink SSR driver"
27c4d77d5fSBjorn Andersson	depends on RPMSG
28c4d77d5fSBjorn Andersson	depends on QCOM_RPROC_COMMON
29c4d77d5fSBjorn Andersson	help
30c4d77d5fSBjorn Andersson	  Say y here to enable GLINK SSR support. The GLINK SSR driver
31c4d77d5fSBjorn Andersson	  implements the SSR protocol for notifying the remote processor about
32c4d77d5fSBjorn Andersson	  neighboring subsystems going up or down.
33c4d77d5fSBjorn Andersson
345d144e36SAndy Grossconfig QCOM_GSBI
355d144e36SAndy Gross        tristate "QCOM General Serial Bus Interface"
36ccfb464cSNiklas Cassel        depends on ARCH_QCOM || COMPILE_TEST
37e5fdad68SAndy Gross        select MFD_SYSCON
385d144e36SAndy Gross        help
395d144e36SAndy Gross          Say y here to enable GSBI support.  The GSBI provides control
405d144e36SAndy Gross          functions for connecting the underlying serial UART, SPI, and I2C
415d144e36SAndy Gross          devices to the output pins.
425d144e36SAndy Gross
43a3134fb0SRishabh Bhatnagarconfig QCOM_LLCC
44a3134fb0SRishabh Bhatnagar	tristate "Qualcomm Technologies, Inc. LLCC driver"
45ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
46a3134fb0SRishabh Bhatnagar	help
47a3134fb0SRishabh Bhatnagar	  Qualcomm Technologies, Inc. platform specific
48a3134fb0SRishabh Bhatnagar	  Last Level Cache Controller(LLCC) driver. This provides interfaces
49a3134fb0SRishabh Bhatnagar	  to clients that use the LLCC. Say yes here to enable LLCC slice
50a3134fb0SRishabh Bhatnagar	  driver.
51a3134fb0SRishabh Bhatnagar
52a3134fb0SRishabh Bhatnagarconfig QCOM_SDM845_LLCC
53a3134fb0SRishabh Bhatnagar	tristate "Qualcomm Technologies, Inc. SDM845 LLCC driver"
54a3134fb0SRishabh Bhatnagar	depends on QCOM_LLCC
55a3134fb0SRishabh Bhatnagar	help
56a3134fb0SRishabh Bhatnagar	  Say yes here to enable the LLCC driver for SDM845. This provides
57a3134fb0SRishabh Bhatnagar	  data required to configure LLCC so that clients can start using the
58a3134fb0SRishabh Bhatnagar	  LLCC slices.
59a3134fb0SRishabh Bhatnagar
602aad40d9SBjorn Anderssonconfig QCOM_MDT_LOADER
612aad40d9SBjorn Andersson	tristate
622aad40d9SBjorn Andersson	select QCOM_SCM
632aad40d9SBjorn Andersson
647ce75bb2SLina Iyerconfig QCOM_PM
657ce75bb2SLina Iyer	bool "Qualcomm Power Management"
667ce75bb2SLina Iyer	depends on ARCH_QCOM && !ARM64
67d9d6888fSArnd Bergmann	select ARM_CPU_SUSPEND
6823b38cebSLina Iyer	select QCOM_SCM
697ce75bb2SLina Iyer	help
707ce75bb2SLina Iyer	  QCOM Platform specific power driver to manage cores and L2 low power
717ce75bb2SLina Iyer	  modes. It interface with various system drivers to put the cores in
727ce75bb2SLina Iyer	  low power modes.
734b638df4SBjorn Andersson
749b8a11e8SBjorn Anderssonconfig QCOM_QMI_HELPERS
759b8a11e8SBjorn Andersson	tristate
76ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
77ccfb464cSNiklas Cassel	depends on NET
789b8a11e8SBjorn Andersson
79d1de6d6cSBjorn Anderssonconfig QCOM_RMTFS_MEM
80d1de6d6cSBjorn Andersson	tristate "Qualcomm Remote Filesystem memory driver"
81d1de6d6cSBjorn Andersson	depends on ARCH_QCOM
82fa65f804SBjorn Andersson	select QCOM_SCM
83d1de6d6cSBjorn Andersson	help
84d1de6d6cSBjorn Andersson	  The Qualcomm remote filesystem memory driver is used for allocating
85d1de6d6cSBjorn Andersson	  and exposing regions of shared memory with remote processors for the
86d1de6d6cSBjorn Andersson	  purpose of exchanging sector-data between the remote filesystem
87d1de6d6cSBjorn Andersson	  service and its clients.
88d1de6d6cSBjorn Andersson
89d1de6d6cSBjorn Andersson	  Say y here if you intend to boot the modem remoteproc.
90d1de6d6cSBjorn Andersson
91658628e7SLina Iyerconfig QCOM_RPMH
92658628e7SLina Iyer	bool "Qualcomm RPM-Hardened (RPMH) Communication"
93c62615b1SNiklas Cassel	depends on ARCH_QCOM && ARM64 || COMPILE_TEST
94658628e7SLina Iyer	help
95658628e7SLina Iyer	  Support for communication with the hardened-RPM blocks in
96658628e7SLina Iyer	  Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
97658628e7SLina Iyer	  internal bus to transmit state requests for shared resources. A set
98658628e7SLina Iyer	  of hardware components aggregate requests for these resources and
99658628e7SLina Iyer	  help apply the aggregated state on the resource.
100658628e7SLina Iyer
101279b7e8aSRajendra Nayakconfig QCOM_RPMHPD
102279b7e8aSRajendra Nayak	bool "Qualcomm RPMh Power domain driver"
103279b7e8aSRajendra Nayak	depends on QCOM_RPMH && QCOM_COMMAND_DB
104279b7e8aSRajendra Nayak	help
105279b7e8aSRajendra Nayak	  QCOM RPMh Power domain driver to support power-domains with
106279b7e8aSRajendra Nayak	  performance states. The driver communicates a performance state
107279b7e8aSRajendra Nayak	  value to RPMh which then translates it into corresponding voltage
108279b7e8aSRajendra Nayak	  for the voltage rail.
109279b7e8aSRajendra Nayak
110bbe3a66cSRajendra Nayakconfig QCOM_RPMPD
111bbe3a66cSRajendra Nayak	bool "Qualcomm RPM Power domain driver"
1124eccc154SRajendra Nayak	depends on QCOM_SMD_RPM=y
113bbe3a66cSRajendra Nayak	help
114bbe3a66cSRajendra Nayak	  QCOM RPM Power domain driver to support power-domains with
115bbe3a66cSRajendra Nayak	  performance states. The driver communicates a performance state
116bbe3a66cSRajendra Nayak	  value to RPM which then translates it into corresponding voltage
117bbe3a66cSRajendra Nayak	  for the voltage rail.
118bbe3a66cSRajendra Nayak
1197d0c8beeSStephen Boydconfig QCOM_SMEM
1207d0c8beeSStephen Boyd	tristate "Qualcomm Shared Memory Manager (SMEM)"
121ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
12273ebb854SArnd Bergmann	depends on HWSPINLOCK
1237d0c8beeSStephen Boyd	help
1247d0c8beeSStephen Boyd	  Say y here to enable support for the Qualcomm Shared Memory Manager.
1257d0c8beeSStephen Boyd	  The driver provides an interface to items in a heap shared among all
1267d0c8beeSStephen Boyd	  processors in a Qualcomm platform.
1277d0c8beeSStephen Boyd
128936f14cfSBjorn Anderssonconfig QCOM_SMD_RPM
129936f14cfSBjorn Andersson	tristate "Qualcomm Resource Power Manager (RPM) over SMD"
130ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
131a09b440aSNiklas Cassel	depends on RPMSG
132936f14cfSBjorn Andersson	help
133936f14cfSBjorn Andersson	  If you say yes to this option, support will be included for the
134936f14cfSBjorn Andersson	  Resource Power Manager system found in the Qualcomm 8974 based
135936f14cfSBjorn Andersson	  devices.
136936f14cfSBjorn Andersson
137936f14cfSBjorn Andersson	  This is required to access many regulators, clocks and bus
138936f14cfSBjorn Andersson	  frequencies controlled by the RPM on these devices.
139936f14cfSBjorn Andersson
140936f14cfSBjorn Andersson	  Say M here if you want to include support for the Qualcomm RPM as a
141936f14cfSBjorn Andersson	  module. This will build a module called "qcom-smd-rpm".
1429460ae2fSBjorn Andersson
1439460ae2fSBjorn Anderssonconfig QCOM_SMEM_STATE
1449460ae2fSBjorn Andersson	bool
145c97c4090SBjorn Andersson
14650e99641SBjorn Anderssonconfig QCOM_SMP2P
14710475d59SArnd Bergmann	tristate "Qualcomm Shared Memory Point to Point support"
148e7180264SBjorn Andersson	depends on MAILBOX
14950e99641SBjorn Andersson	depends on QCOM_SMEM
15050e99641SBjorn Andersson	select QCOM_SMEM_STATE
151810f11a9SNiklas Cassel	select IRQ_DOMAIN
15250e99641SBjorn Andersson	help
15350e99641SBjorn Andersson	  Say yes here to support the Qualcomm Shared Memory Point to Point
15450e99641SBjorn Andersson	  protocol.
15550e99641SBjorn Andersson
156c97c4090SBjorn Anderssonconfig QCOM_SMSM
15710475d59SArnd Bergmann	tristate "Qualcomm Shared Memory State Machine"
158c97c4090SBjorn Andersson	depends on QCOM_SMEM
159c97c4090SBjorn Andersson	select QCOM_SMEM_STATE
1600a5cdb41SNiklas Cassel	select IRQ_DOMAIN
161c97c4090SBjorn Andersson	help
162c97c4090SBjorn Andersson	  Say yes here to support the Qualcomm Shared Memory State Machine.
163c97c4090SBjorn Andersson	  The state machine is represented by bits in shared memory.
164ea7a1f27SBjorn Andersson
165ea7a1f27SBjorn Anderssonconfig QCOM_WCNSS_CTRL
166ea7a1f27SBjorn Andersson	tristate "Qualcomm WCNSS control driver"
167ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
1685052de8dSBjorn Andersson	depends on RPMSG
169ea7a1f27SBjorn Andersson	help
170ea7a1f27SBjorn Andersson	  Client driver for the WCNSS_CTRL SMD channel, used to download nv
171ea7a1f27SBjorn Andersson	  firmware to a newly booted WCNSS chip.
1722a464815SSrinivas Kandagatla
1736adba21eSSrinivas Kandagatlaconfig QCOM_APR
1746adba21eSSrinivas Kandagatla	tristate "Qualcomm APR Bus (Asynchronous Packet Router)"
175ccfb464cSNiklas Cassel	depends on ARCH_QCOM || COMPILE_TEST
1766adba21eSSrinivas Kandagatla	depends on RPMSG
1776adba21eSSrinivas Kandagatla	help
1786adba21eSSrinivas Kandagatla          Enable APR IPC protocol support between
1796adba21eSSrinivas Kandagatla          application processor and QDSP6. APR is
1806adba21eSSrinivas Kandagatla          used by audio driver to configure QDSP6
1816adba21eSSrinivas Kandagatla          ASM, ADM and AFE modules.
1822a464815SSrinivas Kandagatlaendmenu
183