summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/rtc/rtc-ds3232.c20
1 files changed, 1 insertions, 19 deletions
diff --git a/drivers/rtc/rtc-ds3232.c b/drivers/rtc/rtc-ds3232.c
index 321b8670ff7a..f0ffd3f5d8f5 100644
--- a/drivers/rtc/rtc-ds3232.c
+++ b/drivers/rtc/rtc-ds3232.c
@@ -279,32 +279,14 @@ static int ds3232_update_alarm(struct device *dev, unsigned int enabled)
struct ds3232 *ds3232 = dev_get_drvdata(dev);
int control;
int ret;
- u8 buf[4];
mutex_lock(&ds3232->mutex);
- ret = regmap_bulk_read(ds3232->regmap, DS3232_REG_ALARM1, buf, 4);
- if (ret)
- goto unlock;
-
- buf[0] = bcd2bin(buf[0]) < 0 || (ds3232->rtc->irq_data & RTC_UF) ?
- 0x80 : buf[0];
- buf[1] = bcd2bin(buf[1]) < 0 || (ds3232->rtc->irq_data & RTC_UF) ?
- 0x80 : buf[1];
- buf[2] = bcd2bin(buf[2]) < 0 || (ds3232->rtc->irq_data & RTC_UF) ?
- 0x80 : buf[2];
- buf[3] = bcd2bin(buf[3]) < 0 || (ds3232->rtc->irq_data & RTC_UF) ?
- 0x80 : buf[3];
-
- ret = regmap_bulk_write(ds3232->regmap, DS3232_REG_ALARM1, buf, 4);
- if (ret)
- goto unlock;
-
ret = regmap_read(ds3232->regmap, DS3232_REG_CR, &control);
if (ret)
goto unlock;
- if (enabled || (ds3232->rtc->irq_data & RTC_UF))
+ if (enabled)
/* enable alarm1 interrupt */
control |= DS3232_REG_CR_A1IE;
else