diff options
Diffstat (limited to 'drivers/rtc/rtc-pcf85363.c')
| -rw-r--r-- | drivers/rtc/rtc-pcf85363.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/rtc/rtc-pcf85363.c b/drivers/rtc/rtc-pcf85363.c index 3450d615974d..bb3e9ba75f6c 100644 --- a/drivers/rtc/rtc-pcf85363.c +++ b/drivers/rtc/rtc-pcf85363.c @@ -285,11 +285,6 @@ static irqreturn_t pcf85363_rtc_handle_irq(int irq, void *dev_id) static const struct rtc_class_ops rtc_ops = { .read_time = pcf85363_rtc_read_time, .set_time = pcf85363_rtc_set_time, -}; - -static const struct rtc_class_ops rtc_ops_alarm = { - .read_time = pcf85363_rtc_read_time, - .set_time = pcf85363_rtc_set_time, .read_alarm = pcf85363_rtc_read_alarm, .set_alarm = pcf85363_rtc_set_alarm, .alarm_irq_enable = pcf85363_rtc_alarm_irq_enable, @@ -403,6 +398,7 @@ static int pcf85363_probe(struct i2c_client *client, pcf85363->rtc->ops = &rtc_ops; pcf85363->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; pcf85363->rtc->range_max = RTC_TIMESTAMP_END_2099; + clear_bit(RTC_FEATURE_ALARM, pcf85363->rtc->features); if (client->irq > 0) { regmap_write(pcf85363->regmap, CTRL_FLAGS, 0); @@ -415,20 +411,20 @@ static int pcf85363_probe(struct i2c_client *client, if (ret) dev_warn(&client->dev, "unable to request IRQ, alarms disabled\n"); else - pcf85363->rtc->ops = &rtc_ops_alarm; + set_bit(RTC_FEATURE_ALARM, pcf85363->rtc->features); } - ret = rtc_register_device(pcf85363->rtc); + ret = devm_rtc_register_device(pcf85363->rtc); for (i = 0; i < config->num_nvram; i++) { nvmem_cfg[i].priv = pcf85363; - rtc_nvmem_register(pcf85363->rtc, &nvmem_cfg[i]); + devm_rtc_nvmem_register(pcf85363->rtc, &nvmem_cfg[i]); } return ret; } -static const struct of_device_id dev_ids[] = { +static const __maybe_unused struct of_device_id dev_ids[] = { { .compatible = "nxp,pcf85263", .data = &pcf_85263_config }, { .compatible = "nxp,pcf85363", .data = &pcf_85363_config }, { /* sentinel */ } |