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