aboutsummaryrefslogtreecommitdiffstats
path: root/arch/unicore32/kernel
diff options
context:
space:
mode:
authorGuanXuetao <gxt@mprc.pku.edu.cn>2011-02-17 04:50:43 -0500
committerGuanXuetao <gxt@mprc.pku.edu.cn>2011-03-16 21:19:16 -0400
commita913a8234bb812d21bb0f75c2458f9eb941ddf91 (patch)
treefc030a37abde57dd2b87bf399b51c99546329a53 /arch/unicore32/kernel
parentb31d82737d068bf7ff8ed4592914c8fd7fdb51f0 (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.c9
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)
66static struct clock_event_device ckevt_puv3_osmr0 = { 66static 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 =