diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-18 12:43:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-18 12:43:09 -0400 |
commit | 515b696b282f856c3ad1679ccd658120faa387d0 (patch) | |
tree | d9d7c1185c396617f128ca23463062308d11393b /arch/sh/kernel/time.c | |
parent | fa877c71e2136bd682b45022c96d5e073ced9f58 (diff) | |
parent | 064a16dc41be879d12bd5de5d2f9d38d890e0ee7 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (262 commits)
sh: mach-ecovec24: Add user debug switch support
sh: Kill off unused se_skipped in alignment trap notification code.
sh: Wire up HAVE_SYSCALL_TRACEPOINTS.
video: sh_mobile_lcdcfb: use both register sets for display panning
video: sh_mobile_lcdcfb: implement display panning
sh: Fix up sh7705 flush_dcache_page() build.
sh: kfr2r09: document the PLL/FLL <-> RF relationship.
sh: mach-ecovec24: need asm/clock.h.
sh: mach-ecovec24: deassert usb irq on boot.
sh: Add KEYSC support for EcoVec24
sh: add kycr2_delay for sh_keysc
sh: cpufreq: Include CPU id in info messages.
sh: multi-evt support for SH-X3 proto CPU.
sh: clkfwk: remove bogus set_bus_parent() from SH7709.
sh: Fix the indication point of the liquid crystal of AP-325RXA(AP3300)
sh: Add EcoVec24 romImage defconfig
sh: USB disable process is needed if romImage boot for EcoVec24
sh: EcoVec24: add HIZA setting for LED
sh: EcoVec24: write MAC address in boot
sh: Add romImage support for EcoVec24
...
Diffstat (limited to 'arch/sh/kernel/time.c')
-rw-r--r-- | arch/sh/kernel/time.c | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/arch/sh/kernel/time.c b/arch/sh/kernel/time.c index 0e0e8581cf7a..953fa1613312 100644 --- a/arch/sh/kernel/time.c +++ b/arch/sh/kernel/time.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/smp.h> | 21 | #include <linux/smp.h> |
22 | #include <linux/rtc.h> | 22 | #include <linux/rtc.h> |
23 | #include <asm/clock.h> | 23 | #include <asm/clock.h> |
24 | #include <asm/hwblk.h> | ||
24 | #include <asm/rtc.h> | 25 | #include <asm/rtc.h> |
25 | 26 | ||
26 | /* Dummy RTC ops */ | 27 | /* Dummy RTC ops */ |
@@ -89,21 +90,8 @@ module_init(rtc_generic_init); | |||
89 | 90 | ||
90 | void (*board_time_init)(void); | 91 | void (*board_time_init)(void); |
91 | 92 | ||
92 | void __init time_init(void) | 93 | static void __init sh_late_time_init(void) |
93 | { | 94 | { |
94 | if (board_time_init) | ||
95 | board_time_init(); | ||
96 | |||
97 | clk_init(); | ||
98 | |||
99 | rtc_sh_get_time(&xtime); | ||
100 | set_normalized_timespec(&wall_to_monotonic, | ||
101 | -xtime.tv_sec, -xtime.tv_nsec); | ||
102 | |||
103 | #ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST | ||
104 | local_timer_setup(smp_processor_id()); | ||
105 | #endif | ||
106 | |||
107 | /* | 95 | /* |
108 | * Make sure all compiled-in early timers register themselves. | 96 | * Make sure all compiled-in early timers register themselves. |
109 | * | 97 | * |
@@ -116,3 +104,18 @@ void __init time_init(void) | |||
116 | early_platform_driver_register_all("earlytimer"); | 104 | early_platform_driver_register_all("earlytimer"); |
117 | early_platform_driver_probe("earlytimer", 2, 0); | 105 | early_platform_driver_probe("earlytimer", 2, 0); |
118 | } | 106 | } |
107 | |||
108 | void __init time_init(void) | ||
109 | { | ||
110 | if (board_time_init) | ||
111 | board_time_init(); | ||
112 | |||
113 | hwblk_init(); | ||
114 | clk_init(); | ||
115 | |||
116 | rtc_sh_get_time(&xtime); | ||
117 | set_normalized_timespec(&wall_to_monotonic, | ||
118 | -xtime.tv_sec, -xtime.tv_nsec); | ||
119 | |||
120 | late_time_init = sh_late_time_init; | ||
121 | } | ||