| # |
| # QCOM Soc drivers |
| # |
| config QCOM_CPUSS_DUMP |
| bool "CPU Subsystem Dumping support" |
| help |
| Add support to dump various hardware entities such as the instruction |
| and data tlb's as well as the unified tlb, which are a part of the |
| cpu subsystem to an allocated buffer. This allows for analysis of the |
| the entities if corruption is suspected. |
| If unsure, say N |
| |
| config QCOM_RUN_QUEUE_STATS |
| bool "Enable collection and exporting of QTI Run Queue stats to userspace" |
| help |
| This option enables the driver to periodically collecting the statistics |
| of kernel run queue information and calculate the load of the system. |
| This information is exported to usespace via sysfs entries and userspace |
| algorithms uses info and decide when to turn on/off the cpu cores. |
| |
| config QCOM_GSBI |
| tristate "QCOM General Serial Bus Interface" |
| depends on ARCH_QCOM |
| select MFD_SYSCON |
| help |
| Say y here to enable GSBI support. The GSBI provides control |
| functions for connecting the underlying serial UART, SPI, and I2C |
| devices to the output pins. |
| |
| config QCOM_LLCC |
| tristate "Qualcomm Technologies, Inc. LLCC driver" |
| depends on ARCH_QCOM |
| help |
| Qualcomm Technologies, Inc. platform specific LLCC driver for Last |
| Level Cache. This provides interfaces to client's that use the LLCC. |
| Say yes here to enable LLCC slice driver. |
| |
| config QCOM_MSMSKUNK_LLCC |
| tristate "Qualcomm Technologies, Inc. MSMSKUNK LLCC driver" |
| depends on QCOM_LLCC |
| help |
| Say yes here to enable the LLCC driver for MSMSKUNK. This is provides |
| data required to configure LLCC so that clients can start using the |
| LLCC slices. |
| |
| config QCOM_LLCC_AMON |
| tristate "Qualcomm Technologies, Inc. LLCC Activity Monitor(AMON) driver" |
| depends on QCOM_LLCC |
| help |
| This option enables a activity monitor driver for last level cache |
| controller. This driver configures the activity monitor as |
| deadlock detector and dumps the AMON registers upon detection of |
| deadlock. |
| |
| config QCOM_LLCC_AMON_PANIC |
| tristate "Panic on detecting LLCC Activity Monitor(AMON) error" |
| depends on QCOM_LLCC_AMON |
| help |
| This option enables panic upon detection of LLCC Activity Monitor(AMON) |
| errors. Say yes here to enable deadlock detection mode of AMON. In |
| deadlock detection mode AMON will trigger an interrupt if some LLCC request |
| ages out. |
| |
| config QCOM_PM |
| bool "Qualcomm Power Management" |
| depends on ARCH_QCOM && !ARM64 |
| select ARM_CPU_SUSPEND |
| select QCOM_SCM |
| help |
| QCOM Platform specific power driver to manage cores and L2 low power |
| modes. It interface with various system drivers to put the cores in |
| low power modes. |
| |
| config QCOM_SMEM |
| tristate "Qualcomm Shared Memory Manager (SMEM)" |
| depends on ARCH_QCOM |
| depends on HWSPINLOCK |
| help |
| Say y here to enable support for the Qualcomm Shared Memory Manager. |
| The driver provides an interface to items in a heap shared among all |
| processors in a Qualcomm platform. |
| |
| config QCOM_SMD |
| tristate "Qualcomm Shared Memory Driver (SMD)" |
| depends on QCOM_SMEM |
| help |
| Say y here to enable support for the Qualcomm Shared Memory Driver |
| providing communication channels to remote processors in Qualcomm |
| platforms. |
| |
| config QCOM_SMD_RPM |
| tristate "Qualcomm Resource Power Manager (RPM) over SMD" |
| depends on QCOM_SMD && OF |
| help |
| If you say yes to this option, support will be included for the |
| Resource Power Manager system found in the Qualcomm 8974 based |
| devices. |
| |
| This is required to access many regulators, clocks and bus |
| frequencies controlled by the RPM on these devices. |
| |
| Say M here if you want to include support for the Qualcomm RPM as a |
| module. This will build a module called "qcom-smd-rpm". |
| |
| config QCOM_SCM |
| bool "Secure Channel Manager (SCM) support" |
| default n |
| |
| config QCOM_SMEM_STATE |
| bool |
| |
| config QCOM_SMP2P |
| tristate "Qualcomm Shared Memory Point to Point support" |
| depends on QCOM_SMEM |
| select QCOM_SMEM_STATE |
| help |
| Say yes here to support the Qualcomm Shared Memory Point to Point |
| protocol. |
| |
| config QCOM_SMSM |
| tristate "Qualcomm Shared Memory State Machine" |
| depends on QCOM_SMEM |
| select QCOM_SMEM_STATE |
| help |
| Say yes here to support the Qualcomm Shared Memory State Machine. |
| The state machine is represented by bits in shared memory. |
| |
| config QCOM_WCNSS_CTRL |
| tristate "Qualcomm WCNSS control driver" |
| depends on QCOM_SMD |
| help |
| Client driver for the WCNSS_CTRL SMD channel, used to download nv |
| firmware to a newly booted WCNSS chip. |
| |
| config MSM_BOOT_STATS |
| bool "Use MSM boot stats reporting" |
| help |
| Use this to report msm boot stats such as bootloader throughput, |
| display init, total boot time. |
| This figures are reported in mpm sleep clock cycles and have a |
| resolution of 31 bits as 1 bit is used as an overflow check. |
| |
| config MSM_CORE_HANG_DETECT |
| tristate "MSM Core Hang Detection Support" |
| help |
| This enables the core hang detection module. It causes SoC |
| reset on core hang detection and collects the core context |
| for hang. |
| |
| config MSM_GLADIATOR_HANG_DETECT |
| tristate "MSM Gladiator Hang Detection Support" |
| help |
| This enables the gladiator hang detection module. |
| If the configured threshold is reached, it causes SoC reset on |
| gladiator hang detection and collects the context for the |
| gladiator hang. |
| |
| config MSM_GLADIATOR_ERP_V2 |
| tristate "GLADIATOR coherency interconnect error reporting driver v2" |
| help |
| Support dumping debug information for the GLADIATOR |
| cache interconnect in the error interrupt handler. |
| Meant to be used for debug scenarios only. |
| |
| If unsure, say N. |
| |
| config PANIC_ON_GLADIATOR_ERROR_V2 |
| depends on MSM_GLADIATOR_ERP_V2 |
| bool "Panic on GLADIATOR error report v2" |
| help |
| Panic upon detection of an Gladiator coherency interconnect error |
| in order to support dumping debug information. |
| Meant to be used for debug scenarios only. |
| |
| If unsure, say N. |
| |
| config QCOM_EUD |
| tristate "QTI Embedded USB Debugger (EUD)" |
| depends on ARCH_QCOM |
| select SERIAL_CORE |
| help |
| The EUD (Embedded USB Debugger) is a mini-USB hub implemented |
| on chip to support the USB-based debug and trace capabilities. |
| This module enables support for Qualcomm Technologies, Inc. |
| Embedded USB Debugger (EUD). |
| |
| If unsure, say N. |
| |
| config QCOM_WATCHDOG_V2 |
| bool "Qualcomm Watchdog Support" |
| depends on ARCH_QCOM |
| help |
| This enables the watchdog module. It causes kernel panic if the |
| watchdog times out. It allows for detection of cpu hangs and |
| deadlocks. It does not run during the bootup process, so it will |
| not catch any early lockups. |
| |
| config QCOM_MEMORY_DUMP_V2 |
| bool "QCOM Memory Dump V2 Support" |
| help |
| This enables memory dump feature. It allows various client |
| subsystems to register respective dump regions. At the time |
| of deadlocks or cpu hangs these dump regions are captured to |
| give a snapshot of the system at the time of the crash. |
| |
| config QCOM_BUS_SCALING |
| bool "Bus scaling driver" |
| help |
| This option enables bus scaling on MSM devices. Bus scaling |
| allows devices to request the clocks be set to rates sufficient |
| for the active devices needs without keeping the clocks at max |
| frequency when a slower speed is sufficient. |
| |
| config QCOM_BUS_CONFIG_RPMH |
| bool "RPMH Bus scaling driver" |
| depends on QCOM_BUS_SCALING |
| help |
| This option enables bus scaling using QCOM specific hardware |
| accelerators. It enables the translation of bandwidth requests |
| from logical nodes to hardware nodes controlled by the BCM (Bus |
| Clock Manager) |
| |
| config QCOM_SECURE_BUFFER |
| bool "Helper functions for securing buffers through TZ" |
| help |
| Say 'Y' here for targets that need to call into TZ to secure |
| memory buffers. This ensures that only the correct clients can |
| use this memory and no unauthorized access is made to the |
| buffer |
| |
| config MSM_SMEM |
| depends on ARCH_QCOM |
| depends on REMOTE_SPINLOCK_MSM |
| bool "MSM Shared Memory (SMEM)" |
| help |
| Support for the shared memory interface between the various |
| processors in the System on a Chip (SoC) which allows basic |
| inter-processor communication. |
| |
| config MSM_GLINK |
| bool "Generic Link (G-Link)" |
| help |
| G-Link is a generic link transport that replaces SMD. It is used |
| within a System-on-Chip (SoC) for communication between both internal |
| processors and external peripherals. The actual physical transport |
| is handled by transport plug-ins that can be individually enabled and |
| configured separately. |
| |
| config MSM_GLINK_LOOPBACK_SERVER |
| bool "Generic Link (G-Link) Loopback Server" |
| help |
| G-Link Loopback Server that enable loopback test framework to test |
| and validate the G-Link protocol stack. It support both local and |
| remote clients to configure the loopback server and echo back the |
| data received from the clients. |
| |
| config MSM_GLINK_SMEM_NATIVE_XPRT |
| depends on MSM_SMEM |
| depends on MSM_GLINK |
| bool "Generic Link (G-Link) SMEM Native Transport" |
| help |
| G-Link SMEM Native Transport is a G-Link Transport plug-in. It allows |
| G-Link communication to remote entities through a shared memory |
| physical transport. The nature of shared memory limits this G-Link |
| transport to only connecting with entities internal to the |
| System-on-Chip. |
| |
| config MSM_GLINK_SPI_XPRT |
| depends on MSM_GLINK |
| tristate "Generic Link (G-Link) SPI Transport" |
| help |
| G-Link SPI Transport is a Transport plug-in developed over SPI |
| bus. This transport plug-in performs marshaling of G-Link |
| commands & data to the appropriate SPI bus wire format and |
| allows for G-Link communication with remote subsystems that are |
| external to the System-on-Chip. |
| |
| config TRACER_PKT |
| bool "Tracer Packet" |
| help |
| Tracer Packet helps in profiling the performance of inter- |
| processor communication protocols. The profiling information |
| can be logged into the tracer packet itself. |
| |
| config QTI_RPMH_API |
| bool "QTI RPMH (h/w accelerators) Communication API" |
| select MAILBOX |
| select QTI_RPMH_MBOX |
| select QTI_SYSTEM_PM |
| help |
| This option enables RPMH hardware communication for making shared |
| resource requests on Qualcomm Technologies Inc SoCs. |
| |
| config QTI_SYSTEM_PM |
| bool |
| |
| config MSM_SMP2P |
| bool "SMSM Point-to-Point (SMP2P)" |
| depends on MSM_SMEM |
| help |
| Provide point-to-point remote signaling support. |
| SMP2P enables transferring 32-bit values between |
| the local and a remote system using shared |
| memory and interrupts. A client can open multiple |
| 32-bit values by specifying a unique string and |
| remote processor ID. |
| |
| config MSM_SMP2P_TEST |
| bool "SMSM Point-to-Point Test" |
| depends on MSM_SMP2P |
| help |
| Enables loopback and unit testing support for |
| SMP2P. Loopback support is used by other |
| processors to do unit testing. Unit tests |
| are used to verify the local and remote |
| implementations. |
| |
| config MSM_IPC_ROUTER_SMD_XPRT |
| depends on MSM_SMD |
| depends on IPC_ROUTER |
| bool "MSM SMD XPRT Layer" |
| help |
| SMD Transport Layer that enables IPC Router communication within |
| a System-on-Chip(SoC). When the SMD channels become available, |
| this layer registers a transport with IPC Router and enable |
| message exchange. |
| |
| config MSM_IPC_ROUTER_HSIC_XPRT |
| depends on USB_QCOM_IPC_BRIDGE |
| depends on IPC_ROUTER |
| bool "MSM HSIC XPRT Layer" |
| help |
| HSIC Transport Layer that enables off-chip communication of |
| IPC Router. When the HSIC endpoint becomes available, this layer |
| registers the transport with IPC Router and enable message |
| exchange. |
| |
| config MSM_IPC_ROUTER_MHI_XPRT |
| depends on MSM_MHI |
| depends on IPC_ROUTER |
| bool "MSM MHI XPRT Layer" |
| help |
| MHI Transport Layer that enables off-chip communication of |
| IPC Router. When the MHI endpoint becomes available, this layer |
| registers the transport with IPC Router and enable message |
| exchange. |
| |
| config MSM_IPC_ROUTER_GLINK_XPRT |
| depends on MSM_GLINK |
| depends on IPC_ROUTER |
| bool "MSM GLINK XPRT Layer" |
| help |
| GLINK Transport Layer that enables IPC Router communication within |
| a System-on-Chip(SoC). When the GLINK channels become available, |
| this layer registers a transport with IPC Router and enable |
| message exchange. |
| |
| config MSM_QMI_INTERFACE |
| depends on IPC_ROUTER |
| depends on QMI_ENCDEC |
| bool "MSM QMI Interface Library" |
| help |
| Library to send and receive QMI messages over IPC Router. |
| This library provides interface functions to the kernel drivers |
| to perform QMI message marshaling and transport them over IPC |
| Router. |
| |
| config MSM_GLINK_PKT |
| bool "Enable device interface for GLINK packet channels" |
| depends on MSM_GLINK |
| help |
| G-link packet driver provides the interface for the userspace |
| clients to communicate over G-Link via device nodes. |
| This enable the userspace clients to read and write to |
| some glink packets channel. |
| |
| config MSM_SYSTEM_HEALTH_MONITOR |
| bool "System Health Monitor" |
| depends on MSM_QMI_INTERFACE && MSM_SUBSYSTEM_RESTART |
| help |
| System Health Monitor (SHM) passively monitors the health of the |
| peripherals connected to the application processor. Software |
| components in the application processor that experience |
| communication failure can request the SHM to perform a system-wide |
| health check. If any failures are detected during the health-check, |
| then a subsystem restart will be triggered for the failed subsystem. |
| |
| config MSM_SUBSYSTEM_RESTART |
| bool "MSM Subsystem Restart" |
| help |
| This option enables the MSM subsystem restart framework. |
| |
| The MSM subsystem restart framework provides support to boot, |
| shutdown, and restart subsystems with a reference counted API. |
| It also notifies userspace of transitions between these states via |
| sysfs. |
| |
| config MSM_PIL |
| bool "Peripheral image loading" |
| select FW_LOADER |
| default n |
| help |
| Some peripherals need to be loaded into memory before they can be |
| brought out of reset. |
| |
| Say yes to support these devices. |
| |
| config MSM_SYSMON_GLINK_COMM |
| bool "MSM System Monitor communication support using GLINK transport" |
| depends on MSM_GLINK && MSM_SUBSYSTEM_RESTART |
| help |
| This option adds support for MSM System Monitor APIs using the GLINK |
| transport layer. The APIs provided may be used for notifying |
| subsystems within the SoC about other subsystems' power-up/down |
| state-changes. |
| |
| config MSM_PIL_SSR_GENERIC |
| tristate "MSM Subsystem Boot Support" |
| depends on MSM_PIL && MSM_SUBSYSTEM_RESTART |
| help |
| Support for booting and shutting down MSM Subsystem processors. |
| This driver also monitors the SMSM status bits and the watchdog |
| interrupt for the subsystem and restarts it on a watchdog bite |
| or a fatal error. Subsystems include LPASS, Venus, VPU, WCNSS and |
| BCSS. |
| |
| config MSM_PIL_MSS_QDSP6V5 |
| tristate "MSS QDSP6v5 (Hexagon) Boot Support" |
| depends on MSM_PIL && MSM_SUBSYSTEM_RESTART |
| help |
| Support for booting and shutting down QDSP6v5 (Hexagon) processors |
| in modem subsystems. If you would like to make or receive phone |
| calls then say Y here. |
| |
| If unsure, say N. |