[openfirmware] [commit] r2347 - cpu/arm/mmp2

repository service svn at openfirmware.info
Tue Jul 12 11:26:19 CEST 2011


Author: wmb
Date: Tue Jul 12 11:26:19 2011
New Revision: 2347
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2347

Log:
Checked in some demonstration/test code for the Marvel MMP2 internal RTC.

Added:
   cpu/arm/mmp2/rtc.fth

Added: cpu/arm/mmp2/rtc.fth
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ cpu/arm/mmp2/rtc.fth	Tue Jul 12 11:26:19 2011	(r2347)
@@ -0,0 +1,26 @@
+purpose: Driver for MMP2 internal RTC
+
+\ This code was written as a test/demonstration of using
+\ the MMP2 internal RTC to generate alarm interrupts.
+\ It is not currently used by anything, and should it
+\ ever be needed, it should be put in a device node.
+
+: int5-mask!  ( value -- )  h# d428.216c l!  ;
+: int5-mask@  ( -- value )  h# d428.216c l@  ;
+: int5-status@  ( -- value )  h# d428.2154 l@  ;
+: enable-rtc  ( -- )  h# 81 h# d401.5000 l!  ;
+: soc-rtc@  ( offset -- value )  h# d401.0000 + l@  ;
+: soc-rtc!  ( value offset -- value )  h# d401.0000 + l!  ;
+: take-alarm  ( -- )
+   ." Alarm fired" cr
+    0 8 soc-rtc!
+   int5-mask@ 1 or int5-mask!  \ Mask alarm
+;
+: alarm-in-5  ( -- )
+   enable-rtc                          \ Turn on clocks
+   int5-mask@ 1 invert and int5-mask!  \ Unmask alarm
+   0 soc-rtc@  d# 5 +  4 soc-rtc!      \ Set alarm for 5 seconds from now
+   7 8 soc-rtc!                        \ Ack old interrupts and enable new ones
+   ['] take-alarm 5 interrupt-handler!
+   5 enable-interrupt
+;



More information about the openfirmware mailing list