[PATCH v2 2/7] clocksource/drivers/exynos_mct: Don't register as a sched_clock on arm64

John Stultz jstultz at google.com
Wed Apr 2 16:51:55 PDT 2025


On Wed, Apr 2, 2025 at 4:34 PM 'Will McVicker' via kernel-team
<kernel-team at android.com> wrote:
>
> To use the MCT as a sched_clock, the timer value has to be accessed vi
> an MCT register which is extremely slow. To improve performance on Arm64
> SoCs, use the Arm architected timer as the default clocksource. Note, we

Nit:  sched_clock is sort of separate from the "default clocksource",
and after this patch we still register MCT as a clocksource, so this
doesn't sound quite right.

I'd probably reword this slightly to:
"The MCT register is unfortunately very slow to access, but importantly
does not halt in the c2 idle state.  So for ARM64, we can improve
performance by not registering the MCT for sched_clock, allowing the
system to use the faster ARM architected timer for sched_clock instead.

The MCT is still registered as a clocksource, and a clockevent in order
to be a wakeup source for the arch_timer to exit the "c2" idle state.

Since ARM32 SoCs don't have an architected timer, the MCT must continue
to be used for sched_clock. Detailed discussion on this topic can be
found at [1]. "

> can't completely disable the MCT on Arm64 since it needs to be used as
> the wakeup source for the arch_timer to exit the "c2" idle state.
>
> Since ARM SoCs don't have an architectured timer, the MCT will continue
> to be the default clocksource. Detailed discussion on this topic can be
> found at [1].
>
> [1] https://lore.kernel.org/linux-samsung-soc/1400188079-21832-1-git-send-email-chirantan@chromium.org/
>
> Signed-off-by: Donghoon Yu <hoony.yu at samsung.com>
> Signed-off-by: Youngmin Nam <youngmin.nam at samsung.com>
> [Original commit from https://android.googlesource.com/kernel/gs/+/630817f7080e92c5e0216095ff52f6eb8dd00727
> Signed-off-by: Will McVicker <willmcvicker at google.com>
> Reviewed-by: Youngmin Nam <youngmin.nam at samsung.com>

Otherwise, looks good.
Acked-by: John Stultz <jstultz at google.com>

thanks
-john



More information about the linux-arm-kernel mailing list