Messages in this thread Patch in this message | | | From | <> | Subject | [PATCHv5 1/2] clocksource: dw_apb_timer_of: Fix read_sched_clock | Date | Tue, 10 Dec 2013 10:07:57 -0600 |
| |
From: Dinh Nguyen <dinguyen@altera.com>
The read_sched_clock should return the ~value because the clock is a countdown implementation. read_sched_clock() should be the same as __apbt_read_clocksource().
Signed-off-by: Dinh Nguyen <dinguyen@altera.com> --- v5: Split up into 2 patches v4: Simplify the fix by simply returning ~__raw_readl(sched_io_base) v3: Use APBTMR_N_CURRENT_VALUE define in read_sched_clock() v2: Maintain backwards compatibility for "dw-apb-timer-sp" and "dw-apb-timer-osc". --- drivers/clocksource/dw_apb_timer_of.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clocksource/dw_apb_timer_of.c b/drivers/clocksource/dw_apb_timer_of.c index 45ba8ae..b29d7cd 100644 --- a/drivers/clocksource/dw_apb_timer_of.c +++ b/drivers/clocksource/dw_apb_timer_of.c @@ -108,7 +108,7 @@ static void __init add_clocksource(struct device_node *source_timer) static u64 read_sched_clock(void) { - return __raw_readl(sched_io_base); + return ~__raw_readl(sched_io_base); } static const struct of_device_id sptimer_ids[] __initconst = { -- 1.7.9.5
| |