[openfirmware] [commit] r2006 - in cpu/arm: . mmp2 olpc/1.75
repository service
svn at openfirmware.info
Thu Nov 4 19:18:08 CET 2010
Author: wmb
Date: Thu Nov 4 19:18:07 2010
New Revision: 2006
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2006
Log:
OLPC XO-1.75 - Add crypto verifier, fix screen flashing bug.
Added:
cpu/arm/olpc/1.75/wlan-version.fth
Modified:
cpu/arm/call.fth
cpu/arm/mmp2/hash.fth
cpu/arm/olpc/1.75/devices.fth
cpu/arm/olpc/1.75/lcd.fth
cpu/arm/olpc/1.75/olpc.bth
cpu/arm/olpc/1.75/prefw.bth
cpu/arm/olpc/1.75/sdhci.fth
Modified: cpu/arm/call.fth
==============================================================================
--- cpu/arm/call.fth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/call.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -1,7 +1,7 @@
purpose: From Forth, call the C subroutine whose address is on the stack
\ See license at end of file
-code sp-call ( [ arg5 .. arg0 ] adr sp -- [ arg5 .. arg0 ] result )
+code sp-call ( [ arg19 .. arg0 ] adr sp -- [ arg19 .. arg0 ] result )
pop r6,sp \ Get the subroutine address
str sp,'user saved-sp \ Save for callbacks
@@ -10,10 +10,22 @@
mov rp,#0 \ Set the frame pointer to null
- \ Pass up to 6 arguments
- ldmia sp,{r0,r1,r2,r3,r4,r5}
+ \ Pass up to 20 arguments
+ add r4,sp,#0x10
+ sub r5,tos,#0x50
+
+ ldmia r4!,{r0,r1,r2,r3} \ Arguments 4-7
+ stmia r5!,{r0,r1,r2,r3} \ .. onto new stack
+ ldmia r4!,{r0,r1,r2,r3} \ Arguments 8-11
+ stmia r5!,{r0,r1,r2,r3} \ .. onto new stack
+ ldmia r4!,{r0,r1,r2,r3} \ Arguments 12-15
+ stmia r5!,{r0,r1,r2,r3} \ .. onto new stack
+ ldmia r4!,{r0,r1,r2,r3} \ Arguments 16-19
+ stmia r5!,{r0,r1,r2,r3} \ .. onto new stack
- mov sp,tos \ Switch to the new stack
+ ldmia sp,{r0,r1,r2,r3} \ First 4 arguments in registers
+
+ sub sp,tos,#0x50 \ Switch to the new stack
mov lk,pc \ Set link register to return address
mov pc,r6 \ Call the subroutine
@@ -23,7 +35,7 @@
ldr sp,'user saved-sp \ Restore the stack pointer
mov tos,r0 \ Return subroutine result
c;
-: call ( [ arg5 .. arg0 ] adr -- [ arg5 .. arg0 ] result ) sp@ sp-call ;
+: call ( [ arg19 .. arg0 ] adr -- [ arg19 .. arg0 ] result ) sp@ sp-call ;
\ LICENSE_BEGIN
\ Copyright (c) 1997 FirmWorks
Modified: cpu/arm/mmp2/hash.fth
==============================================================================
--- cpu/arm/mmp2/hash.fth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/mmp2/hash.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -137,7 +137,7 @@
;
[else]
\ This procedure works
-: init-entropy-digital ( -- )
+: init-entropy ( -- ) \ Using digital method
h# 21117c0 h# d4292c00 l!
;
[then]
@@ -149,6 +149,11 @@
: random-long ( -- l )
random-short random-short wljoin
;
+alias random random-long
+
+stand-init: Random number generator
+ init-entropy
+;
\ LICENSE_BEGIN
\ Copyright (c) 2010 FirmWorks
Modified: cpu/arm/olpc/1.75/devices.fth
==============================================================================
--- cpu/arm/olpc/1.75/devices.fth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/olpc/1.75/devices.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -185,6 +185,7 @@
devalias int /sd at d4281000/disk
devalias ext /sd at d4280000/disk
+devalias net /wlan \ XXX should report-net in case of USB Ethernet
fload ${BP}/dev/olpc/kb3700/spicmd.fth
Modified: cpu/arm/olpc/1.75/lcd.fth
==============================================================================
--- cpu/arm/olpc/1.75/lcd.fth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/olpc/1.75/lcd.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -26,5 +26,5 @@
h# 2000000d h# 1b8 lcd! \ Dumb panel controller - 18 bit RGB666 on LDD[17:0]
h# 01330133 h# 13c lcd! \ Panel VSYNC Pulse Pixel Edge Control
clkdiv h# 1a8 lcd! \ Clock divider
- h# 00021100 h# 190 lcd! \ DMA CTRL 0 - enable DMA, 24 bpp mode
+ h# 08021100 h# 190 lcd! \ DMA CTRL 0 - enable DMA, 24 bpp mode
;
Modified: cpu/arm/olpc/1.75/olpc.bth
==============================================================================
--- cpu/arm/olpc/1.75/olpc.bth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/olpc/1.75/olpc.bth Thu Nov 4 19:18:07 2010 (r2006)
@@ -3,6 +3,7 @@
command: &builder &this
in: ${BP}/cpu/arm/olpc/1.75/build/fw.img
in: sd8686.bin
+in: verify.img
build-now
fload ${BP}/cpu/arm/olpc/1.75/fw-version.fth
@@ -126,14 +127,13 @@
" memtest" " memtest" $add-deflated-dropin
[then]
-0 [if]
" verify.img" " verify" $add-deflated-dropin
" os.public" " ospubkey" $add-dropin \ Incompressible
" fw.public" " fwpubkey" $add-dropin \ Incompressible
" fs.public" " fspubkey" $add-dropin \ Incompressible
" lease.public" " leasepubkey" $add-dropin \ Incompressible
" developer.public" " develpubkey" $add-dropin \ Incompressible
-[then]
+
" sourceurl" " sourceurl" $add-dropin
0 [if]
Modified: cpu/arm/olpc/1.75/prefw.bth
==============================================================================
--- cpu/arm/olpc/1.75/prefw.bth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/olpc/1.75/prefw.bth Thu Nov 4 19:18:07 2010 (r2006)
@@ -167,6 +167,10 @@
fload ${BP}/forth/lib/selstr.fth
+fload ${BP}/cpu/arm/mmp2/hash.fth \ Hashes - SHA1, SHA-256, MD5
+fload ${BP}/cpu/x86/pc/olpc/crypto.fth \ Cryptographic image validation
+fload ${BP}/cpu/x86/pc/olpc/lzip.fth \ Access zip images from memory
+
fload ${BP}/ofw/inet/loadtcp.fth
support-package: http
@@ -185,8 +189,6 @@
fload ${BP}/cpu/arm/olpc/1.75/memtest.fth
[then]
-fload ${BP}/cpu/arm/mmp2/hash.fth \ Hashes - SHA1, SHA-256, MD5
-
fload ${BP}/ofw/wifi/wifi-cfg.fth
support-package: supplicant
fload ${BP}/ofw/wifi/loadpkg.fth
Modified: cpu/arm/olpc/1.75/sdhci.fth
==============================================================================
--- cpu/arm/olpc/1.75/sdhci.fth Thu Nov 4 04:35:15 2010 (r2005)
+++ cpu/arm/olpc/1.75/sdhci.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -96,7 +96,7 @@
end-package
-stand-init: \ SDHC clocks
+stand-init: SDHC clocks
h# 41b h# d4282854 l! \ SD0 (external SD) clocks, plus set master clock divisor
h# 1b h# d4282858 l! \ SD1 (WLAN) clocks
h# 1b h# d42828e8 l! \ SD2 (internal microSD) clocks
Added: cpu/arm/olpc/1.75/wlan-version.fth
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ cpu/arm/olpc/1.75/wlan-version.fth Thu Nov 4 19:18:07 2010 (r2006)
@@ -0,0 +1,7 @@
+\ The wireless LAN module firmware
+macro: WLAN_VERSION 9.0.7.p2
+
+\ Alternate command for getting WLAN firmware, for testing new versions.
+\ Temporarily uncomment the line and modify the path as necessary
+\ macro: GET_WLAN cp "/c/Documents and Settings/Mitch Bradley/My Documents/OLPC/DiskImages/sd8686-9.70.7.p0.bin" sd8686.bin; cp "/c/Documents and Settings/Mitch Bradley/My Documents/OLPC/DiskImages/sd8686_helper.bin" sd8686_helper.bin
+\ macro: GET_WLAN wget http://dev.laptop.org/pub/firmware/libertas/thinfirm/lbtf_sdio-9.0.7.p2.bin -O sd8686.bin
More information about the openfirmware
mailing list