[openfirmware] [commit] r2502 - cpu/arm/olpc/1.75
repository service
svn at openfirmware.info
Fri Sep 2 22:23:05 CEST 2011
Author: wmb
Date: Fri Sep 2 22:23:04 2011
New Revision: 2502
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2502
Log:
OLPC XO-1.75 - when reprogramming the EC FLASH, skip the page that contains the EC configuration flags.
Modified:
cpu/arm/olpc/1.75/ecflash.fth
cpu/arm/olpc/1.75/edi.fth
Modified: cpu/arm/olpc/1.75/ecflash.fth
==============================================================================
--- cpu/arm/olpc/1.75/ecflash.fth Fri Sep 2 21:22:45 2011 (r2501)
+++ cpu/arm/olpc/1.75/ecflash.fth Fri Sep 2 22:23:04 2011 (r2502)
@@ -46,7 +46,6 @@
load-base /ec-flash + /ec-flash 0 " read-flash" $call-ec
[else]
use-edi-spi edi-open
- ." Erasing ..." erase-chip cr
." Writing ..." load-base /ec-flash 0 edi-program-flash cr
." Verifying ..."
load-base /ec-flash + /ec-flash 0 edi-read-flash
Modified: cpu/arm/olpc/1.75/edi.fth
==============================================================================
--- cpu/arm/olpc/1.75/edi.fth Fri Sep 2 21:22:45 2011 (r2501)
+++ cpu/arm/olpc/1.75/edi.fth Fri Sep 2 22:23:04 2011 (r2502)
@@ -131,13 +131,17 @@
h# 70 flash-cmd ( )
wait-flash-busy ( )
;
+h# 7e80 constant ec-flags-offset
: edi-program-flash ( adr len offset -- )
- cr
- swap 0 ?do
- (cr i .
- over i + over i + edi-program-page ( adr offset )
- /flash-page +loop ( adr offset )
- 2drop ( )
+ cr ( adr len offset )
+ swap 0 ?do ( adr offset )
+ (cr i . ( adr offset )
+ dup i + ec-flags-offset <> if ( adr offset )
+ dup i + erase-page ( adr offset )
+ over i + over i + edi-program-page ( adr offset )
+ then ( adr offset )
+ /flash-page +loop ( adr offset )
+ 2drop ( )
;
: edi-read-flash ( adr len offset -- )
over 0= if 3drop exit then ( adr len offset )
More information about the openfirmware
mailing list