[openfirmware] [commit] r1875 - cpu/x86/pc/olpc dev/mmc/sdhci

repository service svn at openfirmware.info
Thu Jul 15 19:54:33 CEST 2010


Author: wmb
Date: Thu Jul 15 19:54:33 2010
New Revision: 1875
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1875

Log:
OLPC - Commentary improvements - no substantive change.

Modified:
   cpu/x86/pc/olpc/countdwn.fth
   dev/mmc/sdhci/sdhci.fth

Modified: cpu/x86/pc/olpc/countdwn.fth
==============================================================================
--- cpu/x86/pc/olpc/countdwn.fth	Thu Jul 15 19:53:02 2010	(r1874)
+++ cpu/x86/pc/olpc/countdwn.fth	Thu Jul 15 19:54:33 2010	(r1875)
@@ -2,10 +2,11 @@
 purpose: Check for auto-boot interruption
 
 \ This is similar to the ofw/core/countdwn.fth, except that you
-\ have to use a specific key from the main keyboard, because
-\ children tend to pound on the keyboard randomly.  If you have
-\ a serial console, you can still use any key, since only developers
-\ have serial consoles.
+\ have to use a specific key (escape) from the main keyboard, because
+\ children tend to pound on the keyboard randomly.  The serial
+\ console also requires the escape key, because the Windows kernel
+\ debugger might be connected to the serial port.  It sends (non-escape)
+\ characters periodically, and we don't want those to break into OFW.
 
 headerless
 : show-countdown   ( #seconds -- interrupted? )
@@ -16,7 +17,7 @@
          
          stdin @  if
             console-key?  if
-               console-key  h# 1b =  if
+               console-key  h# 1b =  if  \ 1b is ESC
                   \ consume extra escapes in case the user typed several
                   begin console-key? while console-key drop repeat
                   true unloop unloop exit
@@ -26,7 +27,7 @@
 [ifdef] ukey
          ukey? if
 \            ukey drop
-          ukey  h# 1b =  if
+          ukey  h# 1b =  if  \ 1b is ESC
             true unloop unloop exit
           then
          then

Modified: dev/mmc/sdhci/sdhci.fth
==============================================================================
--- dev/mmc/sdhci/sdhci.fth	Thu Jul 15 19:53:02 2010	(r1874)
+++ dev/mmc/sdhci/sdhci.fth	Thu Jul 15 19:54:33 2010	(r1875)
@@ -391,10 +391,9 @@
 : deselect-card  ( -- )   0   h# 0700 0 cmd  ;  \ CMD7 - with null RCA
 : select-card    ( -- )    \ CMD7 R1b
    rca h# 071b 0 cmd
-   \ In principle this shouldn't be necessary, but the Via VX855's SD
-   \ host controller incorrectly sets the "data transfer complete" bit
-   \ during CMD7 with nonzero RCA, and if you don't clear it, subsequent
-   \ commands sometimes fail with either Command Timeout or CRC error.
+   \ Unlike Version 1.00, version 2.00 of the SD Host Controller
+   \ Specification says that Transfer Complete is set after R1b
+   \ commands, so we must clear that bit if it is set.
    isr@ isr!
 ;
 
@@ -408,7 +407,7 @@
 
 : stop-transmission  ( -- )  rca  h# 0c1b 0 cmd  ;        \ CMD12 R1b UNTESTED
 
-: get-status ( -- status )  rca  h# 0d1a 0 cmd  response  ;  \ CMD13 R1 UNTESTED
+: get-status ( -- status )  rca  h# 0d1a 0 cmd  response  ;  \ CMD13 R1
 
 : go-inactive  ( -- )  rca  h# 0f00 0 cmd  ;         \ CMD15 - UNTESTED
 
@@ -620,16 +619,16 @@
    else
       2 set-bus-width  \ acmd6 - bus width 4
       4-bit
-      /block set-blocklen  \ Cmd 16
+      /block set-blocklen  \ cmd16
 
       \ High speed didn't exist until SD spec version 1.10
       \ The low nibble of the first byte of SCR data is 0 for v1.0 and v1.01,
       \ 1 for v1.10, and 2 for v2.
-      get-scr c@  h# f and  0=  if  exit  then
+      get-scr c@  h# f and  0=  if  exit  then   \ acmd51
 
       \ Ask if high-speed is supported
-      h# 00ff.fff1 switch-function d# 13 + c@  2  and  if
-         h# 80ff.fff1 switch-function drop   \ Perform the switch
+      h# 00ff.fff1 switch-function d# 13 + c@  2  and  if   \ cmd6
+         h# 80ff.fff1 switch-function drop   \ Perform the switch  cmd6
          \ Bump the host controller clock
          host-high-speed  \ Changes the clock edge
          card-clock-50



More information about the openfirmware mailing list