• Lennert Buytenhek's avatar
    ARM: mmp: Also start timer 1 on boot. · 7ce5ae39
    Lennert Buytenhek authored
    Currently, arch-mmp/time.c uses timer 0 both as a clocksource timer
    and as a clockevent timer, the latter by setting up a comparator
    interrupt to match on 'current_time + delta'.  This is problematic
    if delta is small enough, as that can lead to 'current_time + delta'
    already being in the past when comparator setup has finished, leading
    to the requested event not triggering.
    
    As there is also a silicon issue that requires stopping a timer's
    counter while writing to one of its match registers, we'll switch to
    using two separate timers -- timer 0 as clockevent timer, which we'll
    start and stop on every invocation of ->set_next_event(), and timer 1
    as clocksource timer, which will be free-running.
    
    This first patch enables timer 1 on boot, so that we can use it as
    clocksource timer.
    Signed-off-by: default avatarLennert Buytenhek <buytenh@laptop.org>
    Acked-by: default avatarHaojian Zhuang <haojian.zhuang@gmail.com>
    Signed-off-by: default avatarEric Miao <eric.y.miao@gmail.com>
    7ce5ae39
time.c 4.75 KB