@@ -97,7 +97,8 @@ config ARM_TEGRA_CPUIDLE
config ARM_QCOM_SPM_CPUIDLE
bool "CPU Idle Driver for Qualcomm Subsystem Power Manager (SPM)"
- depends on (ARCH_QCOM || COMPILE_TEST) && !ARM64
+ depends on ARCH_QCOM || (COMPILE_TEST && HAVE_ARM_SMCCC)
+ depends on ARM
select ARM_CPU_SUSPEND
select CPU_IDLE_MULTIPLE_DRIVERS
select DT_IDLE_STATES
@@ -238,6 +238,7 @@ config INTEL_STRATIX10_RSU
config QCOM_SCM
bool
depends on ARM || ARM64
+ depends on HAVE_ARM_SMCCC
select RESET_CONTROLLER
config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
Selecting QCOM_SCM for compile-tests is broken when the smcc firmware is not provided: drivers/firmware/qcom_scm-smc.o: in function `scm_smc_call': qcom_scm-smc.c:(.text+0x110): undefined reference to `__arm_smccc_smc' drivers/firmware/qcom_scm-legacy.o: in function `scm_legacy_call': qcom_scm-smc.c:(.text+0x1bc): undefined reference to `__arm_smccc_smc' Add a Kconfig dependency for the QCOM_SCM to make it easier to catch this, and fix the dependency for the newly added ARM_QCOM_SPM_CPUIDLE symbol that triggered it this time. Fixes: a871be6b8eee ("cpuidle: Convert Qualcomm SPM driver to a generic CPUidle driver") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- As the bug is currently only present in the cpuidle tree, can we merge it through that? --- drivers/cpuidle/Kconfig.arm | 3 ++- drivers/firmware/Kconfig | 1 + 2 files changed, 3 insertions(+), 1 deletion(-)