Author: wmb Date: Fri Jun 25 02:36:45 2010 New Revision: 1837 URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1837
Log: OLPC - tweaks to UI for NANDblaster for XO-1.5.
Added: cpu/x86/pc/olpc/nb15tx.fth Modified: cpu/x86/pc/olpc/fw.bth cpu/x86/pc/olpc/nandcastui.fth cpu/x86/pc/olpc/versions.fth dev/libertas.fth
Modified: cpu/x86/pc/olpc/fw.bth ============================================================================== --- cpu/x86/pc/olpc/fw.bth Fri Jun 25 02:08:14 2010 (r1836) +++ cpu/x86/pc/olpc/fw.bth Fri Jun 25 02:36:45 2010 (r1837) @@ -466,6 +466,7 @@ fload ${BP}/cpu/x86/bootascall.fth fload ${BP}/cpu/x86/pc/olpc/nandcastui.fth fload ${BP}/cpu/x86/pc/olpc/wifichannel.fth +fload ${BP}/cpu/x86/pc/olpc/nb15tx.fth fload ${BP}/cpu/x86/pc/olpc/nbrx.fth fload ${BP}/cpu/x86/pc/olpc/fsupdate.fth
Modified: cpu/x86/pc/olpc/nandcastui.fth ============================================================================== --- cpu/x86/pc/olpc/nandcastui.fth Fri Jun 25 02:08:14 2010 (r1836) +++ cpu/x86/pc/olpc/nandcastui.fth Fri Jun 25 02:36:45 2010 (r1837) @@ -79,55 +79,6 @@ redundancy " boot rom:nb_tx udp:239.255.1.2 nand: %d" sprintf eval ;
-\ This sender is for multicast operation over a wired network. -\ It is rarely used, because the wired multicast mode is primarily -\ used in the factory with a big server as the sender. -\ Example: wired-nb-tx: u:\os201.zd 224.0.0.2 -: wired-nb-tx: ( "filename" "multicast-ip-address" -- ) - false to already-go? - safe-parse-word safe-parse-word - " boot rom:nb_tx udp:%s %s 20 131072" sprintf eval -; - -\ This sends to XO-1.5 receivers, but the sender itself can run on either XO-1 or XO-1.5. -\ On XO-1, you must load the special "thin" firmware from a USB stick. -: nb15-tx: ( "filename" "channel" "redundancy" -- ) - " /wlan" find-package 0= abort" No /wlan device" ( phandle ) - - " thin" rot get-package-property if ( ) - \ Absence of "thin" property means we need to get special firmware - " u:\usb8388t.bin" " wlan-fw" $setenv - else ( adr len ) - \ Presence of "thin" property means we are good to go - 2drop - then - - false to already-go? - - safe-parse-word ( filename$ ) - safe-parse-word 2>r ( filename$ r: channel$ ) - parse-word ( filename$ redundancy$ r: channel$ ) - dup 0= if 2drop " 20" then ( filename$ redundancy$' r: channel$ ) - 2swap 2r> ( redundancy$ filename$ channel$ ) - - " boot rom:nb_tx thinmac:OLPC-NANDblaster,%s %s %s 131072" sprintf eval -; - -[ifdef] use-nb15-precomputed -\ NANDblaster sender using thin firmware on XO-1.5, with precomputed -\ packet data. This turns out to be useless because the packets can -\ be computed on-the-fly faster than the module can send. -: nb15-precomputed: ( "filename" ["delay"]-- ) - false to already-go? - safe-parse-word ( name$ ) - safe-parse-word 2>r ( name$ r: channel$ ) - parse-word 2swap ( delay$ name$ r: channel$ ) - 2r> - " u:\usb8388t.bin" " wlan-fw" $setenv - " boot rom:blaster thinmac:OLPC-NANDblaster,%s %s %s" sprintf eval -; -[then] - \ LICENSE_BEGIN \ Copyright (c) 2008 FirmWorks \
Added: cpu/x86/pc/olpc/nb15tx.fth ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ cpu/x86/pc/olpc/nb15tx.fth Fri Jun 25 02:36:45 2010 (r1837) @@ -0,0 +1,87 @@ +purpose: User interface for NAND multicast updater - transmission to XO-1.5 +\ See license at end of file + +\ This sender is for multicast operation over a wired network. +\ It is rarely used, because the wired multicast mode is primarily +\ used in the factory with a big server as the sender. +\ Example: wired-nb-tx: u:\os201.zd 224.0.0.2 +: wired-nb-tx: ( "filename" "multicast-ip-address" -- ) + false to already-go? + safe-parse-word safe-parse-word + " boot rom:nb_tx udp:%s %s 20 131072" sprintf eval +; + +\ This sends to XO-1.5 receivers, but the sender itself can run on either XO-1 or XO-1.5. +\ On XO-1, you must load the special "thin" firmware from a USB stick. +: ?load-thin-wlan-fw ( -- ) + " /wlan" find-package 0= abort" No /wlan device" ( phandle ) + + " thin" rot get-package-property if ( ) + \ Absence of "thin" property means we need to get special firmware + " u:\usb8388t.bin" " wlan-fw" $setenv + \ We have to reset the device and driver to force it to reload + \ the thin firmware, in case firmware has already been loaded. + wlan-reset + " dev /wlan ds-not-ready to driver-state dend" evaluate + else ( adr len ) + \ Presence of "thin" property means we are good to go + 2drop + then +; +: $nb15-tx ( redundancy$ filename$ channel$ -- ) + ?load-thin-wlan-fw + false to already-go? + + " boot rom:nb_tx thinmac:OLPC-NANDblaster,%s %s %s 131072" sprintf eval +; +: nb15-tx: ( "filename" [ "redundancy" ] -- ) + safe-parse-word ( filename$ ) + parse-word ( filename$ redundancy$ ) + dup 0= if 2drop " 20" then ( filename$ redundancy$' ) + 2swap ( redundancy$ filename$ ) + nb-auto-channel ( redundancy$ filename$ channel# ) + + ?load-thin-wlan-fw + false to already-go? + + " boot rom:nb_tx thinmac:OLPC-NANDblaster,%d %s %s 131072" sprintf eval +; + +[ifdef] use-nb15-precomputed +\ NANDblaster sender using thin firmware on XO-1.5, with precomputed +\ packet data. This turns out to be useless because the packets can +\ be computed on-the-fly faster than the module can send. +: nb15-precomputed: ( "filename" ["delay"]-- ) + false to already-go? + safe-parse-word ( name$ ) + safe-parse-word 2>r ( name$ r: channel$ ) + parse-word 2swap ( delay$ name$ r: channel$ ) + 2r> + " u:\usb8388t.bin" " wlan-fw" $setenv + " boot rom:blaster thinmac:OLPC-NANDblaster,%s %s %s" sprintf eval +; +[then] + +\ LICENSE_BEGIN +\ Copyright (c) 2010 FirmWorks +\ +\ Permission is hereby granted, free of charge, to any person obtaining +\ a copy of this software and associated documentation files (the +\ "Software"), to deal in the Software without restriction, including +\ without limitation the rights to use, copy, modify, merge, publish, +\ distribute, sublicense, and/or sell copies of the Software, and to +\ permit persons to whom the Software is furnished to do so, subject to +\ the following conditions: +\ +\ The above copyright notice and this permission notice shall be +\ included in all copies or substantial portions of the Software. +\ +\ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +\ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +\ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +\ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +\ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +\ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +\ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +\ +\ LICENSE_END
Modified: cpu/x86/pc/olpc/versions.fth ============================================================================== --- cpu/x86/pc/olpc/versions.fth Fri Jun 25 02:08:14 2010 (r1836) +++ cpu/x86/pc/olpc/versions.fth Fri Jun 25 02:36:45 2010 (r1837) @@ -2,7 +2,7 @@
\ The overall firmware revision macro: FW_MAJOR E -macro: FW_MINOR 44c +macro: FW_MINOR 44d
\ The EC microcode macro: EC_VERSION e34
Modified: dev/libertas.fth ============================================================================== --- dev/libertas.fth Fri Jun 25 02:08:14 2010 (r1836) +++ dev/libertas.fth Fri Jun 25 02:36:45 2010 (r1837) @@ -1954,7 +1954,6 @@
1 value association-id# : associate-reply ( -- ) - cr ." S" cr 0 4 find-tag 0= if exit then ( adr len ) \ Exit if SSID parameter is missing ssid$ $= 0= if exit then ( ) \ Exit if SSID is wrong
@@ -1972,7 +1971,6 @@ ;
: authenticate-reply ( -- ) - cr ." U" cr mac-adr$ mac-adr$ packet-buf d# 10 + 6 d# 314 h# b0 set-802.11-header 0 0 +pkt-data le-w! \ Open system auth code 2 +pkt-data le-w@ 1+ 2 +pkt-data le-w! \ auth seq#
openfirmware@openfirmware.info