[PATCH] RTC: Remove RTC UIP synchronization on Sparc64
authorMatt Mackall <mpm@selenic.com>
Tue, 28 Mar 2006 09:56:01 +0000 (01:56 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 28 Mar 2006 17:16:00 +0000 (09:16 -0800)
Signed-off-by: Matt Mackall <mpm@selenic.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/sparc64/kernel/time.c

index 7d61f1bfd3d33806b2babc5e7065a35542f14c63..e55b5c6ece027e91dfbf9bd9a434b527207fbb58 100644 (file)
@@ -641,23 +641,8 @@ static void __init set_system_time(void)
                mon = MSTK_REG_MONTH(mregs);
                year = MSTK_CVT_YEAR( MSTK_REG_YEAR(mregs) );
        } else {
-               int i;
-
                /* Dallas 12887 RTC chip. */
 
-               /* Stolen from arch/i386/kernel/time.c, see there for
-                * credits and descriptive comments.
-                */
-               for (i = 0; i < 1000000; i++) {
-                       if (CMOS_READ(RTC_FREQ_SELECT) & RTC_UIP)
-                               break;
-                       udelay(10);
-               }
-               for (i = 0; i < 1000000; i++) {
-                       if (!(CMOS_READ(RTC_FREQ_SELECT) & RTC_UIP))
-                               break;
-                       udelay(10);
-               }
                do {
                        sec  = CMOS_READ(RTC_SECONDS);
                        min  = CMOS_READ(RTC_MINUTES);
@@ -666,6 +651,7 @@ static void __init set_system_time(void)
                        mon  = CMOS_READ(RTC_MONTH);
                        year = CMOS_READ(RTC_YEAR);
                } while (sec != CMOS_READ(RTC_SECONDS));
+
                if (!(CMOS_READ(RTC_CONTROL) & RTC_DM_BINARY) || RTC_ALWAYS_BCD) {
                        BCD_TO_BIN(sec);
                        BCD_TO_BIN(min);