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. > + 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). -- Alexandre Belloni, Bootlin Embedded Linux and Kernel engineering https://bootlin.com