| .. | .. |
|---|
| 28 | 28 | #define BIT_RTC_CTRL_REG_RTC_READSEL_M BIT(7) |
|---|
| 29 | 29 | #define BIT_RTC_INTERRUPTS_REG_IT_ALARM_M BIT(3) |
|---|
| 30 | 30 | #define RTC_STATUS_MASK 0xFE |
|---|
| 31 | +#define RTC_ALARM_STATUS BIT(6) |
|---|
| 31 | 32 | |
|---|
| 32 | 33 | #define SECONDS_REG_MSK 0x7F |
|---|
| 33 | 34 | #define MINUTES_REG_MAK 0x7F |
|---|
| .. | .. |
|---|
| 248 | 249 | ret = regmap_update_bits(rk808->regmap, rk808_rtc->creg->int_reg, |
|---|
| 249 | 250 | BIT_RTC_INTERRUPTS_REG_IT_ALARM_M, 0); |
|---|
| 250 | 251 | |
|---|
| 252 | + /* |
|---|
| 253 | + * The rtc alarm status(BIT(6)) must be cleared after alarm 1s or |
|---|
| 254 | + * after the alarm is disabled. |
|---|
| 255 | + */ |
|---|
| 256 | + ret = regmap_write(rk808->regmap, rk808_rtc->creg->status_reg, |
|---|
| 257 | + RTC_ALARM_STATUS); |
|---|
| 251 | 258 | return ret; |
|---|
| 252 | 259 | } |
|---|
| 253 | 260 | |
|---|