summaryrefslogtreecommitdiff
path: root/drivers/rtc/rtc-da9063.c
diff options
context:
space:
mode:
authorAlexandre Belloni <alexandre.belloni@bootlin.com>2021-11-10 00:47:50 +0100
committerAlexandre Belloni <alexandre.belloni@bootlin.com>2021-12-01 00:24:03 +0100
commita478c433d72bf006f36bef68c239c8a68b062e5b (patch)
treebf21a79f66264d51081ef71310c7c1d1c618ee5f /drivers/rtc/rtc-da9063.c
parent1c1b3098ae1e0d9725d0d4d49986e0edebba443a (diff)
rtc: da9063: switch to RTC_FEATURE_UPDATE_INTERRUPT
Stop using uie_unsupported and clear RTC_FEATURE_UPDATE_INTERRUPT instead. Also, let the core know that the alarm will truncate seconds as it only has a minute resolution. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Reviewed-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com> Link: https://lore.kernel.org/r/20211109234750.107115-1-alexandre.belloni@bootlin.com
Diffstat (limited to 'drivers/rtc/rtc-da9063.c')
-rw-r--r--drivers/rtc/rtc-da9063.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/rtc/rtc-da9063.c b/drivers/rtc/rtc-da9063.c
index d4b72a9fa2ba..54a5e244946b 100644
--- a/drivers/rtc/rtc-da9063.c
+++ b/drivers/rtc/rtc-da9063.c
@@ -475,12 +475,14 @@ static int da9063_rtc_probe(struct platform_device *pdev)
da9063_data_to_tm(data, &rtc->alarm_time, rtc);
rtc->rtc_sync = false;
- /*
- * TODO: some models have alarms on a minute boundary but still support
- * real hardware interrupts. Add this once the core supports it.
- */
- if (config->rtc_data_start != RTC_SEC)
- rtc->rtc_dev->uie_unsupported = 1;
+ if (config->rtc_data_start != RTC_SEC) {
+ set_bit(RTC_FEATURE_ALARM_RES_MINUTE, rtc->rtc_dev->features);
+ /*
+ * TODO: some models have alarms on a minute boundary but still
+ * support real hardware interrupts.
+ */
+ clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, rtc->rtc_dev->features);
+ }
irq_alarm = platform_get_irq_byname(pdev, "ALARM");
if (irq_alarm < 0)