rtc: rx8025: clear RTC_FEATURE_ALARM when alarm are not supported
Clear RTC_FEATURE_ALARM to signal alarms are not supported to the core instead of checking client->irq. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Link: https://lore.kernel.org/r/20211107225458.111068-10-alexandre.belloni@bootlin.com
This commit is contained in:
@@ -315,9 +315,6 @@ static int rx8025_read_alarm(struct device *dev, struct rtc_wkalrm *t)
|
|||||||
u8 ald[2];
|
u8 ald[2];
|
||||||
int ctrl2, err;
|
int ctrl2, err;
|
||||||
|
|
||||||
if (client->irq <= 0)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
err = rx8025_read_regs(client, RX8025_REG_ALDMIN, 2, ald);
|
err = rx8025_read_regs(client, RX8025_REG_ALDMIN, 2, ald);
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
@@ -352,9 +349,6 @@ static int rx8025_set_alarm(struct device *dev, struct rtc_wkalrm *t)
|
|||||||
u8 ald[2];
|
u8 ald[2];
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
if (client->irq <= 0)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
ald[0] = bin2bcd(t->time.tm_min);
|
ald[0] = bin2bcd(t->time.tm_min);
|
||||||
if (rx8025->ctrl1 & RX8025_BIT_CTRL1_1224)
|
if (rx8025->ctrl1 & RX8025_BIT_CTRL1_1224)
|
||||||
ald[1] = bin2bcd(t->time.tm_hour);
|
ald[1] = bin2bcd(t->time.tm_hour);
|
||||||
@@ -559,10 +553,8 @@ static int rx8025_probe(struct i2c_client *client,
|
|||||||
rx8025_handle_irq,
|
rx8025_handle_irq,
|
||||||
IRQF_ONESHOT,
|
IRQF_ONESHOT,
|
||||||
"rx8025", client);
|
"rx8025", client);
|
||||||
if (err) {
|
if (err)
|
||||||
dev_err(&client->dev, "unable to request IRQ, alarms disabled\n");
|
clear_bit(RTC_FEATURE_ALARM, rx8025->rtc->features);
|
||||||
client->irq = 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
rx8025->rtc->max_user_freq = 1;
|
rx8025->rtc->max_user_freq = 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user