Adding a dependency on CONFIG_COMPILE_TEST makes the relevant item
unselectable for practical purposes. The correct solution is to add a
dependency alternative on the relevant architecture.
Fixes: dfc82faad72520 ("clocksource/drivers/sp804: Add COMPILE_TEST to
CONFIG_ARM_TIMER_SP804")
Link: https://lore.kernel.org/lkml/20190618120719.a4kgyiuljm5uivfq@laureti-dev/
Link:
https://lore.kernel.org/lkml/alpine.deb.2.21.1908152227590.1...@nanos.tec.linutronix.de/
Signed-off-by: Helmut Grohne
---
drivers/clocksource/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Hi Thomas,
On Thu, Aug 15, 2019 at 10:30:39PM +0200, Thomas Gleixner wrote:
> The obvious fix is to add
>
> depends on ARM || ARM64 || COMPILE_TEST
>
> instead of reverting the whole thing. Care to do that?
Incidentally, that's what I proposed earlier as RFC. Resending that
variant now.
I also note that there are likely more instances for this pattern.
Should they be fixed in a similar way? You can find a lot using the
following incantation:
$ git describe --tags
v5.3-rc4
$ git ls-files -- "*/Kconfig" | xargs git grep --cached 'bool .* if
COMPILE_TEST$' -- | wc -l
185
$
Seems like an anti-pattern to me. It is particularly common in the
clocksource subtree.
Helmut
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 5e9317dc3d39..7081a250573b 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -393,7 +393,8 @@ config ARM_GLOBAL_TIMER
This options enables support for the ARM global timer unit
config ARM_TIMER_SP804
- bool "Support for Dual Timer SP804 module" if COMPILE_TEST
+ bool "Support for Dual Timer SP804 module"
+ depends on ARM || ARM64 || COMPILE_TEST
depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
select CLKSRC_MMIO
select TIMER_OF if OF
--
2.11.0