diff options
| author | Kyle McMartin <kyle@mako.i.cabal.ca> | 2007-02-26 21:24:56 -0500 |
|---|---|---|
| committer | Kyle McMartin <kyle@mako.i.cabal.ca> | 2007-02-26 21:24:56 -0500 |
| commit | b2a8289a611af409e5621df27227dc3f55ba358b (patch) | |
| tree | 34452ae94e0a84ce01b1137e92808ce563b48db6 | |
| parent | 87c8174727c95ab43f5bd2164e78c665c6945e67 (diff) | |
[PARISC] time: clocksource lost update_callback
So move the code to be called by smp_cpus_done, which is
after we've figured out if there's more than one cpu
actually present.
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
| -rw-r--r-- | arch/parisc/kernel/smp.c | 4 | ||||
| -rw-r--r-- | arch/parisc/kernel/time.c | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c index 6ba9257fdb7f..bb6e6a38e911 100644 --- a/arch/parisc/kernel/smp.c +++ b/arch/parisc/kernel/smp.c | |||
| @@ -567,6 +567,10 @@ void __init smp_prepare_cpus(unsigned int max_cpus) | |||
| 567 | 567 | ||
| 568 | void smp_cpus_done(unsigned int cpu_max) | 568 | void smp_cpus_done(unsigned int cpu_max) |
| 569 | { | 569 | { |
| 570 | extern int update_cr16_clocksource(void); | ||
| 571 | |||
| 572 | update_cr16_clocksource(); | ||
| 573 | |||
| 570 | return; | 574 | return; |
| 571 | } | 575 | } |
| 572 | 576 | ||
diff --git a/arch/parisc/kernel/time.c b/arch/parisc/kernel/time.c index d45f77f62908..9b14066d693c 100644 --- a/arch/parisc/kernel/time.c +++ b/arch/parisc/kernel/time.c | |||
| @@ -176,8 +176,6 @@ static cycle_t read_cr16(void) | |||
| 176 | return get_cycles(); | 176 | return get_cycles(); |
| 177 | } | 177 | } |
| 178 | 178 | ||
| 179 | static int cr16_update_callback(void); | ||
| 180 | |||
| 181 | static struct clocksource clocksource_cr16 = { | 179 | static struct clocksource clocksource_cr16 = { |
| 182 | .name = "cr16", | 180 | .name = "cr16", |
| 183 | .rating = 300, | 181 | .rating = 300, |
| @@ -185,11 +183,11 @@ static struct clocksource clocksource_cr16 = { | |||
| 185 | .mask = CLOCKSOURCE_MASK(BITS_PER_LONG), | 183 | .mask = CLOCKSOURCE_MASK(BITS_PER_LONG), |
| 186 | .mult = 0, /* to be set */ | 184 | .mult = 0, /* to be set */ |
| 187 | .shift = 22, | 185 | .shift = 22, |
| 188 | .update_callback = cr16_update_callback, | ||
| 189 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | 186 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, |
| 190 | }; | 187 | }; |
| 191 | 188 | ||
| 192 | static int cr16_update_callback(void) | 189 | #ifdef CONFIG_SMP |
| 190 | int update_cr16_clocksource(void) | ||
| 193 | { | 191 | { |
| 194 | int change = 0; | 192 | int change = 0; |
| 195 | 193 | ||
| @@ -202,7 +200,7 @@ static int cr16_update_callback(void) | |||
| 202 | 200 | ||
| 203 | return change; | 201 | return change; |
| 204 | } | 202 | } |
| 205 | 203 | #endif /*CONFIG_SMP*/ | |
| 206 | 204 | ||
| 207 | void __init start_cpu_itimer(void) | 205 | void __init start_cpu_itimer(void) |
| 208 | { | 206 | { |
