[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <76f3e7ca-15c9-9b78-2520-f299b3e14cf8@huawei.com>
Date: Wed, 14 Sep 2022 14:21:48 +0800
From: Kunkun Jiang <jiangkunkun@...wei.com>
To: Mark Rutland <mark.rutland@....com>, Marc Zyngier <maz@...nel.org>,
"Daniel Lezcano" <daniel.lezcano@...aro.org>,
Thomas Gleixner <tglx@...utronix.de>,
Oliver Upton <oupton@...gle.com>
CC: <wanghaibin.wang@...wei.com>, <yuzenghui@...wei.com>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] clocksource/drivers/arm_arch_timer: Fix handling of
ARM erratum 85821
The subject is wrong. s/85821/858921
Please review v3.
Thanks,
Kunkun Jiang
On 2022/9/14 10:21, Kunkun Jiang wrote:
> The commit a38b71b0833e ("clocksource/drivers/arm_arch_timer:
> Move system register timer programming over to CVAL") moves the
> programming of the timers from the countdown timer (TVAL) over
> to the comparator (CVAL). This makes it necessary to read the
> counter when programming next event. However, the workaround of
> Cortex-A73 erratum 858921 does not set the corresponding
> set_next_event_phys and set_next_event_virt.
>
> Add the appropriate hooks to apply the erratum mitigation when
> programming the next timer event.
>
> Fixes: a38b71b0833e ("clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL")
> Signed-off-by: Kunkun Jiang <jiangkunkun@...wei.com>
> Acked-by: Marc Zyngier <maz@...nel.org>
> ---
> drivers/clocksource/arm_arch_timer.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
> index 9ab8221ee3c6..ff935efb6a88 100644
> --- a/drivers/clocksource/arm_arch_timer.c
> +++ b/drivers/clocksource/arm_arch_timer.c
> @@ -473,6 +473,8 @@ static const struct arch_timer_erratum_workaround ool_workarounds[] = {
> .desc = "ARM erratum 858921",
> .read_cntpct_el0 = arm64_858921_read_cntpct_el0,
> .read_cntvct_el0 = arm64_858921_read_cntvct_el0,
> + .set_next_event_phys = erratum_set_next_event_phys,
> + .set_next_event_virt = erratum_set_next_event_virt,
> },
> #endif
> #ifdef CONFIG_SUN50I_ERRATUM_UNKNOWN1
Powered by blists - more mailing lists