[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <jdok5u7aryu6n6aleeox6cy5epkvxdrdnklxzo3kbuffhrifir@qdkvdk67o3lq>
Date: Mon, 17 Nov 2025 15:06:08 +0530
From: Manivannan Sadhasivam <mani@...nel.org>
To: Enlin Mu <enlin.mu@...ux.dev>
Cc: daniel.lezcano@...aro.org, tglx@...utronix.de,
linux-arm-kernel@...ts.infradead.org, linux-unisoc@...ts.infradead.org, linux-kernel@...r.kernel.org,
enlin.mu@...soc.com
Subject: Re: [PATCH V2] clocksource/drivers/rda: Add sched_clock_register for
RDA8810PL SoC
On Fri, Nov 07, 2025 at 02:33:47PM +0800, Enlin Mu wrote:
> From: Enlin Mu <enlin.mu@...soc.com>
>
> The current system log timestamp accuracy is tick, which can not
> meet the usage requirements and needs to reach nanoseconds.
Which 'usage requirement' you are referring here?
> Therefore, the sched_clock_register funciton needs to be add.
>
> Signed-off-by: Enlin Mu <enlin.mu@...soc.com>
But I'm happy to see a patch from Unisoc for RDA Micro SoC :)
- Mani
> ---
> drivers/clocksource/timer-rda.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clocksource/timer-rda.c b/drivers/clocksource/timer-rda.c
> index fd1199c189bf..0be8e05970e2 100644
> --- a/drivers/clocksource/timer-rda.c
> +++ b/drivers/clocksource/timer-rda.c
> @@ -13,6 +13,7 @@
>
> #include <linux/init.h>
> #include <linux/interrupt.h>
> +#include <linux/sched_clock.h>
>
> #include "timer-of.h"
>
> @@ -153,7 +154,7 @@ static struct timer_of rda_ostimer_of = {
> },
> };
>
> -static u64 rda_hwtimer_read(struct clocksource *cs)
> +static u64 rda_hwtimer_clocksource_read(void)
> {
> void __iomem *base = timer_of_base(&rda_ostimer_of);
> u32 lo, hi;
> @@ -167,6 +168,11 @@ static u64 rda_hwtimer_read(struct clocksource *cs)
> return ((u64)hi << 32) | lo;
> }
>
> +static u64 rda_hwtimer_read(struct clocksource *cs)
> +{
> + return rda_hwtimer_clocksource_read();
> +}
> +
> static struct clocksource rda_hwtimer_clocksource = {
> .name = "rda-timer",
> .rating = 400,
> @@ -185,6 +191,7 @@ static int __init rda_timer_init(struct device_node *np)
> return ret;
>
> clocksource_register_hz(&rda_hwtimer_clocksource, rate);
> + sched_clock_register(rda_hwtimer_clocksource_read, 64, rate);
>
> clockevents_config_and_register(&rda_ostimer_of.clkevt, rate,
> 0x2, UINT_MAX);
> --
> 2.39.5
>
--
மணிவண்ணன் சதாசிவம்
Powered by blists - more mailing lists