Re: Kconfig condition on BCM2835_TIMER (and others)

From: Florian Fainelli
Date: Tue Feb 04 2025 - 19:42:31 EST


On 2/4/25 15:31, Conor Dooley wrote:
On Mon, Feb 03, 2025 at 01:44:05PM +0100, Etienne Buira wrote:
Resend with corrected email address.

On Mon, Feb 03, 2025 at 01:39:33PM +0100, Etienne Buira wrote:
Hi all,

I want to build a kernel for Raspberry pi 4B, which, according to the
dtb, has a bc2835-system-timer. This device is handled by
drivers/clocksource/bcm2835_timer.c, which is built depending on
CONFIG_BCM2835_TIMER.

However, the config option is guarded by "if COMPILE_TEST" condition.

Shouldn't that condition be ARM64 || COMPILE_TEST (ie be selectable on
arm64 builds)?

Perhaps, but I'd wonder why arm64 and arm32 are being treated differently.
Florian, why's there no select on arm64 when the BCM2835 family option
is enabled?

The Raspberry Pi 4B (Cortex-A72 CPU) primarily makes use of the ARM CPU local timer under drivers/clocksource/arm_arch_timer.c, therefore using bcm2835_timer.c is not necessary at all as a functional boot requirement.

There is no harm in enabling bcm2835_timer, and the arch_arm_timer.c rating being greater (400) than the bcm2835_timer (300), you will get the former to be selected anyway.

Feel free to submit a patch to enable the driver for ARM64.
--
Florian