Author: wmb Date: Fri Jul 1 20:45:24 2011 New Revision: 2323 URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2323
Log: OLPC XO-1.75 - use the EC for rebooting instead of the watchdog timer. That lets the EC clean up its state too, which helps with the SPI command protocol synchronization.
Modified: cpu/arm/mmp2/watchdog.fth cpu/arm/olpc/1.75/devices.fth
Modified: cpu/arm/mmp2/watchdog.fth ============================================================================== --- cpu/arm/mmp2/watchdog.fth Thu Jun 30 10:34:11 2011 (r2322) +++ cpu/arm/mmp2/watchdog.fth Fri Jul 1 20:45:24 2011 (r2323) @@ -14,18 +14,13 @@ (wdt!) ; : wdt@ ( offset -- value ) wdt-pa + l@ ; -: (reset-all) ( -- ) +: wdt-reset ( -- ) enable-wdt-clock 2 h# 68 wdt! \ set match register 3 h# 64 wdt! \ match enable: just interrupt, no reset yet 1 h# 98 wdt! \ Reset counter begin again ; -' (reset-all) to reset-all - -stand-init: - ['] reset-all to bye -;
0 [if] : test-wdt ( -- )
Modified: cpu/arm/olpc/1.75/devices.fth ============================================================================== --- cpu/arm/olpc/1.75/devices.fth Thu Jun 30 10:34:11 2011 (r2322) +++ cpu/arm/olpc/1.75/devices.fth Fri Jul 1 20:45:24 2011 (r2323) @@ -104,13 +104,6 @@ fload ${BP}/cpu/arm/mmp2/irq.fth
fload ${BP}/cpu/arm/mmp2/watchdog.fth \ reset-all using watchdog timer -: olpc-reset-all ( -- ) - " screen" " dcon-off" ['] execute-device-method catch if - 2drop 2drop - then - (reset-all) -; -' olpc-reset-all to reset-all
0 0 " d4018000" " /" begin-package \ UART3 fload ${BP}/cpu/arm/mmp2/uart.fth @@ -168,6 +161,18 @@ : stand-power-off ( -- ) ec-power-off begin wfi again ; ' stand-power-off to power-off
+: olpc-reset-all ( -- ) + " screen" " dcon-off" ['] execute-device-method catch if + 2drop 2drop + then + ec-power-cycle + begin wfi again +; +' olpc-reset-all to reset-all +stand-init: + ['] reset-all to bye +; + fload ${BP}/dev/olpc/kb3700/batstat.fth \ Battery status reports fload ${BP}/cpu/arm/olpc/1.75/boardrev.fth \ Board revision decoding
openfirmware@openfirmware.info