* Patch by David Müller, 13 Sep 2003:
  various changes to VCMA9 board specific files

* Add I2C support for MGT5100 / MPC5200
diff --git a/rtc/s3c24x0_rtc.c b/rtc/s3c24x0_rtc.c
index bf8008d..9e2191e 100644
--- a/rtc/s3c24x0_rtc.c
+++ b/rtc/s3c24x0_rtc.c
@@ -80,13 +80,15 @@
 	SetRTC_Access(RTC_ENABLE);
 
 	/* read RTC registers */
-	sec	= rtc->BCDSEC;
-	min	= rtc->BCDMIN;
-	hour	= rtc->BCDHOUR;
-	mday	= rtc->BCDDATE;
-	wday	= rtc->BCDDAY;
-	mon	= rtc->BCDMON;
-	year	= rtc->BCDYEAR;
+	do {
+		sec	= rtc->BCDSEC;
+		min	= rtc->BCDMIN;
+		hour	= rtc->BCDHOUR;
+		mday	= rtc->BCDDATE;
+		wday	= rtc->BCDDAY;
+		mon	= rtc->BCDMON;
+		year	= rtc->BCDYEAR;
+	} while (sec != rtc->BCDSEC);
 
 	/* read ALARM registers */
 	a_sec	= rtc->ALMSEC;
@@ -170,7 +172,7 @@
 	S3C24X0_RTC * const rtc = S3C24X0_GetBase_RTC();
 
 	rtc->RTCCON = (rtc->RTCCON & ~0x06) | 0x08;
-	rtc->RTCCON &= ~0x08;
+	rtc->RTCCON &= ~(0x08|0x01);
 }
 
 /* ------------------------------------------------------------------------- */