From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030758AbXDKDyI (ORCPT ); Tue, 10 Apr 2007 23:54:08 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1030770AbXDKDyI (ORCPT ); Tue, 10 Apr 2007 23:54:08 -0400 Received: from mail2.asahi-net.or.jp ([202.224.39.198]:38375 "EHLO mail.asahi-net.or.jp" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1030758AbXDKDyG (ORCPT ); Tue, 10 Apr 2007 23:54:06 -0400 X-Greylist: delayed 1094 seconds by postgrey-1.27 at vger.kernel.org; Tue, 10 Apr 2007 23:54:06 EDT Date: Wed, 11 Apr 2007 12:35:33 +0900 Message-ID: From: Yoshinori Sato To: john stultz Cc: Andrew Morton , lkml Subject: Re: [PATCH] h8300 trivial conversion to GENERIC_TIME In-Reply-To: <1176247500.15198.72.camel@localhost> References: <1176247500.15198.72.camel@localhost> User-Agent: Wanderlust/2.15.5 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (=?ISO-8859-4?Q?Shij=F2?=) APEL/10.6 Emacs/22.0.93 (i486-pc-linux-gnu) MULE/5.0 (SAKAKI) Organization: SIOS Technology, Inc. MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org At Tue, 10 Apr 2007 16:25:00 -0700, john stultz wrote: > > Here is a trivial conversion of the h8300 arch to the GENERIC_TIME > infrastructure (h8300 does not have better then jiffies resolution, so > there are no clocksources to add). I have not tested this at all, but it > seems pretty straight forward > > I'd appreciate any comments or feedback! > > thanks > -john > There will not be a problem. Because it is a place working now, I correct it if there was a problem. > > Signed-off-by: John Stultz Signed-off-by: Yoshinori Sato > > diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig > index 1734d96..86f6ca3 100644 > --- a/arch/h8300/Kconfig > +++ b/arch/h8300/Kconfig > @@ -53,6 +53,10 @@ config GENERIC_CALIBRATE_DELAY > bool > default y > > +config GENERIC_TIME > + bool > + default y > + > config TIME_LOW_RES > bool > default y > diff --git a/arch/h8300/kernel/time.c b/arch/h8300/kernel/time.c > index d1ef615..91d3b56 100644 > --- a/arch/h8300/kernel/time.c > +++ b/arch/h8300/kernel/time.c > @@ -66,55 +66,3 @@ void time_init(void) > > platform_timer_setup(timer_interrupt); > } > - > -/* > - * This version of gettimeofday has near microsecond resolution. > - */ > -void do_gettimeofday(struct timeval *tv) > -{ > - unsigned long flags; > - unsigned long usec, sec; > - > - read_lock_irqsave(&xtime_lock, flags); > - usec = 0; > - sec = xtime.tv_sec; > - usec += (xtime.tv_nsec / 1000); > - read_unlock_irqrestore(&xtime_lock, flags); > - > - while (usec >= 1000000) { > - usec -= 1000000; > - sec++; > - } > - > - tv->tv_sec = sec; > - tv->tv_usec = usec; > -} > - > -EXPORT_SYMBOL(do_gettimeofday); > - > -int do_settimeofday(struct timespec *tv) > -{ > - if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC) > - return -EINVAL; > - > - write_lock_irq(&xtime_lock); > - /* This is revolting. We need to set the xtime.tv_usec > - * correctly. However, the value in this location is > - * is value at the last tick. > - * Discover what correction gettimeofday > - * would have done, and then undo it! > - */ > - while (tv->tv_nsec < 0) { > - tv->tv_nsec += NSEC_PER_SEC; > - tv->tv_sec--; > - } > - > - xtime.tv_sec = tv->tv_sec; > - xtime.tv_nsec = tv->tv_nsec; > - ntp_clear(); > - write_sequnlock_irq(&xtime_lock); > - clock_was_set(); > - return 0; > -} > - > -EXPORT_SYMBOL(do_settimeofday); >