|
@@ -5,6 +5,7 @@
|
|
|
* Author: Mattias Wallin <mattias.wallin@stericsson.com> for ST-Ericsson
|
|
|
*/
|
|
|
#include <linux/io.h>
|
|
|
+#include <linux/errno.h>
|
|
|
#include <linux/clksrc-dbx500-prcmu.h>
|
|
|
|
|
|
#include <asm/localtimer.h>
|
|
@@ -16,18 +17,20 @@
|
|
|
|
|
|
static void __init ux500_timer_init(void)
|
|
|
{
|
|
|
+ void __iomem *prcmu_timer_base;
|
|
|
+
|
|
|
if (cpu_is_u5500()) {
|
|
|
#ifdef CONFIG_LOCAL_TIMERS
|
|
|
twd_base = __io_address(U5500_TWD_BASE);
|
|
|
#endif
|
|
|
mtu_base = __io_address(U5500_MTU0_BASE);
|
|
|
- clksrc_dbx500_timer_base = __io_address(U5500_PRCMU_TIMER_3_BASE);
|
|
|
+ prcmu_timer_base = __io_address(U5500_PRCMU_TIMER_3_BASE);
|
|
|
} else if (cpu_is_u8500()) {
|
|
|
#ifdef CONFIG_LOCAL_TIMERS
|
|
|
twd_base = __io_address(U8500_TWD_BASE);
|
|
|
#endif
|
|
|
mtu_base = __io_address(U8500_MTU0_BASE);
|
|
|
- clksrc_dbx500_timer_base = __io_address(U8500_PRCMU_TIMER_4_BASE);
|
|
|
+ prcmu_timer_base = __io_address(U8500_PRCMU_TIMER_4_BASE);
|
|
|
} else {
|
|
|
ux500_unknown_soc();
|
|
|
}
|
|
@@ -50,7 +53,7 @@ static void __init ux500_timer_init(void)
|
|
|
*/
|
|
|
|
|
|
nmdk_timer_init();
|
|
|
- clksrc_dbx500_prcmu_init();
|
|
|
+ clksrc_dbx500_prcmu_init(prcmu_timer_base);
|
|
|
}
|
|
|
|
|
|
static void ux500_timer_reset(void)
|