[openfirmware] r1664 - cpu/x86/pc/olpc/via dev/olpc/kb3700
svn at openfirmware.info
svn at openfirmware.info
Wed Jan 13 00:49:09 CET 2010
Author: rsmith
Date: 2010-01-13 00:49:08 +0100 (Wed, 13 Jan 2010)
New Revision: 1664
Modified:
cpu/x86/pc/olpc/via/fw.bth
dev/olpc/kb3700/ecio.fth
Log:
OLPC 1.5: Host reboot no longer watchdog reboots the EC.
In order to unifiy the reboot code paths 1.5 reboots were changed such that
they rebooted the EC as well. This cleared the indexed IO bit so things
like flash upgrded didn't need a 2nd reboot.
However, We really don't want to be rebooting the EC so much since
the battery subsystem does not have any sort of sync to shutdown
prior to the reboot.
So rather than use cmd66 0xdb cmd there is a new cmd66 0xd7 which will
power cycle the host but not reboot the EC. Index IO is now enabled
after the EC drops power to the host so it achieves the same behavior as 0xdb.
0xdb is now only for firmware updates.
Modified: cpu/x86/pc/olpc/via/fw.bth
===================================================================
--- cpu/x86/pc/olpc/via/fw.bth 2010-01-12 23:49:05 UTC (rev 1663)
+++ cpu/x86/pc/olpc/via/fw.bth 2010-01-12 23:49:08 UTC (rev 1664)
@@ -446,7 +446,7 @@
2drop 2drop
then
- ec-reboot \ Tell the EC to reboot us, so the EC can reset too
+ host-pwr-cycle \ Tell the EC to reboot us
\ Prevent "resume from S3" on restart
4 acpi-w@ h# 1c00 invert and 4 acpi-w!
Modified: dev/olpc/kb3700/ecio.fth
===================================================================
--- dev/olpc/kb3700/ecio.fth 2010-01-12 23:49:05 UTC (rev 1663)
+++ dev/olpc/kb3700/ecio.fth 2010-01-12 23:49:08 UTC (rev 1664)
@@ -288,6 +288,10 @@
\ EC indexed I/O will come up in enabled state.
: ec-reboot ( -- ) h# db ec-cmd66 ;
+\ This restarts only the host (no ec reset) but EC index I/O will come up
+\ in enable sate
+: host-pwr-cycle ( -- ) h# d7 ec-cmd66 ;
+
: ec-ixio-reboot ( -- )
['] ec-reboot catch if
." Automatic restart failed. Remove/reinstall the battery and AC." cr
More information about the openfirmware
mailing list