diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2011-10-03 03:30:20 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2011-10-03 03:34:16 -0400 |
commit | b1e3be0647fec81887e55edbda0c56c0445f7b53 (patch) | |
tree | f45cf420afccc005b46bb24d4fc3e731b9d434ae /arch/arm/mach-ux500 | |
parent | bb219dba0d1e46324ea462ba42f6fd8e9b7471de (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.c | 9 |
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 | ||
17 | static void __init ux500_timer_init(void) | 18 | static 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 | ||
56 | static void ux500_timer_reset(void) | 59 | static void ux500_timer_reset(void) |