Author: wmb
Date: Sat Jun 4 08:48:27 2011
New Revision: 2244
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2244
Log:
Fixed decompiler problem - it was failing to display the names of some data types. The code to display them existed, but wasn't enabled due to a search order problem.
Modified:
forth/lib/objects.fth
Modified: forth/lib/objects.fth
==============================================================================
--- forth/lib/objects.fth Sat Jun 4 00:56:50 2011 (r2243)
+++ forth/lib/objects.fth Sat Jun 4 08:48:27 2011 (r2244)
@@ -160,6 +160,7 @@
-level \ Exit temporary compile state, perhaps run word
;
+also hidden
[ifdef] object-definer
: (object-definer) ( action-acf -- definer )
dup /n - @ ( action-acf #actions )
@@ -172,8 +173,9 @@
ta1+ dup probably-cfa?
until
;
-also hidden ' (object-definer) is object-definer previous
+' (object-definer) is object-definer
[then]
+previous
\ action-compiler: to
action-compiler: addr
Author: wmb
Date: Fri Jun 3 03:51:11 2011
New Revision: 2241
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2241
Log:
OLPC XO-1.75 - Access to manufacturing data was failing due to an initialization order problem.
Modified:
cpu/arm/olpc/1.75/devices.fth
cpu/arm/olpc/1.75/getmfgdata.fth
Modified: cpu/arm/olpc/1.75/devices.fth
==============================================================================
--- cpu/arm/olpc/1.75/devices.fth Fri Jun 3 03:49:09 2011 (r2240)
+++ cpu/arm/olpc/1.75/devices.fth Fri Jun 3 03:51:11 2011 (r2241)
@@ -94,9 +94,12 @@
init-timers
init-twsi
;
-stand-init:
+warning @ warning off
+: stand-init-io
+ stand-init-io
init-stuff
;
+warning !
fload ${BP}/cpu/arm/mmp2/irq.fth
Modified: cpu/arm/olpc/1.75/getmfgdata.fth
==============================================================================
--- cpu/arm/olpc/1.75/getmfgdata.fth Fri Jun 3 03:49:09 2011 (r2240)
+++ cpu/arm/olpc/1.75/getmfgdata.fth Fri Jun 3 03:51:11 2011 (r2241)
@@ -1,17 +1,18 @@
purpose: Get the manufacturing data into memory where it can be manipulated
-/flash-block buffer: mfg-data-buf
+\ It is tempting to use buffer: for this, but that fails because
+\ we need to access manufacturing data very early (for security),
+\ in stand-init-io before the call to clear-buffer:s in init.
+0 value mfg-data-buf
: get-mfg-data ( -- )
+ mfg-data-buf if exit then
+ /flash-block alloc-mem to mfg-data-buf
flash-open
mfg-data-buf /flash-block mfg-data-offset flash-read
;
-0 value mfg-data-read?
: mfg-data-top ( -- adr )
- mfg-data-read? 0= if
- get-mfg-data
- true to mfg-data-read?
- then
+ get-mfg-data
mfg-data-buf /flash-block +
;