#
# QCOM Soc drivers
#
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_L2_ACCESSORS
	bool "Qualcomm Technologies L2-cache accessors"
	depends on ARCH_QCOM
	help
	  Say y here to enable support for the Qualcomm Technologies
	  L2 accessors.
	  Provides support for accessing registers in the L2 cache
	  for Qualcomm Technologies chips.

config QCOM_PERF_EVENTS_CPU
	bool "Qualcomm Technologies CPU perf events"
	depends on ARCH_QCOM && HW_PERF_EVENTS && ARM64
	help
	  Provides support for the CPU performance monitor unit (PMU)
	  in Qualcomm Technologies processors.
	  Adds support for implementation-specific events in the Qualcomm
	  Technologies CPU PMU and integrates them into the perf events
	  subsystem for use in performance analysis.

config QCOM_PERF_EVENTS_L2
	bool "Qualcomm Technologies L2-cache perf events"
	depends on ARCH_QCOM && HW_PERF_EVENTS
	select QCOM_L2_ACCESSORS
	  help
	  Provides support for the L2 cache performance monitor unit (PMU)
	  in Qualcomm Technologies processors.
	  Adds the L2 cache PMU into the perf events subsystem for
	  monitoring L2 cache events.

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_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 QCOM_IRQ_COMBINER
	bool "QCOM IRQ combiner support"
	depends on GPIOLIB && ARCH_QCOM
	select GPIOLIB_IRQCHIP
	help
	  Say yes here to add support for the IRQ combiner devices embedded
	  in Qualcomm Technologies chips.

source "drivers/soc/qcom/coresight/Kconfig"

config QCOM_CRASH_NOTIFIER
	bool "QCOM Crash Notifier"
	depends on ARCH_QCOM && ACPI
	help
	  QCOM platform specific driver to send notifications when a kernel
	  panic occurs. IMC is notified of the kernel panic via an interrupt
	  which is triggered in this driver.
