2010/7/21 Kukjin Kim <kgene.kim@xxxxxxxxxxx>: > From: Taekgyun Ko <taeggyun.ko@xxxxxxxxxxx> > > RTC needs to be initialized when BCD registers have invalid value. Do you mean that the hardware register does not have default value? Any results if no initialized value here? > > Signed-off-by: Taekgyun Ko <taeggyun.ko@xxxxxxxxxxx> > Signed-off-by: Kukjin Kim <kgene.kim@xxxxxxxxxxx> > --- > drivers/rtc/rtc-s3c.c | 14 ++++++++++++-- > 1 files changed, 12 insertions(+), 2 deletions(-) > > diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c > index 2040017..e96e109 100644 > --- a/drivers/rtc/rtc-s3c.c > +++ b/drivers/rtc/rtc-s3c.c > @@ -536,10 +536,20 @@ static int __devinit s3c_rtc_probe(struct platform_device *pdev) > > s3c_rtc_cpu_type = platform_get_device_id(pdev)->driver_data; > > - if (s3c_rtc_cpu_type == TYPE_S3C64XX) > + if (s3c_rtc_cpu_type == TYPE_S3C64XX) { > rtc->max_user_freq = 32768; > - else > + > + /* Check RTC Time */ > + > + for (i = S3C2410_RTCSEC; i <= S3C2410_RTCYEAR; i += 0x4) { > + tmp = readb(s3c_rtc_base + i); > + > + if (((tmp & 0xf) > 0x9) || (((tmp >> 4) & 0xf) > 0x9)) > + writeb(0, s3c_rtc_base + i); > + } > + } else { > rtc->max_user_freq = 128; > + } > > platform_set_drvdata(pdev, rtc); > > -- > 1.6.2.5 > > -- > You received this message because you are subscribed to "rtc-linux". > Membership options at http://groups.google.com/group/rtc-linux . > Please read http://groups.google.com/group/rtc-linux/web/checklist > before submitting a driver. -- *linux-arm-kernel mailing list mail addr:linux-arm-kernel@xxxxxxxxxxxxxxxxxxx you can subscribe by: http://lists.infradead.org/mailman/listinfo/linux-arm-kernel * linux-arm-NUC900 mailing list mail addr:NUC900@xxxxxxxxxxxxxxxx main web: https://groups.google.com/group/NUC900 you can subscribe it by sending me mail: mcuos.com@xxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html