From patchwork Tue Jul 27 12:59:13 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kukjin Kim X-Patchwork-Id: 60004 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail-ww0-f56.google.com (mail-ww0-f56.google.com [74.125.82.56]) by ozlabs.org (Postfix) with ESMTP id 88D49B70A8 for ; Tue, 27 Jul 2010 23:07:41 +1000 (EST) Received: by wwb24 with SMTP id 24sf351025wwb.11 for ; Tue, 27 Jul 2010 06:07:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=beta; h=domainkey-signature:received:mime-version:x-beenthere:received :received:received:received:received-spf:received:received:from:to :cc:subject:date:message-id:x-mailer:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:list-post:list-help:list-archive:sender:list-subscribe :list-unsubscribe:content-type; bh=KSjsK3YtGI9tiQJAKzhgyWdbMxraxZQqkgKPFqiLFAk=; b=Rq5OuOhoodZEh6CaQZ1m46jXcsEyhYN74f773zZAJqcIkRp9/FgnKrdXvrFi7nJVQ+ 1GuMD5Upg0M0RIJkfDlASzQQ3q4PV4ZqPskFozNVrdJGfpjEjHl3lmbXWPf9n+1x5jO6 UwPWrjNHx/tKhEM95JaG8NHTPTxcWuaJkGyWM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlegroups.com; s=beta; h=mime-version:x-beenthere:received-spf:from:to:cc:subject:date :message-id:x-mailer:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:list-post:list-help:list-archive:sender:list-subscribe :list-unsubscribe:content-type; b=S0LDK08zk3WGyfuO4b8gXQuJDIBchwiYe34CjtRB2bdeindoAcykBjnxNvbVEaaerK M1chDlGP8OGix+BNww79SlJmsuU2Wt7lcFBTUoaRO3psgqcxs4zhKuOD8ukL//wrydxp +U8oiItWFnwEYOERUVpPbdRZdmYR6nywv5VTs= Received: by 10.216.144.38 with SMTP id m38mr964449wej.14.1280236058967; Tue, 27 Jul 2010 06:07:38 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: rtc-linux@googlegroups.com Received: by 10.14.10.228 with SMTP id 76ls90481eev.3.p; Tue, 27 Jul 2010 06:07:37 -0700 (PDT) Received: by 10.14.119.142 with SMTP id n14mr169002eeh.27.1280236056094; Tue, 27 Jul 2010 06:07:36 -0700 (PDT) Received: by 10.14.119.142 with SMTP id n14mr168997eeh.27.1280236055387; Tue, 27 Jul 2010 06:07:35 -0700 (PDT) Received: from ganesha.gnumonks.org (ganesha.gnumonks.org [213.95.27.120]) by gmr-mx.google.com with ESMTP id r57si5612693eeh.1.2010.07.27.06.07.35; Tue, 27 Jul 2010 06:07:35 -0700 (PDT) Received-SPF: neutral (google.com: 213.95.27.120 is neither permitted nor denied by best guess record for domain of kgene.kim@samsung.com) client-ip=213.95.27.120; Received: from uucp by ganesha.gnumonks.org with local-bsmtp (Exim 4.69) (envelope-from ) id 1OdjsZ-0008IR-ON; Tue, 27 Jul 2010 15:07:31 +0200 Received: from [12.23.102.184] (helo=localhost.localdomain) by jackpot.kr.gnumonks.org with esmtp (Exim 4.69) (envelope-from ) id 1Odj8X-00085P-GC; Tue, 27 Jul 2010 21:19:57 +0900 From: Kukjin Kim To: linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, rtc-linux@googlegroups.com Cc: ben-linux@fluff.org, p_gortmaker@yahoo.com, a.zummo@towertech.it, Taekgyun Ko , Kukjin Kim Subject: [rtc-linux] [PATCH v2 3/3] rtc: rtc-s3c: Add BCD register initialization codes Date: Tue, 27 Jul 2010 21:59:13 +0900 Message-Id: <1280235553-27369-1-git-send-email-kgene.kim@samsung.com> X-Mailer: git-send-email 1.6.2.5 X-Original-Sender: kgene.kim@samsung.com X-Original-Authentication-Results: gmr-mx.google.com; spf=neutral (google.com: 213.95.27.120 is neither permitted nor denied by best guess record for domain of kgene.kim@samsung.com) smtp.mail=kgene.kim@samsung.com Reply-To: rtc-linux@googlegroups.com Precedence: list Mailing-list: list rtc-linux@googlegroups.com; contact rtc-linux+owners@googlegroups.com List-ID: List-Post: , List-Help: , List-Archive: Sender: rtc-linux@googlegroups.com List-Subscribe: , List-Unsubscribe: , From: Taekgyun Ko RTC needs to be initialized when BCD registers have invalid value. Signed-off-by: Taekgyun Ko Signed-off-by: Kukjin Kim --- Changes since v1: - Removed unnecessary parens around > operations as per Sergei Shtylyov 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);