]> git.baikalelectronics.ru Git - kernel.git/commit
rtc/tpo: Driver to support rtc and wakeup on PowerNV platform
authorNeelesh Gupta <neelegup@linux.vnet.ibm.com>
Tue, 14 Oct 2014 08:38:36 +0000 (14:08 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 17 Nov 2014 07:04:01 +0000 (18:04 +1100)
commit8f78569a49b01bade94ad260fbda59e1db253315
tree20c1c8e82cecb391dafadc01eb57c7a6bd58b25a
parenteb4cba0843148a21c6756e59fb247769ff82e6ab
rtc/tpo: Driver to support rtc and wakeup on PowerNV platform

The patch implements the OPAL rtc driver that binds with the rtc
driver subsystem. The driver uses the platform device infrastructure
to probe the rtc device and register it to rtc class framework. The
'wakeup' is supported depending upon the property 'has-tpo' present
in the OF node. It provides a way to load the generic rtc driver in
in the absence of an OPAL driver.

The patch also moves the existing OPAL rtc get/set time interfaces to the
new driver and exposes the necessary OPAL calls using EXPORT_SYMBOL_GPL.

Test results:
-------------
Host:
[root@tul169p1 ~]# ls -l /sys/class/rtc/
total 0
lrwxrwxrwx 1 root root 0 Oct 14 03:07 rtc0 -> ../../devices/opal-rtc/rtc/rtc0
[root@tul169p1 ~]# cat /sys/devices/opal-rtc/rtc/rtc0/time
08:10:07
[root@tul169p1 ~]# echo `date '+%s' -d '+ 2 minutes'` > /sys/class/rtc/rtc0/wakealarm
[root@tul169p1 ~]# cat /sys/class/rtc/rtc0/wakealarm
1413274345
[root@tul169p1 ~]#

FSP:
$ smgr mfgState
standby
$ rtim timeofday

System time is valid: 2014/10/14 08:12:04.225115

$ smgr mfgState
ipling
$

CC: devicetree@vger.kernel.org
CC: tglx@linutronix.de
CC: rtc-linux@googlegroups.com
CC: a.zummo@towertech.it
Signed-off-by: Neelesh Gupta <neelegup@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Documentation/devicetree/bindings/rtc/rtc-opal.txt [new file with mode: 0644]
arch/powerpc/include/asm/opal.h
arch/powerpc/kernel/time.c
arch/powerpc/platforms/powernv/opal-async.c
arch/powerpc/platforms/powernv/opal-rtc.c
arch/powerpc/platforms/powernv/opal-wrappers.S
arch/powerpc/platforms/powernv/opal.c
arch/powerpc/platforms/powernv/setup.c
drivers/rtc/Kconfig
drivers/rtc/Makefile
drivers/rtc/rtc-opal.c [new file with mode: 0644]