From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754336AbcGEIt2 (ORCPT ); Tue, 5 Jul 2016 04:49:28 -0400 Received: from mailout2.samsung.com ([203.254.224.25]:34950 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752161AbcGEIr0 (ORCPT ); Tue, 5 Jul 2016 04:47:26 -0400 X-AuditID: cbfee68e-f79266d000001428-22-577b741b5b13 Message-id: <577B73FE.1020509@samsung.com> Date: Tue, 05 Jul 2016 14:16:54 +0530 From: Alim Akhtar User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-version: 1.0 To: Krzysztof Kozlowski , rtc-linux@googlegroups.com, linux-kernel@vger.kernel.org Cc: alexandre.belloni@free-electrons.com, javier@osg.samsung.com, pankaj.dubey@samsung.com Subject: Re: [RFC PATCH 1/2] rtc: s3c: Remove unnecessary call to disable already disabled clock References: <1467630195-6929-1-git-send-email-alim.akhtar@samsung.com> <577B5F28.1010905@samsung.com> In-reply-to: <577B5F28.1010905@samsung.com> Content-type: text/plain; charset=windows-1252; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJIsWRmVeSWpSXmKPExsWyRsSkTVe6pDrc4EeTmkXHtcVMFm/ermGy eP3C0OLyrjlsFou2fmG32N/ZwejA5vFk00VGjz0TT7J5bOm/y+7Rt2UVo8fnTXIBrFFcNimp OZllqUX6dglcGTe39DAV7OCuePdmIVMD4xLOLkZODgkBE4mNy+4wQ9hiEhfurWfrYuTiEBJY wSgx7+V2pi5GDrCiTQ94IeJLGSW2dl1nhXAeMEpMvnuVDaSbV0BL4kDLOkaQBhYBVYnXd8JA wmwC2hJ3p28BmyMqECHx+IIQRLWgxI/J91hAwiICuRJvPxiAhJkFYiQubVgDdo6wQJLE4S23 WEBsIYF0ifNX97KBlHMCTew5rw9Rbiux4P06FghbXmLzmrfMIIdJCBxjl1g8aRrYYSwCAhLf Jh9igfhEVmLTAahvJSUOrrjBMoFRbBaSg2YhGTsLydgFjMyrGEVTC5ILipPSi4z0ihNzi0vz 0vWS83M3MQJj7PS/Z307GG8esD7EKMDBqMTD6xBWHS7EmlhWXJl7iNEU6IqJzFKiyfnASM4r iTc0NjOyMDUxNTYytzRTEudNkPoZDPRjYklqdmpqQWpRfFFpTmrxIUYmDk6pBkbJKZNnsd18 88GoXVHL23y/R/9Epw8hVsFez6zKzy56pLv6cfAUSY3lp3njOd62VjIFttRJFnxY3SlnndK5 0vrOzNfXeJc/fNqjnHLGI6L64Q5/zcKPonwnO5rud51mnXZf7aHMs5pFV0u6p/5h6ex+n/zk SzLPDEcmW6kYnX8TxSZMYUr8UaHEUpyRaKjFXFScCADPG7xZrAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrGIsWRmVeSWpSXmKPExsVy+t9jAV3pkupwg/ufFS06ri1msnjzdg2T xesXhhaXd81hs1i09Qu7xf7ODkYHNo8nmy4yeuyZeJLNY0v/XXaPvi2rGD0+b5ILYI1qYLTJ SE1MSS1SSM1Lzk/JzEu3VfIOjneONzUzMNQ1tLQwV1LIS8xNtVVy8QnQdcvMAbpASaEsMacU KBSQWFyspG+HaUJoiJuuBUxjhK5vSBBcj5EBGkhYx5hxc0sPU8EO7op3bxYyNTAu4exi5OCQ EDCR2PSAt4uRE8gUk7hwbz1bFyMXh5DAUkaJrV3XWSGcB4wSk+9eZQOp4hXQkjjQso4RpJlF QFXi9Z0wkDCbgLbE3elbmEDCogIREo8vCEFUC0r8mHyPBSQsIpAr8faDAUiYWSBG4tKGNcwg trBAksThLbdYQGwhgXSJ81f3soGUcwJN7DmvD1FuK7Hg/ToWCFteYvOat8wTGAVmIVkwC0nZ LCRlCxiZVzFKpBYkFxQnpeca5qWW6xUn5haX5qXrJefnbmIEx/EzqR2MB3e5H2IU4GBU4uEt mF8VLsSaWFZcmXuIUYKDWUmEly+/OlyINyWxsiq1KD++qDQntfgQoykwACYyS4km5wNTTF5J vKGxiZmRpZGZhZGJubmSOO/j/+vCgD5KLEnNTk0tSC2C6WPi4JRqYHRquNmUt/3Tk/qnHd/Z Jop82vWm64rxkaqM3GzOaTP6njFEX7yz+fBCqwC2aK2nTlvjDA3NHh10Eb21PrWb+5TRa5mz dUrdZ1hz5IKtXs+bInPRf9/Kme6itQ9+z1Uw2bZt45EzplaefFIM+vqe/uqxHaV6hhoxQjcq Xs4ScmAtvLTAr9wrQYmlOCPRUIu5qDgRAL0a3fL5AgAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Krzsztof, On 07/05/2016 12:48 PM, Krzysztof Kozlowski wrote: > On 07/04/2016 01:03 PM, Alim Akhtar wrote: >> At the end of s3c_rtc_probe(), s3c_rtc_disable_clk() being called with rtc >> clock already disabled, which looks extra and unnecessary call. >> Lets clean it up. > > Does not look right. Till that place, the clocks are enabled. Then > s3c_rtc_setaie() is called which expects that clocks are disabled... > otherwise counters get mixed. > The clock is always disabled when it reach s3c_rtc_setfreq() in probe(), because s3c_rtc_gettime() will always disable the clock. As far as s3c_rtc_setaie() is concern, it enables clock while entering and disables it while leaving the function. And in s3c_rtc_{enable,disable}_clk() there is check info->clk_disabled flag which will make sure clock balancing. > So overall this looks like wrong approach unless I am missing something? > > Best regards, > Krzysztof > >> >> Signed-off-by: Alim Akhtar >> --- >> drivers/rtc/rtc-s3c.c | 2 -- >> 1 file changed, 2 deletions(-) >> >> diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c >> index d01ad7e..b083840 100644 >> --- a/drivers/rtc/rtc-s3c.c >> +++ b/drivers/rtc/rtc-s3c.c >> @@ -577,8 +577,6 @@ static int s3c_rtc_probe(struct platform_device *pdev) >> >> s3c_rtc_setfreq(info, 1); >> >> - s3c_rtc_disable_clk(info); >> - >> return 0; >> >> err_nortc: > >