From: "Guan Xuetao" <gxt@mprc.pku.edu.cn>
To: "'Thomas Gleixner'" <tglx@linutronix.de>
Cc: <linux-kernel@vger.kernel.org>, <linux-arch@vger.kernel.org>,
"'Arnd Bergmann'" <arnd@arndb.de>, "'Greg KH'" <greg@kroah.com>
Subject: RE: [PATCHv2 09/11] unicore32 core architecture: timer and time handling
Date: Thu, 17 Feb 2011 17:58:43 +0800 [thread overview]
Message-ID: <006a01cbce89$4463e570$cd2bb050$@mprc.pku.edu.cn> (raw)
In-Reply-To: <alpine.LFD.2.00.1102161018370.26192@localhost6.localdomain6>
> -----Original Message-----
> From: Thomas Gleixner [mailto:tglx@linutronix.de]
> Sent: Wednesday, February 16, 2011 5:21 PM
> To: Guan Xuetao
> Cc: linux-kernel@vger.kernel.org; linux-arch@vger.kernel.org; Arnd Bergmann; 'Greg KH'
> Subject: Re: [PATCHv2 09/11] unicore32 core architecture: timer and time handling
>
> On Sun, 13 Feb 2011, Guan Xuetao wrote:
> > +static struct clock_event_device ckevt_puv3_osmr0 = {
> > + .name = "osmr0",
> > + .features = CLOCK_EVT_FEAT_ONESHOT,
> > +#ifdef CONFIG_ARCH_FPGA
> > + .shift = 18, /* correct shift val: 16, but warn_on_slowpath */
> > +#else
> > + .shift = 30,
> > +#endif
>
> Please get rid of this.
>
> > +void __init time_init(void)
> > +{
> > + OST_OIER = 0; /* disable any timer interrupts */
> > + OST_OSSR = 0; /* clear status on all timers */
> > +
> > + ckevt_puv3_osmr0.mult =
> > + div_sc(CLOCK_TICK_RATE, NSEC_PER_SEC, ckevt_puv3_osmr0.shift);
>
> And use clockevents_calc_mult_shift() instead of this.
That's ok.
Please see following patch:
From: GuanXuetao <gxt@mprc.pku.edu.cn>
Date: Thu, 17 Feb 2011 17:50:43 +0800
Subject: [PATCH] unicore32: 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>
---
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 8090d76..8bb4b81 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)
static struct clock_event_device ckevt_puv3_osmr0 = {
.name = "osmr0",
.features = CLOCK_EVT_FEAT_ONESHOT,
-#ifdef CONFIG_ARCH_FPGA
- .shift = 18, /* correct shift val: 16, but warn_on_slowpath */
-#else
- .shift = 30,
-#endif
.rating = 200,
.set_next_event = puv3_osmr0_set_next_event,
.set_mode = puv3_osmr0_set_mode,
@@ -101,8 +96,8 @@ void __init time_init(void)
OST_OIER = 0; /* disable any timer interrupts */
OST_OSSR = 0; /* clear status on all timers */
- ckevt_puv3_osmr0.mult =
- div_sc(CLOCK_TICK_RATE, NSEC_PER_SEC, ckevt_puv3_osmr0.shift);
+ clockevents_calc_mult_shift(&ckevt_puv3_osmr0, CLOCK_TICK_RATE, 5);
+
ckevt_puv3_osmr0.max_delta_ns =
clockevent_delta2ns(0x7fffffff, &ckevt_puv3_osmr0);
ckevt_puv3_osmr0.min_delta_ns =
--
1.6.2.2
>
> Thanks,
>
> tglx
Thanks Thomas.
Guan Xuetao
next prev parent reply other threads:[~2011-02-17 9:59 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-13 6:39 [PATCHv2 09/11] unicore32 core architecture: timer and time handling Guan Xuetao
2011-02-16 9:20 ` Thomas Gleixner
2011-02-17 9:58 ` Guan Xuetao [this message]
2011-02-17 10:47 ` Thomas Gleixner
2011-02-17 11:09 ` Guan Xuetao
2011-02-17 17:31 ` Arnd Bergmann
2011-02-22 14:19 ` Guan Xuetao
2011-02-22 15:21 ` Arnd Bergmann
2011-02-27 4:34 ` Guan Xuetao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='006a01cbce89$4463e570$cd2bb050$@mprc.pku.edu.cn' \
--to=gxt@mprc.pku.edu.cn \
--cc=arnd@arndb.de \
--cc=greg@kroah.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox