m68k/mac: Fix RTC on PMU machines
authorFinn Thain <fthain@telegraphics.com.au>
Wed, 2 Jun 2010 13:58:24 +0000 (15:58 +0200)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 9 Aug 2010 19:14:08 +0000 (21:14 +0200)
Copy RTC response bytes correctly on powerbooks and duos. Thanks to Diego
Cousinet who debugged this and provided me with the fix. Tested on
PowerBook 190 and Duo 280c.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reported-by: Diego Cousinet <diego@pvco.net>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/mac/misc.c

index 0f118ca..e023fc6 100644 (file)
@@ -91,7 +91,7 @@ static void cuda_write_pram(int offset, __u8 data)
 #define cuda_write_pram NULL
 #endif
 
-#if 0 /* def CONFIG_ADB_PMU68K */
+#ifdef CONFIG_ADB_PMU68K
 static long pmu_read_time(void)
 {
        struct adb_request req;
@@ -102,8 +102,8 @@ static long pmu_read_time(void)
        while (!req.complete)
                pmu_poll();
 
-       time = (req.reply[0] << 24) | (req.reply[1] << 16)
-               | (req.reply[2] << 8) | req.reply[3];
+       time = (req.reply[1] << 24) | (req.reply[2] << 16)
+               | (req.reply[3] << 8) | req.reply[4];
        return time - RTC_OFFSET;
 }