# SPDX-License-Identifier: GPL-2.0-only
menuconfig ARCH_QCOM
	bool "Qualcomm Support"
	depends on ARCH_MULTI_V7
	select ARM_GIC
	select ARM_AMBA if IPQ_MEM_PROFILE != 256
	select PINCTRL
	select QCOM_SCM if SMP
	select ARM_GIC_V2M if PCI
	help
	  Support for Qualcomm's devicetree based systems.

if ARCH_QCOM

config ARCH_IPQ40XX
	bool "Enable support for IPQ40XX"
	select CLKSRC_QCOM
	select HAVE_ARM_ARCH_TIMER

config ARCH_IPQ5424
	bool "Enable support for IPQ5424"
	select ARM_GIC_V3

config ARCH_MSM8X60
	bool "Enable support for MSM8X60"
	select CLKSRC_QCOM

config ARCH_MSM8909
	bool "Enable support for MSM8909"
	select HAVE_ARM_ARCH_TIMER

config ARCH_MSM8916
	bool "Enable support for MSM8916"
	select HAVE_ARM_ARCH_TIMER
	help
	  Enable support for the Qualcomm Snapdragon 410 (MSM8916/APQ8016).

	  Note that ARM64 is the main supported architecture for MSM8916.
	  The ARM32 option is intended for a few devices with signed firmware
	  that does not allow booting ARM64 kernels.

config ARCH_MSM8960
	bool "Enable support for MSM8960"
	select CLKSRC_QCOM

config ARCH_MSM8974
	bool "Enable support for MSM8974"
	select HAVE_ARM_ARCH_TIMER

config ARCH_MDM9615
	bool "Enable support for MDM9615"
	select CLKSRC_QCOM

config IPQ_MEM_PROFILE
	int "Select Memory Profile"
	range 0 1024
	default 0
	help
	  This option select memory profile to be used, which defines
	  the reserved memory configuration used in device tree.

	  If unsure, say 0

config SKB_FIXED_SIZE_2K
	bool "SKB size fixed at 2K"
	default n
	help
	  This is a hint to the NSS driver that the ‘skbuff’ size might
	  need to be fixed at 2KB, to conserve memory.

config IO_COHERENCY
	bool "Enable IO Coherency for kernel modules"
	default n
	help
	  Enable/Disable IO Coherency for kernel modules.

endif
