rtc: opal: Implement rtc_class_ops.alarm_irq_enable callback
authorVaibhav Jain <vaibhav@linux.vnet.ibm.com>
Wed, 31 May 2017 13:09:01 +0000 (18:39 +0530)
committerAlexandre Belloni <alexandre.belloni@free-electrons.com>
Sat, 24 Jun 2017 05:48:30 +0000 (07:48 +0200)
commit0ec7769a98b00866e37740328d65cba6594d178d
tree9be00963531c1c085cc13100a2607739da61cca0
parent5c82a6ae0242416cfead597bb2b42aa3481a0ba7
rtc: opal: Implement rtc_class_ops.alarm_irq_enable callback

Provide an implementation of the callback
rtc_class_ops.alarm_irq_enable for rtc-opal driver. This callback is
called when the wake alarm is disabled via the command:

'echo 0 > /sys/class/rtc/rtc0/wakealarm'

Without this the Timed-Power-On(TPO) config remains set even when its
disabled by the above command and FSP will still force machine
boot at previously configured alarm time.

The callback is implemented as function opal_tpo_alarm_irq_enable()
which calls opal_set_tpo_time() with alarm.enabled == 0. A branch is
added to opal_set_tpo_time() to handle this case by passing y_m_d ==
h_m_s_ms == 0 to opal as arguments for opal_tpo_write() call.

Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
drivers/rtc/rtc-opal.c