aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ux500
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2011-10-03 03:30:20 -0400
committerLinus Walleij <linus.walleij@linaro.org>2011-10-03 03:34:16 -0400
commitb1e3be0647fec81887e55edbda0c56c0445f7b53 (patch)
treef45cf420afccc005b46bb24d4fc3e731b9d434ae /arch/arm/mach-ux500
parentbb219dba0d1e46324ea462ba42f6fd8e9b7471de (diff)
clocksource: fixup ux500 build problems
Based on a patch from Arnd Bergmann this fixes up the build problem of assigning a non-existing global when the ux500 PRCMU timer is not linked in by passing its base address to the init function. We also add a missing <linux/errno.h> inclusion and staticize the dummy function. Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm/mach-ux500')
-rw-r--r--arch/arm/mach-ux500/timer.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/arm/mach-ux500/timer.c b/arch/arm/mach-ux500/timer.c
index 08c55a53cb83..aea467d04ff7 100644
--- a/arch/arm/mach-ux500/timer.c
+++ b/arch/arm/mach-ux500/timer.c
@@ -5,6 +5,7 @@
5 * Author: Mattias Wallin <mattias.wallin@stericsson.com> for ST-Ericsson 5 * Author: Mattias Wallin <mattias.wallin@stericsson.com> for ST-Ericsson
6 */ 6 */
7#include <linux/io.h> 7#include <linux/io.h>
8#include <linux/errno.h>
8#include <linux/clksrc-dbx500-prcmu.h> 9#include <linux/clksrc-dbx500-prcmu.h>
9 10
10#include <asm/localtimer.h> 11#include <asm/localtimer.h>
@@ -16,18 +17,20 @@
16 17
17static void __init ux500_timer_init(void) 18static void __init ux500_timer_init(void)
18{ 19{
20 void __iomem *prcmu_timer_base;
21
19 if (cpu_is_u5500()) { 22 if (cpu_is_u5500()) {
20#ifdef CONFIG_LOCAL_TIMERS 23#ifdef CONFIG_LOCAL_TIMERS
21 twd_base = __io_address(U5500_TWD_BASE); 24 twd_base = __io_address(U5500_TWD_BASE);
22#endif 25#endif
23 mtu_base = __io_address(U5500_MTU0_BASE); 26 mtu_base = __io_address(U5500_MTU0_BASE);
24 clksrc_dbx500_timer_base = __io_address(U5500_PRCMU_TIMER_3_BASE); 27 prcmu_timer_base = __io_address(U5500_PRCMU_TIMER_3_BASE);
25 } else if (cpu_is_u8500()) { 28 } else if (cpu_is_u8500()) {
26#ifdef CONFIG_LOCAL_TIMERS 29#ifdef CONFIG_LOCAL_TIMERS
27 twd_base = __io_address(U8500_TWD_BASE); 30 twd_base = __io_address(U8500_TWD_BASE);
28#endif 31#endif
29 mtu_base = __io_address(U8500_MTU0_BASE); 32 mtu_base = __io_address(U8500_MTU0_BASE);
30 clksrc_dbx500_timer_base = __io_address(U8500_PRCMU_TIMER_4_BASE); 33 prcmu_timer_base = __io_address(U8500_PRCMU_TIMER_4_BASE);
31 } else { 34 } else {
32 ux500_unknown_soc(); 35 ux500_unknown_soc();
33 } 36 }
@@ -50,7 +53,7 @@ static void __init ux500_timer_init(void)
50 */ 53 */
51 54
52 nmdk_timer_init(); 55 nmdk_timer_init();
53 clksrc_dbx500_prcmu_init(); 56 clksrc_dbx500_prcmu_init(prcmu_timer_base);
54} 57}
55 58
56static void ux500_timer_reset(void) 59static void ux500_timer_reset(void)