From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965620AbdAKKIT (ORCPT ); Wed, 11 Jan 2017 05:08:19 -0500 Received: from mx08-00178001.pphosted.com ([91.207.212.93]:42261 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755588AbdAKKIR (ORCPT ); Wed, 11 Jan 2017 05:08:17 -0500 Subject: Re: [PATCHv3 3/8] rtc: add STM32 RTC driver To: Alexandre Belloni References: <1483623809-29937-1-git-send-email-amelie.delaunay@st.com> <1483623809-29937-4-git-send-email-amelie.delaunay@st.com> <20170111000803.mlie6kizcsj2o7lh@piout.net> CC: Alessandro Zummo , Rob Herring , Mark Rutland , Maxime Coquelin , Alexandre TORGUE , Russell King , "rtc-linux@googlegroups.com" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Gabriel FERNANDEZ From: Amelie DELAUNAY Message-ID: <1feb3a23-7450-2b5c-9c1c-c7ecacd7fa17@st.com> Date: Wed, 11 Jan 2017 11:07:16 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20170111000803.mlie6kizcsj2o7lh@piout.net> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.75.127.50] X-ClientProxiedBy: SFHDAG8NODE3.st.com (10.75.127.24) To SFHDAG3NODE2.st.com (10.75.127.8) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-01-11_09:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Alexandre, On 01/11/2017 01:08 AM, Alexandre Belloni wrote: > Looks good to me, however... > > > On 05/01/2017 at 14:43:24 +0100, Amelie Delaunay wrote : >> +struct stm32_rtc { >> + struct rtc_device *rtc_dev; >> + void __iomem *base; >> + struct clk *ck_rtc; >> + spinlock_t lock; /* Protects registers accesses */ > > This spinlock seems to be useless, the rtc ops_lock is already > protecting everywhere it is taken. > After having a deeper look on ops_lock, it seems this one is sufficient, so I'll remove all spinlock uses in this driver. >> + int irq_alarm; >> +}; >> + > > [...] > >> +static int stm32_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm) >> +{ >> + struct stm32_rtc *rtc = dev_get_drvdata(dev); >> + struct rtc_time *tm = &alrm->time; >> + unsigned long irqflags; >> + unsigned int cr, isr, alrmar; >> + int ret = 0; >> + >> + if (rtc_valid_tm(tm)) { >> + dev_err(dev, "Alarm time not valid.\n"); >> + return -EINVAL; > > This will never happen, tm is already checked multiple times (up to > three) in the core before this function can be called. > You're right. I'll remove all rtc_valid_tm calls. >> + } >> + > > You don't need to resend the whole series, just this patch. I'll take > 2/8 and 3/8, the other ones can go through the stm32 tree. > Thanks for reviewing. I send a v4 for this patch right now.