[openfirmware] [commit] r2053 - cpu/arm/olpc/1.75 dev/olpc/kb3700

repository service svn at openfirmware.info
Wed Dec 1 10:07:25 CET 2010


Author: wmb
Date: Wed Dec  1 10:07:24 2010
New Revision: 2053
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2053

Log:
OLPC XO-1.75 - enabled EC command timeouts.

Modified:
   cpu/arm/olpc/1.75/devices.fth
   dev/olpc/kb3700/spicmd.fth

Modified: cpu/arm/olpc/1.75/devices.fth
==============================================================================
--- cpu/arm/olpc/1.75/devices.fth	Tue Nov 30 21:50:14 2010	(r2052)
+++ cpu/arm/olpc/1.75/devices.fth	Wed Dec  1 10:07:24 2010	(r2053)
@@ -292,7 +292,7 @@
       ec-api-ver@ " ec-version" integer-property
 [then]
 
-      ec-name$ " ec-name" string-property
+      ['] ec-name$  catch  0=  if  " ec-name" string-property  then
    dend
 
    " /openprom" find-device

Modified: dev/olpc/kb3700/spicmd.fth
==============================================================================
--- dev/olpc/kb3700/spicmd.fth	Tue Nov 30 21:50:14 2010	(r2052)
+++ dev/olpc/kb3700/spicmd.fth	Wed Dec  1 10:07:24 2010	(r2053)
@@ -177,15 +177,15 @@
 0 value datain?
 0 value command-finished?
 
-0 value ec-cmd-time-limit
-: ec-cmd-timeout?   ( -- flag )
-   ec-cmd-time-limit 0=  if  false exit  then
-   get-msecs  ec-cmd-time-limit  -  0>=
+0 value cmd-time-limit
+: cmd-timeout?   ( -- flag )
+   cmd-time-limit 0=  if  false exit  then
+   get-msecs  cmd-time-limit  -  0>=
 ;
-: cancel-cmd-timeout  ( -- )  0 to ec-cmd-time-limit  ;
+: cancel-cmd-timeout  ( -- )  0 to cmd-time-limit  ;
 : set-cmd-timeout  ( -- )
-   get-msecs d# 1000 +  to ec-cmd-time-limit
-   ec-cmd-time-limit 0=  if  1 to ec-cmd-time-limit  then  \ Avoid reserved value
+   get-msecs d# 1000 +  to cmd-time-limit
+   cmd-time-limit 0=  if  1 to cmd-time-limit  then  \ Avoid reserved value
 ;
 
 defer do-state  ' noop to do-state
@@ -341,13 +341,17 @@
    to datain?  to datalen  to databuf
    false to command-finished?
 
+   set-cmd-timeout
    ['] do-state behavior ['] upstream =  if
-      set-cmd-timeout
       set-cmd
    else
       handoff-command
    then
-   begin  poll  command-finished?  until
+   begin                   ( )
+      poll                 ( )
+      cmd-timeout? throw   ( )
+      command-finished?    ( done? )
+   until
 ;
 
 : no-data-command  ( adr len sticky? -- )



More information about the openfirmware mailing list