lkml.org 
[lkml]   [2020]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 321/717] clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne
    Date
    From: Keqian Zhu <zhukeqian1@huawei.com>

    [ Upstream commit d8cc3905b8073c7cfbff94af889fa8dc71f21dd5 ]

    In commit 0ea415390cd3 ("clocksource/arm_arch_timer: Use arch_timer_read_counter
    to access stable counters"), we separate stable and normal count reader to omit
    unnecessary overhead on systems that have no timer erratum.

    However, in erratum_set_next_event_tval_generic(), count reader becomes normal
    reader. This converts it to stable reader.

    Fixes: 0ea415390cd3 ("clocksource/arm_arch_timer: Use arch_timer_read_counter to access stable counters")
    Acked-by: Marc Zyngier <maz@kernel.org>
    Signed-off-by: Keqian Zhu <zhukeqian1@huawei.com>
    Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
    Link: https://lore.kernel.org/r/20201204073126.6920-2-zhukeqian1@huawei.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/clocksource/arm_arch_timer.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
    index 6c3e841801461..777d38cb39b09 100644
    --- a/drivers/clocksource/arm_arch_timer.c
    +++ b/drivers/clocksource/arm_arch_timer.c
    @@ -396,10 +396,10 @@ static void erratum_set_next_event_tval_generic(const int access, unsigned long
    ctrl &= ~ARCH_TIMER_CTRL_IT_MASK;

    if (access == ARCH_TIMER_PHYS_ACCESS) {
    - cval = evt + arch_counter_get_cntpct();
    + cval = evt + arch_counter_get_cntpct_stable();
    write_sysreg(cval, cntp_cval_el0);
    } else {
    - cval = evt + arch_counter_get_cntvct();
    + cval = evt + arch_counter_get_cntvct_stable();
    write_sysreg(cval, cntv_cval_el0);
    }

    --
    2.27.0


    \
     
     \ /
      Last update: 2020-12-28 15:15    [W:4.044 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site