* [RFC][PATCH 12/14] Convert parisc to read/update_persistent_clock
[not found] ` <1261541567.3508.73.camel@localhost.localdomain>
@ 2009-12-23 4:14 ` john stultz
0 siblings, 0 replies; only message in thread
From: john stultz @ 2009-12-23 4:14 UTC (permalink / raw)
To: lkml; +Cc: Kyle McMartin, Helge Deller, James E.J. Bottomley, linux-parisc
This patch converts the parisc architecture to use the generic
read_persistent_clock and update_persistent_clock interfaces, reducing
the amount of arch specific code we have to maintain, and allowing for
further cleanups in the future.
I have not built or tested this patch, so help from arch maintainers
would be appreciated.
Signed-off-by: John Stultz <johnstul@us.ibm.com>
---
time.c | 29 +++++++++++++----------------
1 file changed, 13 insertions(+), 16 deletions(-)
Index: gettimeoffset/arch/parisc/kernel/time.c
===================================================================
--- gettimeoffset.orig/arch/parisc/kernel/time.c 2009-12-22 18:50:55.000000000 -0800
+++ gettimeoffset/arch/parisc/kernel/time.c 2009-12-22 18:51:06.000000000 -0800
@@ -250,9 +250,21 @@ static int __init rtc_init(void)
}
module_init(rtc_init);
-void __init time_init(void)
+void read_persistent_clock(struct timespec *ts)
{
static struct pdc_tod tod_data;
+ if (pdc_tod_read(&tod_data) == 0) {
+ ts->tv_sec = tod_data.tod_sec;
+ ts->tv_nsec = tod_data.tod_usec * 1000;
+ } else {
+ printk(KERN_ERR "Error reading tod clock\n");
+ ts->tv_sec = 0;
+ ts->tv_nsec = 0;
+ }
+}
+
+void __init time_init(void)
+{
unsigned long current_cr16_khz;
clocktick = (100 * PAGE0->mem_10msec) / HZ;
@@ -264,19 +276,4 @@ void __init time_init(void)
clocksource_cr16.mult = clocksource_khz2mult(current_cr16_khz,
clocksource_cr16.shift);
clocksource_register(&clocksource_cr16);
-
- if (pdc_tod_read(&tod_data) == 0) {
- unsigned long flags;
^ permalink raw reply [flat|nested] only message in thread