1*ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 25d144e36SAndy Gross# 35d144e36SAndy Gross# QCOM Soc drivers 45d144e36SAndy Gross# 52a464815SSrinivas Kandagatlamenu "Qualcomm SoC drivers" 62a464815SSrinivas Kandagatla 7312416d9SMahesh Sivasubramanianconfig QCOM_COMMAND_DB 8312416d9SMahesh Sivasubramanian bool "Qualcomm Command DB" 90ea3fa15SArnd Bergmann depends on ARCH_QCOM || COMPILE_TEST 100ea3fa15SArnd Bergmann depends on OF_RESERVED_MEM 11312416d9SMahesh Sivasubramanian help 12312416d9SMahesh Sivasubramanian Command DB queries shared memory by key string for shared system 13312416d9SMahesh Sivasubramanian resources. Platform drivers that require to set state of a shared 14312416d9SMahesh Sivasubramanian resource on a RPM-hardened platform must use this database to get 15312416d9SMahesh Sivasubramanian SoC specific identifier and information for the shared resources. 16312416d9SMahesh Sivasubramanian 17eddac5afSKarthikeyan Ramasubramanianconfig QCOM_GENI_SE 18eddac5afSKarthikeyan Ramasubramanian tristate "QCOM GENI Serial Engine Driver" 19eddac5afSKarthikeyan Ramasubramanian depends on ARCH_QCOM || COMPILE_TEST 20eddac5afSKarthikeyan Ramasubramanian help 21eddac5afSKarthikeyan Ramasubramanian This driver is used to manage Generic Interface (GENI) firmware based 22eddac5afSKarthikeyan Ramasubramanian Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This 23eddac5afSKarthikeyan Ramasubramanian driver is also used to manage the common aspects of multiple Serial 24eddac5afSKarthikeyan Ramasubramanian Engines present in the QUP. 25eddac5afSKarthikeyan Ramasubramanian 26c4d77d5fSBjorn Anderssonconfig QCOM_GLINK_SSR 27c4d77d5fSBjorn Andersson tristate "Qualcomm Glink SSR driver" 28c4d77d5fSBjorn Andersson depends on RPMSG 29c4d77d5fSBjorn Andersson depends on QCOM_RPROC_COMMON 30c4d77d5fSBjorn Andersson help 31c4d77d5fSBjorn Andersson Say y here to enable GLINK SSR support. The GLINK SSR driver 32c4d77d5fSBjorn Andersson implements the SSR protocol for notifying the remote processor about 33c4d77d5fSBjorn Andersson neighboring subsystems going up or down. 34c4d77d5fSBjorn Andersson 355d144e36SAndy Grossconfig QCOM_GSBI 365d144e36SAndy Gross tristate "QCOM General Serial Bus Interface" 37ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 38e5fdad68SAndy Gross select MFD_SYSCON 395d144e36SAndy Gross help 405d144e36SAndy Gross Say y here to enable GSBI support. The GSBI provides control 415d144e36SAndy Gross functions for connecting the underlying serial UART, SPI, and I2C 425d144e36SAndy Gross devices to the output pins. 435d144e36SAndy Gross 44a3134fb0SRishabh Bhatnagarconfig QCOM_LLCC 45a3134fb0SRishabh Bhatnagar tristate "Qualcomm Technologies, Inc. LLCC driver" 46ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 47a3134fb0SRishabh Bhatnagar help 48a3134fb0SRishabh Bhatnagar Qualcomm Technologies, Inc. platform specific 49a3134fb0SRishabh Bhatnagar Last Level Cache Controller(LLCC) driver. This provides interfaces 50a3134fb0SRishabh Bhatnagar to clients that use the LLCC. Say yes here to enable LLCC slice 51a3134fb0SRishabh Bhatnagar driver. 52a3134fb0SRishabh Bhatnagar 53a3134fb0SRishabh Bhatnagarconfig QCOM_SDM845_LLCC 54a3134fb0SRishabh Bhatnagar tristate "Qualcomm Technologies, Inc. SDM845 LLCC driver" 55a3134fb0SRishabh Bhatnagar depends on QCOM_LLCC 56a3134fb0SRishabh Bhatnagar help 57a3134fb0SRishabh Bhatnagar Say yes here to enable the LLCC driver for SDM845. This provides 58a3134fb0SRishabh Bhatnagar data required to configure LLCC so that clients can start using the 59a3134fb0SRishabh Bhatnagar LLCC slices. 60a3134fb0SRishabh Bhatnagar 612aad40d9SBjorn Anderssonconfig QCOM_MDT_LOADER 622aad40d9SBjorn Andersson tristate 632aad40d9SBjorn Andersson select QCOM_SCM 642aad40d9SBjorn Andersson 657ce75bb2SLina Iyerconfig QCOM_PM 667ce75bb2SLina Iyer bool "Qualcomm Power Management" 677ce75bb2SLina Iyer depends on ARCH_QCOM && !ARM64 68d9d6888fSArnd Bergmann select ARM_CPU_SUSPEND 6923b38cebSLina Iyer select QCOM_SCM 707ce75bb2SLina Iyer help 717ce75bb2SLina Iyer QCOM Platform specific power driver to manage cores and L2 low power 727ce75bb2SLina Iyer modes. It interface with various system drivers to put the cores in 737ce75bb2SLina Iyer low power modes. 744b638df4SBjorn Andersson 759b8a11e8SBjorn Anderssonconfig QCOM_QMI_HELPERS 769b8a11e8SBjorn Andersson tristate 77ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 78ccfb464cSNiklas Cassel depends on NET 799b8a11e8SBjorn Andersson 80d1de6d6cSBjorn Anderssonconfig QCOM_RMTFS_MEM 81d1de6d6cSBjorn Andersson tristate "Qualcomm Remote Filesystem memory driver" 82d1de6d6cSBjorn Andersson depends on ARCH_QCOM 83fa65f804SBjorn Andersson select QCOM_SCM 84d1de6d6cSBjorn Andersson help 85d1de6d6cSBjorn Andersson The Qualcomm remote filesystem memory driver is used for allocating 86d1de6d6cSBjorn Andersson and exposing regions of shared memory with remote processors for the 87d1de6d6cSBjorn Andersson purpose of exchanging sector-data between the remote filesystem 88d1de6d6cSBjorn Andersson service and its clients. 89d1de6d6cSBjorn Andersson 90d1de6d6cSBjorn Andersson Say y here if you intend to boot the modem remoteproc. 91d1de6d6cSBjorn Andersson 92658628e7SLina Iyerconfig QCOM_RPMH 93658628e7SLina Iyer bool "Qualcomm RPM-Hardened (RPMH) Communication" 94c62615b1SNiklas Cassel depends on ARCH_QCOM && ARM64 || COMPILE_TEST 95658628e7SLina Iyer help 96658628e7SLina Iyer Support for communication with the hardened-RPM blocks in 97658628e7SLina Iyer Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an 98658628e7SLina Iyer internal bus to transmit state requests for shared resources. A set 99658628e7SLina Iyer of hardware components aggregate requests for these resources and 100658628e7SLina Iyer help apply the aggregated state on the resource. 101658628e7SLina Iyer 102279b7e8aSRajendra Nayakconfig QCOM_RPMHPD 103279b7e8aSRajendra Nayak bool "Qualcomm RPMh Power domain driver" 104279b7e8aSRajendra Nayak depends on QCOM_RPMH && QCOM_COMMAND_DB 105279b7e8aSRajendra Nayak help 106279b7e8aSRajendra Nayak QCOM RPMh Power domain driver to support power-domains with 107279b7e8aSRajendra Nayak performance states. The driver communicates a performance state 108279b7e8aSRajendra Nayak value to RPMh which then translates it into corresponding voltage 109279b7e8aSRajendra Nayak for the voltage rail. 110279b7e8aSRajendra Nayak 111bbe3a66cSRajendra Nayakconfig QCOM_RPMPD 112bbe3a66cSRajendra Nayak bool "Qualcomm RPM Power domain driver" 1134eccc154SRajendra Nayak depends on QCOM_SMD_RPM=y 114bbe3a66cSRajendra Nayak help 115bbe3a66cSRajendra Nayak QCOM RPM Power domain driver to support power-domains with 116bbe3a66cSRajendra Nayak performance states. The driver communicates a performance state 117bbe3a66cSRajendra Nayak value to RPM which then translates it into corresponding voltage 118bbe3a66cSRajendra Nayak for the voltage rail. 119bbe3a66cSRajendra Nayak 1207d0c8beeSStephen Boydconfig QCOM_SMEM 1217d0c8beeSStephen Boyd tristate "Qualcomm Shared Memory Manager (SMEM)" 122ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 12373ebb854SArnd Bergmann depends on HWSPINLOCK 1247d0c8beeSStephen Boyd help 1257d0c8beeSStephen Boyd Say y here to enable support for the Qualcomm Shared Memory Manager. 1267d0c8beeSStephen Boyd The driver provides an interface to items in a heap shared among all 1277d0c8beeSStephen Boyd processors in a Qualcomm platform. 1287d0c8beeSStephen Boyd 129936f14cfSBjorn Anderssonconfig QCOM_SMD_RPM 130936f14cfSBjorn Andersson tristate "Qualcomm Resource Power Manager (RPM) over SMD" 131ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 132a09b440aSNiklas Cassel depends on RPMSG 133936f14cfSBjorn Andersson help 134936f14cfSBjorn Andersson If you say yes to this option, support will be included for the 135936f14cfSBjorn Andersson Resource Power Manager system found in the Qualcomm 8974 based 136936f14cfSBjorn Andersson devices. 137936f14cfSBjorn Andersson 138936f14cfSBjorn Andersson This is required to access many regulators, clocks and bus 139936f14cfSBjorn Andersson frequencies controlled by the RPM on these devices. 140936f14cfSBjorn Andersson 141936f14cfSBjorn Andersson Say M here if you want to include support for the Qualcomm RPM as a 142936f14cfSBjorn Andersson module. This will build a module called "qcom-smd-rpm". 1439460ae2fSBjorn Andersson 1449460ae2fSBjorn Anderssonconfig QCOM_SMEM_STATE 1459460ae2fSBjorn Andersson bool 146c97c4090SBjorn Andersson 14750e99641SBjorn Anderssonconfig QCOM_SMP2P 14810475d59SArnd Bergmann tristate "Qualcomm Shared Memory Point to Point support" 149e7180264SBjorn Andersson depends on MAILBOX 15050e99641SBjorn Andersson depends on QCOM_SMEM 15150e99641SBjorn Andersson select QCOM_SMEM_STATE 152810f11a9SNiklas Cassel select IRQ_DOMAIN 15350e99641SBjorn Andersson help 15450e99641SBjorn Andersson Say yes here to support the Qualcomm Shared Memory Point to Point 15550e99641SBjorn Andersson protocol. 15650e99641SBjorn Andersson 157c97c4090SBjorn Anderssonconfig QCOM_SMSM 15810475d59SArnd Bergmann tristate "Qualcomm Shared Memory State Machine" 159c97c4090SBjorn Andersson depends on QCOM_SMEM 160c97c4090SBjorn Andersson select QCOM_SMEM_STATE 1610a5cdb41SNiklas Cassel select IRQ_DOMAIN 162c97c4090SBjorn Andersson help 163c97c4090SBjorn Andersson Say yes here to support the Qualcomm Shared Memory State Machine. 164c97c4090SBjorn Andersson The state machine is represented by bits in shared memory. 165ea7a1f27SBjorn Andersson 166ea7a1f27SBjorn Anderssonconfig QCOM_WCNSS_CTRL 167ea7a1f27SBjorn Andersson tristate "Qualcomm WCNSS control driver" 168ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 1695052de8dSBjorn Andersson depends on RPMSG 170ea7a1f27SBjorn Andersson help 171ea7a1f27SBjorn Andersson Client driver for the WCNSS_CTRL SMD channel, used to download nv 172ea7a1f27SBjorn Andersson firmware to a newly booted WCNSS chip. 1732a464815SSrinivas Kandagatla 1746adba21eSSrinivas Kandagatlaconfig QCOM_APR 1756adba21eSSrinivas Kandagatla tristate "Qualcomm APR Bus (Asynchronous Packet Router)" 176ccfb464cSNiklas Cassel depends on ARCH_QCOM || COMPILE_TEST 1776adba21eSSrinivas Kandagatla depends on RPMSG 1786adba21eSSrinivas Kandagatla help 1796adba21eSSrinivas Kandagatla Enable APR IPC protocol support between 1806adba21eSSrinivas Kandagatla application processor and QDSP6. APR is 1816adba21eSSrinivas Kandagatla used by audio driver to configure QDSP6 1826adba21eSSrinivas Kandagatla ASM, ADM and AFE modules. 1832a464815SSrinivas Kandagatlaendmenu 184