diff options
author | GuanXuetao <gxt@mprc.pku.edu.cn> | 2011-02-17 04:50:43 -0500 |
---|---|---|
committer | GuanXuetao <gxt@mprc.pku.edu.cn> | 2011-03-16 21:19:16 -0400 |
commit | a913a8234bb812d21bb0f75c2458f9eb941ddf91 (patch) | |
tree | fc030a37abde57dd2b87bf399b51c99546329a53 /arch/unicore32/kernel | |
parent | b31d82737d068bf7ff8ed4592914c8fd7fdb51f0 (diff) |
unicore32 time.c: change calculate method for clock_event_device
apply clockevents_calc_mult_shift() to get rid of
shift assignment and mult calculation for osmr0
-- by advice with Thomas Gleixner
Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Diffstat (limited to 'arch/unicore32/kernel')
-rw-r--r-- | arch/unicore32/kernel/time.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/unicore32/kernel/time.c b/arch/unicore32/kernel/time.c index 8090d763a606..8bb4b815bce9 100644 --- a/arch/unicore32/kernel/time.c +++ b/arch/unicore32/kernel/time.c | |||
@@ -66,11 +66,6 @@ puv3_osmr0_set_mode(enum clock_event_mode mode, struct clock_event_device *c) | |||
66 | static struct clock_event_device ckevt_puv3_osmr0 = { | 66 | static struct clock_event_device ckevt_puv3_osmr0 = { |
67 | .name = "osmr0", | 67 | .name = "osmr0", |
68 | .features = CLOCK_EVT_FEAT_ONESHOT, | 68 | .features = CLOCK_EVT_FEAT_ONESHOT, |
69 | #ifdef CONFIG_ARCH_FPGA | ||
70 | .shift = 18, /* correct shift val: 16, but warn_on_slowpath */ | ||
71 | #else | ||
72 | .shift = 30, | ||
73 | #endif | ||
74 | .rating = 200, | 69 | .rating = 200, |
75 | .set_next_event = puv3_osmr0_set_next_event, | 70 | .set_next_event = puv3_osmr0_set_next_event, |
76 | .set_mode = puv3_osmr0_set_mode, | 71 | .set_mode = puv3_osmr0_set_mode, |
@@ -101,8 +96,8 @@ void __init time_init(void) | |||
101 | OST_OIER = 0; /* disable any timer interrupts */ | 96 | OST_OIER = 0; /* disable any timer interrupts */ |
102 | OST_OSSR = 0; /* clear status on all timers */ | 97 | OST_OSSR = 0; /* clear status on all timers */ |
103 | 98 | ||
104 | ckevt_puv3_osmr0.mult = | 99 | clockevents_calc_mult_shift(&ckevt_puv3_osmr0, CLOCK_TICK_RATE, 5); |
105 | div_sc(CLOCK_TICK_RATE, NSEC_PER_SEC, ckevt_puv3_osmr0.shift); | 100 | |
106 | ckevt_puv3_osmr0.max_delta_ns = | 101 | ckevt_puv3_osmr0.max_delta_ns = |
107 | clockevent_delta2ns(0x7fffffff, &ckevt_puv3_osmr0); | 102 | clockevent_delta2ns(0x7fffffff, &ckevt_puv3_osmr0); |
108 | ckevt_puv3_osmr0.min_delta_ns = | 103 | ckevt_puv3_osmr0.min_delta_ns = |