Hi all,
Recently I am learning the code related to Arm arch timer. I found that the
Cortex-A73 erratum 858921 does not set the corresponding callback functions:
set_next_event_phys and set_next_event_virt like other erratums. Won't it
get the wrong value when reading the counter during setting next event?
Looking forward to your reply.
Thanks,
Kunkun Jiang
On Fri, 09 Sep 2022 08:31:43 +0100,
Kunkun Jiang <[email protected]> wrote:
>
> Hi all,
>
> Recently I am learning the code related to Arm arch timer. I found that the
> Cortex-A73 erratum 858921 does not set the corresponding callback functions:
> set_next_event_phys and set_next_event_virt like other erratums. Won't it
> get the wrong value when reading the counter during setting next event?
Yup, you're correct.
This is a regression introduced by a38b71b0833e
("clocksource/drivers/arm_arch_timer: Move system register timer
programming over to CVAL"). We used to use the TVAL accessor which
doesn't need a read of the counter, while the switch to CVAL needs
one. Obviously, I didn't enough pay attention to the A73 erratum.
Please send in a fix for this.
Thanks,
M.
--
Without deviation from the norm, progress is not possible.
Hi Marc,
Thank you for your reply, I've sent a fix.
https://lore.kernel.org/all/[email protected]/
Thanks,
Kunkun Jiang
On 2022/9/9 20:23, Marc Zyngier wrote:
> On Fri, 09 Sep 2022 08:31:43 +0100,
> Kunkun Jiang <[email protected]> wrote:
>> Hi all,
>>
>> Recently I am learning the code related to Arm arch timer. I found that the
>> Cortex-A73 erratum 858921 does not set the corresponding callback functions:
>> set_next_event_phys and set_next_event_virt like other erratums. Won't it
>> get the wrong value when reading the counter during setting next event?
> Yup, you're correct.
>
> This is a regression introduced by a38b71b0833e
> ("clocksource/drivers/arm_arch_timer: Move system register timer
> programming over to CVAL"). We used to use the TVAL accessor which
> doesn't need a read of the counter, while the switch to CVAL needs
> one. Obviously, I didn't enough pay attention to the A73 erratum.
>
> Please send in a fix for this.
>
> Thanks,
>
> M.
>