From patchwork Tue Nov 24 06:39:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Randy Dunlap X-Patchwork-Id: 331800 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 59AF0C6379D for ; Tue, 24 Nov 2020 06:39:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D110320684 for ; Tue, 24 Nov 2020 06:39:41 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="YMJyPKJA" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729657AbgKXGja (ORCPT ); Tue, 24 Nov 2020 01:39:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54782 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726921AbgKXGj3 (ORCPT ); Tue, 24 Nov 2020 01:39:29 -0500 Received: from merlin.infradead.org (merlin.infradead.org [IPv6:2001:8b0:10b:1231::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9DB16C0613CF; Mon, 23 Nov 2020 22:39:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=Content-Transfer-Encoding:MIME-Version: Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:In-Reply-To:References; bh=zaDovUSC7gRGubGzAVUJJyjyyB8/KDzwT5j5jjzxmlw=; b=YMJyPKJAUkXWeaesG+A2aW7cF+ p9mjGfyHce1KZ4pyJx5IubMyw/Y9oNDverFOKbXbJcXsFmJ3Bsu5g2b6hwSJ/GQvzJVmRRrpYf88f kEQyV1863VUBchW3aKcspukfYlcZLI4jKSV/9ZajbBxFYR4GO1bngBn1xNinHH37//pynePe98YCj 80pB41YMi2djnsZzb1Bx+3TxNHRy0wKadVTUHOMKoz7n1wcS6kaYOuXxqd7Y6L6Bj+k3kvasdwVvD yt0Pn0Gc838WeNBb6MiHoHYSHNDppyaIkh6BTe5khNDCMQOPrUfZgEn1sOaHBr7C7xLRVz55NZLvK Y2vZXqZA==; Received: from [2601:1c0:6280:3f0::cc1f] (helo=smtpauth.infradead.org) by merlin.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1khRz4-0002B2-9B; Tue, 24 Nov 2020 06:39:26 +0000 From: Randy Dunlap To: linux-kernel@vger.kernel.org Cc: Randy Dunlap , kernel test robot , linux-pm@vger.kernel.org, Andy Gross , Bjorn Andersson , linux-arm-msm@vger.kernel.org, "Rafael J. Wysocki" , Daniel Lezcano , Stephan Gerhold , Lina Iyer , Ulf Hansson , John Stultz Subject: [PATCH v2] cpuidle: arm: qcom: fix Kconfig problems Date: Mon, 23 Nov 2020 22:39:19 -0800 Message-Id: <20201124063919.30243-1-rdunlap@infradead.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org The Kconfig symbol ARM_QCOM_SPM_CPUIDLE wildly selects other Kconfig symbols when it should not. This causes kconfig warnings and subsequent build errors, as listed below, so modify this symbol's Kconfig entry to constrain and tame it. WARNING: unmet direct dependencies detected for QCOM_SCM Depends on [n]: ARM [=y] && HAVE_ARM_SMCCC [=n] || ARM64 Selected by [y]: - ARM_QCOM_SPM_CPUIDLE [=y] && CPU_IDLE [=y] && (ARM [=y] || ARM64) && (ARCH_QCOM [=n] || COMPILE_TEST [=y]) && !ARM64 WARNING: unmet direct dependencies detected for ARM_CPU_SUSPEND Depends on [n]: ARCH_SUSPEND_POSSIBLE [=n] Selected by [y]: - ARM_QCOM_SPM_CPUIDLE [=y] && CPU_IDLE [=y] && (ARM [=y] || ARM64) && (ARCH_QCOM [=n] || COMPILE_TEST [=y]) && !ARM64 and arm-linux-gnueabi-ld: arch/arm/kernel/sleep.o: in function `__cpu_suspend': (.text+0x68): undefined reference to `cpu_sa110_suspend_size' arm-linux-gnueabi-ld: arch/arm/kernel/suspend.o: in function `__cpu_suspend_save': suspend.c:(.text+0x138): undefined reference to `cpu_sa110_do_suspend' arm-linux-gnueabi-ld: suspend.c:(.text+0x170): undefined reference to `cpu_sa110_do_resume' arm-linux-gnueabi-ld: drivers/firmware/qcom_scm-smc.o: in function `__scm_smc_do_quirk': qcom_scm-smc.c:(.text+0x54): undefined reference to `__arm_smccc_smc' arm-linux-gnueabi-ld: drivers/firmware/qcom_scm-legacy.o: in function `scm_legacy_call': qcom_scm-legacy.c:(.text+0x168): undefined reference to `__arm_smccc_smc' arm-linux-gnueabi-ld: drivers/firmware/qcom_scm-legacy.o: in function `scm_legacy_call_atomic': qcom_scm-legacy.c:(.text+0x2e0): undefined reference to `__arm_smccc_smc' Fixes: a871be6b8eee ("cpuidle: Convert Qualcomm SPM driver to a generic CPUidle driver") Signed-off-by: Randy Dunlap Reported-by: kernel test robot Cc: linux-pm@vger.kernel.org Cc: Andy Gross Cc: Bjorn Andersson Cc: linux-arm-msm@vger.kernel.org Cc: "Rafael J. Wysocki" Cc: Daniel Lezcano Cc: Stephan Gerhold Cc: Lina Iyer Cc: Ulf Hansson Cc: Bjorn Andersson Cc: John Stultz --- v2: change to depends on QCOM_SCM (suggested by Bjorn) drivers/cpuidle/Kconfig.arm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- linux-next-20201123.orig/drivers/cpuidle/Kconfig.arm +++ linux-next-20201123/drivers/cpuidle/Kconfig.arm @@ -108,10 +108,10 @@ 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 QCOM_SCM select ARM_CPU_SUSPEND select CPU_IDLE_MULTIPLE_DRIVERS select DT_IDLE_STATES - select QCOM_SCM help Select this to enable cpuidle for Qualcomm processors. The Subsystem Power Manager (SPM) controls low power modes for the