2024-02-15 08:33:44

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] cpufreq: qcom-hw: add CONFIG_COMMON_CLK dependency

From: Arnd Bergmann <[email protected]>

It is still possible to compile-test a kernel without CONFIG_COMMON_CLK
for some ancient ARM boards or other architectures, but this causes a
link failure in the qcom-cpufreq-hw driver:

ERROR: modpost: "devm_clk_hw_register" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!
ERROR: modpost: "devm_of_clk_add_hw_provider" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!
ERROR: modpost: "of_clk_hw_onecell_get" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!

Add a Kconfig dependency here to make sure this always work. Apparently
this bug has been in the kernel for a while without me running into it
on randconfig builds as COMMON_CLK is almost always enabled.

I have cross-checked by building an allmodconfig kernel with COMMON_CLK
disabled, which showed no other driver having this problem.

Fixes: 4370232c727b ("cpufreq: qcom-hw: Add CPU clock provider support")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/cpufreq/Kconfig.arm | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
index f911606897b8..a0ebad77666e 100644
--- a/drivers/cpufreq/Kconfig.arm
+++ b/drivers/cpufreq/Kconfig.arm
@@ -173,6 +173,7 @@ config ARM_QCOM_CPUFREQ_NVMEM
config ARM_QCOM_CPUFREQ_HW
tristate "QCOM CPUFreq HW driver"
depends on ARCH_QCOM || COMPILE_TEST
+ depends on COMMON_CLK
help
Support for the CPUFreq HW driver.
Some QCOM chipsets have a HW engine to offload the steps
--
2.39.2



2024-02-15 09:11:30

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH] cpufreq: qcom-hw: add CONFIG_COMMON_CLK dependency

On 15-02-24, 09:33, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> It is still possible to compile-test a kernel without CONFIG_COMMON_CLK
> for some ancient ARM boards or other architectures, but this causes a
> link failure in the qcom-cpufreq-hw driver:
>
> ERROR: modpost: "devm_clk_hw_register" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!
> ERROR: modpost: "devm_of_clk_add_hw_provider" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!
> ERROR: modpost: "of_clk_hw_onecell_get" [drivers/cpufreq/qcom-cpufreq-hw.ko] undefined!
>
> Add a Kconfig dependency here to make sure this always work. Apparently
> this bug has been in the kernel for a while without me running into it
> on randconfig builds as COMMON_CLK is almost always enabled.
>
> I have cross-checked by building an allmodconfig kernel with COMMON_CLK
> disabled, which showed no other driver having this problem.
>
> Fixes: 4370232c727b ("cpufreq: qcom-hw: Add CPU clock provider support")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/cpufreq/Kconfig.arm | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
> index f911606897b8..a0ebad77666e 100644
> --- a/drivers/cpufreq/Kconfig.arm
> +++ b/drivers/cpufreq/Kconfig.arm
> @@ -173,6 +173,7 @@ config ARM_QCOM_CPUFREQ_NVMEM
> config ARM_QCOM_CPUFREQ_HW
> tristate "QCOM CPUFreq HW driver"
> depends on ARCH_QCOM || COMPILE_TEST
> + depends on COMMON_CLK
> help
> Support for the CPUFreq HW driver.
> Some QCOM chipsets have a HW engine to offload the steps

Applied. Thanks.

--
viresh