ARM: mmp: Also start timer 1 on boot.
authorLennert Buytenhek <buytenh@wantstofly.org>
Tue, 9 Aug 2011 18:36:59 +0000 (02:36 +0800)
committerEric Miao <eric.y.miao@gmail.com>
Thu, 11 Aug 2011 02:10:44 +0000 (10:10 +0800)
commit7ce5ae39c46f159aee3b3427844f1491e1ccac74
treeda07dbd620cb9cccb72a29559c09c17717c58137
parent4c22ea8f449ce837dd84965badca8e10f1f4094f
ARM: mmp: Also start timer 1 on boot.

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>
arch/arm/mach-mmp/time.c