7ce5ae39c4
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: Lennert Buytenhek <buytenh@laptop.org> Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com> |
||
---|---|---|
.. | ||
include/mach | ||
aspenite.c | ||
avengers_lite.c | ||
brownstone.c | ||
clock.c | ||
clock.h | ||
common.c | ||
common.h | ||
devices.c | ||
flint.c | ||
gplugd.c | ||
irq-mmp2.c | ||
irq-pxa168.c | ||
jasper.c | ||
Kconfig | ||
Makefile | ||
Makefile.boot | ||
mmp2.c | ||
pxa168.c | ||
pxa910.c | ||
tavorevb.c | ||
teton_bga.c | ||
time.c | ||
ttc_dkb.c |