|
@@ -108,12 +108,11 @@ static void __init add_clocksource(struct device_node *source_timer)
|
|
|
|
|
|
static u64 read_sched_clock(void)
|
|
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 = {
|
|
static const struct of_device_id sptimer_ids[] __initconst = {
|
|
{ .compatible = "picochip,pc3x2-rtc" },
|
|
{ .compatible = "picochip,pc3x2-rtc" },
|
|
- { .compatible = "snps,dw-apb-timer-sp" },
|
|
|
|
{ /* Sentinel */ },
|
|
{ /* Sentinel */ },
|
|
};
|
|
};
|
|
|
|
|
|
@@ -151,4 +150,6 @@ static void __init dw_apb_timer_init(struct device_node *timer)
|
|
num_called++;
|
|
num_called++;
|
|
}
|
|
}
|
|
CLOCKSOURCE_OF_DECLARE(pc3x2_timer, "picochip,pc3x2-timer", dw_apb_timer_init);
|
|
CLOCKSOURCE_OF_DECLARE(pc3x2_timer, "picochip,pc3x2-timer", dw_apb_timer_init);
|
|
-CLOCKSOURCE_OF_DECLARE(apb_timer, "snps,dw-apb-timer-osc", dw_apb_timer_init);
|
|
|
|
|
|
+CLOCKSOURCE_OF_DECLARE(apb_timer_osc, "snps,dw-apb-timer-osc", dw_apb_timer_init);
|
|
|
|
+CLOCKSOURCE_OF_DECLARE(apb_timer_sp, "snps,dw-apb-timer-sp", dw_apb_timer_init);
|
|
|
|
+CLOCKSOURCE_OF_DECLARE(apb_timer, "snps,dw-apb-timer", dw_apb_timer_init);
|