[openfirmware] [commit] r3052 - in cpu: arm/olpc x86/pc/olpc/via
repository service
svn at openfirmware.info
Thu Jul 12 09:24:50 CEST 2012
Author: quozl
Date: Thu Jul 12 09:24:50 2012
New Revision: 3052
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/3052
Log:
OLPC XO-1.5 XO-1.75 - an fs-load command, the reverse of fs-save, very slow, but useful for testing.
Added:
cpu/x86/pc/olpc/via/fsload.fth
Modified:
cpu/arm/olpc/build-fw.fth
cpu/x86/pc/olpc/via/fw.bth
Modified: cpu/arm/olpc/build-fw.fth
==============================================================================
--- cpu/arm/olpc/build-fw.fth Thu Jul 12 08:29:04 2012 (r3051)
+++ cpu/arm/olpc/build-fw.fth Thu Jul 12 09:24:50 2012 (r3052)
@@ -660,6 +660,7 @@
fload ${BP}/cpu/x86/pc/olpc/via/fsupdate.fth
fload ${BP}/cpu/x86/pc/olpc/via/fsverify.fth
fload ${BP}/cpu/x86/pc/olpc/via/fssave.fth
+fload ${BP}/cpu/x86/pc/olpc/via/fsload.fth
devalias fsdisk int:0
\ create pong-use-touchscreen
Added: cpu/x86/pc/olpc/via/fsload.fth
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ cpu/x86/pc/olpc/via/fsload.fth Thu Jul 12 09:24:50 2012 (r3052)
@@ -0,0 +1,51 @@
+\ Read blocks from a file and write to internal storage
+[ifndef] fs-load
+vocabulary fs-load-commands
+also fs-load-commands definitions
+
+0 value data-buffer
+
+h# ff a5 00 rgb>565 constant loaded-color \ orange
+
+: (fs-load-chunk) ( #bytes -- )
+ data-buffer over filefd fgets ( #bytes #read )
+ over <> " Read failure" ?nand-abort ( #bytes #read )
+ data-buffer swap " write" $call-nand ( #bytes )
+ drop ( )
+;
+
+: (fs-load) ( -- )
+ load-base to data-buffer
+ " size" $call-nand /nand-block um/mod ( #left-over-bytes #blocks )
+ dup show-init
+ 0 do
+ /nand-block (fs-load-chunk) ( #left-over-bytes )
+ i dup show-eblock# loaded-color show-state ( #left-over-bytes )
+ loop ( #left-over-bytes )
+ ?dup if ( #left-over-bytes )
+ (fs-load-chunk) ( )
+ then ( )
+;
+
+previous definitions
+
+: $fs-load ( file$ -- )
+ open-nand ( file$ )
+ r/o open-file ( fd error? )
+ " Can't open file" ?nand-abort ( fd )
+ to filefd ( )
+ t-hms(
+ [ also fs-load-commands ]
+ ['] (fs-load) catch ( 0 | x error# )
+ [ previous ]
+ show-done
+ close-nand-ihs
+ )t-hms
+ throw ( )
+;
+
+: fs-load ( "fs.img" -- ) \ read blocks from a file
+ safe-parse-word $fs-load
+;
+
+[then]
Modified: cpu/x86/pc/olpc/via/fw.bth
==============================================================================
--- cpu/x86/pc/olpc/via/fw.bth Thu Jul 12 08:29:04 2012 (r3051)
+++ cpu/x86/pc/olpc/via/fw.bth Thu Jul 12 09:24:50 2012 (r3052)
@@ -523,6 +523,7 @@
fload ${BP}/cpu/x86/pc/olpc/via/fsupdate.fth
fload ${BP}/cpu/x86/pc/olpc/via/fsverify.fth
fload ${BP}/cpu/x86/pc/olpc/via/fssave.fth
+fload ${BP}/cpu/x86/pc/olpc/via/fsload.fth
devalias fsdisk int:0
fload ${BP}/ofw/inet/sntp.fth
More information about the openfirmware
mailing list