Hello Alexandre,

Big thanks for the review!

On Mon, Jan 28, 2019 at 10:20:09PM +0100, Alexandre Belloni wrote:
> Hello,
> 
> On 25/01/2019 13:05:36+0200, Matti Vaittinen wrote:
> > +static const struct rtc_class_ops bd70528_rtc_ops = {
> > +   .read_time      = bd70528_get_time,
> > +   .set_time       = bd70528_set_time,
> > +   .read_alarm     = bd70528_read_alarm,
> > +   .set_alarm      = bd70528_set_alarm,
> 
> You actually need to provide a .alarm_irq_enable callback, else there is
> no way to disable a set alarm.

Glad that you pointed this out. I thought the RTC core would use
set_alarm with enabled in struct rtc_wkalrm being zero for disabling
the alarm. I'll add alarm_irq_enable for disabling alarm at v3.

> > +   rtc = devm_rtc_device_register(&pdev->dev, "bd70528-rtc",
> > +                                  &bd70528_rtc_ops, THIS_MODULE);
> > +   if (IS_ERR(rtc)) {
> > +           dev_err(&pdev->dev, "Registering RTC failed\n");
> > +           return PTR_ERR(rtc);
> > +   }
> 
> Please use devm_rtc_allocate_device() and set rtc->range_min and
> rtc->range_max before registering with rtc_register_device() (which can
> be done after trying to request the irq).

Right. I should've noted that devm_rtc_device_register was marked
deprecated. I'll fix this too at v3.

Br,
        Matti Vaittinen

Reply via email to