[openfirmware] r1280 - cpu/x86/pc/olpc/via dev/ide dev/mmc/sdhci
svn at openfirmware.info
svn at openfirmware.info
Thu Aug 6 02:13:06 CEST 2009
Author: wmb
Date: 2009-08-06 02:13:06 +0200 (Thu, 06 Aug 2009)
New Revision: 1280
Modified:
cpu/x86/pc/olpc/via/fsupdate.fth
dev/ide/idedisk.fth
dev/mmc/sdhci/sdhci.fth
Log:
Enabled asynchronous writes for fs-update.
Modified: cpu/x86/pc/olpc/via/fsupdate.fth
===================================================================
--- cpu/x86/pc/olpc/via/fsupdate.fth 2009-08-05 20:43:52 UTC (rev 1279)
+++ cpu/x86/pc/olpc/via/fsupdate.fth 2009-08-06 00:13:06 UTC (rev 1280)
@@ -105,7 +105,7 @@
: zblocks-end: ( -- )
\ Asynchronous writes
-\ " write-blocks-finish" $call-nand drop
+ " write-blocks-finish" $call-nand drop
#image-eblocks erase-gap
;
@@ -176,20 +176,20 @@
r> get-zdata ( eblock# hashname$ hash$ )
- check-hash? if
+ check-hash? if ( eblock# hashname$ hash$ )
check-hash ( eblock# )
- else
+ else ( eblock# hashname$ hash$ )
2drop 2drop ( eblock# )
then
( eblock# )
\ Asynchronous writes
-\ data-buffer over nand-pages/block * nand-pages/block " write-blocks-start" $call-nand
- data-buffer over nand-pages/block * nand-pages/block " write-blocks" $call-nand
- swap-buffers
+ data-buffer over nand-pages/block * nand-pages/block " write-blocks-start" $call-nand ( eblock# )
+\ data-buffer over nand-pages/block * nand-pages/block " write-blocks" $call-nand drop ( eblock# )
+ swap-buffers ( eblock# )
- dup to last-eblock# ( eblock# )
- show-written ( )
+ dup to last-eblock# ( eblock# )
+ show-written ( )
;
previous definitions
@@ -205,7 +205,7 @@
over file ! linefeed line-delimiter c! ( fd fd' )
file ! ( fd )
-
+ t(
also nand-commands
['] include-file catch dup if
nip .error
@@ -213,6 +213,7 @@
previous
show-done
close-nand-ihs
+ )t-hms
;
: do-fs-update ( img$ -- )
Modified: dev/ide/idedisk.fth
===================================================================
--- dev/ide/idedisk.fth 2009-08-05 20:43:52 UTC (rev 1279)
+++ dev/ide/idedisk.fth 2009-08-06 00:13:06 UTC (rev 1280)
@@ -63,6 +63,14 @@
: read-blocks ( addr block# #blocks -- #read ) " read-blocks" $call-parent ;
: write-blocks ( addr block# #blocks -- #written ) " write-blocks" $call-parent ;
+\ Stub implementation of asynchronous write interface
+0 instance value #written
+: write-blocks-start ( addr block# #blocks -- )
+ " write-blocks" $call-parent to #written
+;
+: write-blocks-finish ( -- #written ) #written ;
+
+
\ Methods used by external clients
: open ( -- flag )
Modified: dev/mmc/sdhci/sdhci.fth
===================================================================
--- dev/mmc/sdhci/sdhci.fth 2009-08-05 20:43:52 UTC (rev 1279)
+++ dev/mmc/sdhci/sdhci.fth 2009-08-06 00:13:06 UTC (rev 1280)
@@ -824,8 +824,9 @@
address-shift lshift r> if
read-multiple
else
- write-multiple true to writing? true to dma?
+ write-multiple true to writing?
then
+ true to dma?
;
: r/w-blocks ( addr block# #blocks in? -- actual )
More information about the openfirmware
mailing list