From patchwork Mon Feb 17 08:40:18 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 3660651 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 8E62D9F38B for ; Mon, 17 Feb 2014 08:42:28 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id B5DC820166 for ; Mon, 17 Feb 2014 08:42:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C188D2015E for ; Mon, 17 Feb 2014 08:42:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752299AbaBQIkq (ORCPT ); Mon, 17 Feb 2014 03:40:46 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:32698 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752189AbaBQIkn (ORCPT ); Mon, 17 Feb 2014 03:40:43 -0500 Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245]) by mailout2.w1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N1400KMZTFNBN50@mailout2.w1.samsung.com>; Mon, 17 Feb 2014 08:40:36 +0000 (GMT) X-AuditID: cbfec7f5-b7fc96d000004885-bd-5301cb08786c Received: from eusync2.samsung.com ( [203.254.199.212]) by eucpsbgm2.samsung.com (EUCPMTA) with SMTP id 7D.5D.18565.80BC1035; Mon, 17 Feb 2014 08:40:40 +0000 (GMT) Received: from AMDC1943.digital.local ([106.116.151.171]) by eusync2.samsung.com (Oracle Communications Messaging Server 7u4-23.01(7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTPA id <0N14007P7TFKT190@eusync2.samsung.com>; Mon, 17 Feb 2014 08:40:40 +0000 (GMT) From: Krzysztof Kozlowski To: Sangbeom Kim , Samuel Ortiz , Lee Jones , linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org Cc: Kyungmin Park , Marek Szyprowski , Bartlomiej Zolnierkiewicz , Tomasz Figa , Yadwinder Singh Brar , Krzysztof Kozlowski , Alessandro Zummo , rtc-linux@googlegroups.com Subject: [PATCH v3 04/13] rtc: s5m: Remove undocumented time init on first boot Date: Mon, 17 Feb 2014 09:40:18 +0100 Message-id: <1392626427-4518-5-git-send-email-k.kozlowski@samsung.com> X-Mailer: git-send-email 1.7.9.5 In-reply-to: <1392626427-4518-1-git-send-email-k.kozlowski@samsung.com> References: <1392626427-4518-1-git-send-email-k.kozlowski@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprCLMWRmVeSWpSXmKPExsVy+t/xK7ocpxmDDfZv5bRYcvEqu8XGGetZ LV6/MLQ42/SG3eL+16OMFpd3zWGzmHF+H5PF2iN32S32d3YwWpzuZrW4uOILk8X6Ga9ZLOZM f8fkwOuxZ+JJNo871/awecw7GejRt2UVo8f0eT+ZPD5vkgtgi+KySUnNySxLLdK3S+DKuPjk OHPBZYGK5z8nsDQwruXtYuTkkBAwkZj+toUVwhaTuHBvPVsXIxeHkMBSRonu4xPZQRJCAn1M Eq2fzUFsNgFjic3Ll4AViQhsZpRY/P0qWDezwAMmienPq0FsYQF/iePLN7OA2CwCqhKPJh9g BLF5Bdwkds29AjSUA2ibgsScSTYgYU4Bd4mnfVNZQcJCQCX7N4ZNYORdwMiwilE0tTS5oDgp PddIrzgxt7g0L10vOT93EyMkJL/uYFx6zOoQowAHoxIPr0E1Y7AQa2JZcWXuIUYJDmYlEV7b dUAh3pTEyqrUovz4otKc1OJDjEwcnFINjNNtTxapzSxOuLlvgdxMqeclCvdbMtcuDN6zXPDm J6Fvdadc3nbMFGkWPllmrCY4t6Csq+zBtml8O2M63Z1bBRU2n759u+O023LuzCuaN/Zq9Nok Hz9xIqd3W+DST8V/bS0mqj8QmfwqdE695pInZs+sVzzeet9RfOL+IuegwKtyTaXnO1QK3iix FGckGmoxFxUnAgDfoMYAJwIAAA== Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00,KHOP_BIG_TO_CC, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This patch removes the code for initializing time if this is first boot. The code for detecting first boot uses undocumented field RTC_TCON in RTC_UDR_CON register. According to S5M8767's datasheet this field is reserved. On S2MPS14 it is not documented at all. On device first boot the registers will be initialized with reset value (2000-01-01 00:00:00). The code might work on S5M8763 but still this does not look like a task for RTC driver. Signed-off-by: Krzysztof Kozlowski Cc: Alessandro Zummo Cc: rtc-linux@googlegroups.com --- drivers/rtc/rtc-s5m.c | 30 ------------------------------ 1 file changed, 30 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index d26e2480f8b3..b1627e9ab8f0 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -502,16 +502,7 @@ static void s5m_rtc_enable_smpl(struct s5m_rtc_info *info, bool enable) static int s5m8767_rtc_init_reg(struct s5m_rtc_info *info) { u8 data[2]; - unsigned int tp_read; int ret; - struct rtc_time tm; - - ret = regmap_read(info->regmap, S5M_RTC_UDR_CON, &tp_read); - if (ret < 0) { - dev_err(info->dev, "%s: fail to read control reg(%d)\n", - __func__, ret); - return ret; - } /* Set RTC control register : Binary mode, 24hour mode */ data[0] = (1 << BCD_EN_SHIFT) | (1 << MODEL24_SHIFT); @@ -525,27 +516,6 @@ static int s5m8767_rtc_init_reg(struct s5m_rtc_info *info) return ret; } - /* In first boot time, Set rtc time to 1/1/2012 00:00:00(SUN) */ - if ((tp_read & RTC_TCON_MASK) == 0) { - dev_dbg(info->dev, "rtc init\n"); - tm.tm_sec = 0; - tm.tm_min = 0; - tm.tm_hour = 0; - tm.tm_wday = 0; - tm.tm_mday = 1; - tm.tm_mon = 0; - tm.tm_year = 112; - tm.tm_yday = 0; - tm.tm_isdst = 0; - ret = s5m_rtc_set_time(info->dev, &tm); - } - - ret = regmap_update_bits(info->regmap, S5M_RTC_UDR_CON, - RTC_TCON_MASK, tp_read | RTC_TCON_MASK); - if (ret < 0) - dev_err(info->dev, "%s: fail to update TCON reg(%d)\n", - __func__, ret); - return ret; }