Right, i'll rewrite the commit message, and move the check back here:)>+ /* Don't set an alarm in the past. */It's probably worth noting in the commit message that you're also fixing
>+ if ((u32)alarm_time <= current_time)
>+ return -ETIME;
>+
> if (!alrm->enabled) {
> /*
> * If the alarm is being disabled, send an alarm
>@@ -196,11 +200,7 @@ static int cros_ec_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
> alarm_offset = EC_RTC_ALARM_CLEAR;
> cros_ec_rtc->saved_alarm = (u32)alarm_time;
> } else {
>- /* Don't set an alarm in the past. */
>- if ((u32)alarm_time < current_time)
the case where 'alarm_time == current_time'; in the current driver
source, it*looks* like you're setting a 0-second alarm. But in fact, 0
means EC_RTC_ALARM_CLEAR, which would disable the alarm. So you are
(correctly) returning -ETIME in that case.
Brian