I have posted instructions in the following place, please take a look.
I have been able to do a full dump and reload of the DreamPlug.
I would be more than happy to entertain any questions.

http://www.newit.co.uk/forum/index.php/topic,1977.0.html

I have also built a current version of openocd (0.4.0) with the correct config 
files.
The trick with the DreamPlug is that openocd does not know how to write to the 
SPI NOR flash, however, you can startup off a previous bootloader using the 
JTAG, and also use the JTAG to place the bootloader you want to replace in 
memory at a location, then use the "sf erase" "sf write" commands to replace it.

Please take a look at the post, let me know if you need any of the original 
files from it, or the openocd.
What I would REALLY like to do is know how to get U-Boot to build me a new 
bootloader, if you have accomplished this, please share.  I don't know how to 
edit the board/guruplug.cfg file in the U-Boot source tree to match the 
configuration on the DreamPlug, It always freezes on boot right after detecting 
the DRAM size (and it is incorrect).

My first "dump" from the original bootloader was using the "md" command and 
copying it from the terminal window, and using a Perl script, convert that to a 
.bin file.  So I have the original original bootloader, the one offered for 
download is dated 2011-03-28 while the one shipped is dated 2011-03-01, if I 
recall correctly.

--Allan


-----Original Message-----
From: u-boot-boun...@lists.denx.de on behalf of Jason
Sent: Wed 4/20/2011 7:12 AM
To: u-boot@lists.denx.de
Subject: [U-Boot] DreamPlug bootloader replacement
 
All,

I'm attempting to replace u-boot on the new dreamplug.  This is
different from the guruplug and sheevaplug in that the bootloader is
stored in a 1MB (!) flash connected via SPI.  I was able to dump the
factory u-boot to a file, and it's header looks strikingly similar to
the u-boot.kwb image I used on my guruplug.  However, the first 32 bits,
supposedly the magic number, are different.  Is that important?

Here's the first 0x100 bytes starting at 0x0.

### factory dreamplug image ###########################################
0000000: 5a 00 00 00 54 49 02 00 00 00 00 00 00 02 00 00
0000010: 00 00 60 00 00 00 60 00 00 00 00 00 00 00 01 bc
0000020: 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000040: e0 00 d1 ff 9b 9b 1b 1b 00 14 d0 ff 30 0c 00 43
0000050: 04 14 d0 ff 00 30 54 37 08 14 d0 ff 51 54 12 22
0000060: 0c 14 d0 ff 33 0a 00 00 10 14 d0 ff cc 00 00 00
0000070: 14 14 d0 ff 00 00 00 00 18 14 d0 ff 00 00 00 00
0000080: 1c 14 d0 ff 52 0c 00 00 20 14 d0 ff 40 00 00 00
0000090: 24 14 d0 ff 7f f1 00 00 28 14 d0 ff 20 55 08 00
00000a0: 7c 14 d0 ff 52 85 00 00 00 15 d0 ff 00 00 00 00
00000b0: 04 15 d0 ff f1 ff ff 0f 08 15 d0 ff 00 00 00 10
00000c0: 0c 15 d0 ff f5 ff ff 0f 14 15 d0 ff 00 00 00 00
00000d0: 1c 15 d0 ff 00 00 00 00 94 14 d0 ff 00 00 03 00
00000e0: 98 14 d0 ff 00 00 00 00 9c 14 d0 ff 03 e8 00 00
00000f0: 80 14 d0 ff 01 00 00 00 00 00 00 00 00 00 00 00
### end factory dreamplug image #######################################

And, here's my u-boot.kwb:

### my u-boot.kwb #####################################################
0000000: 8b 00 00 08 58 9d 03 00 00 00 00 00 00 02 00 00
0000010: 00 00 60 00 00 00 60 00 00 00 00 00 00 00 01 4e
0000020: 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000040: e0 00 d1 ff 9b 9b 1b 1b 00 14 d0 ff 30 0c 00 43
0000050: 04 14 d0 ff 00 30 54 37 08 14 d0 ff 51 54 12 22
0000060: 0c 14 d0 ff 33 0a 00 00 10 14 d0 ff cc 00 00 00
0000070: 14 14 d0 ff 00 00 00 00 18 14 d0 ff 00 00 00 00
0000080: 1c 14 d0 ff 52 0c 00 00 20 14 d0 ff 40 00 00 00
0000090: 24 14 d0 ff 7f f1 00 00 28 14 d0 ff 20 55 08 00
00000a0: 7c 14 d0 ff 52 85 00 00 00 15 d0 ff 00 00 00 00
00000b0: 04 15 d0 ff f1 ff ff 0f 08 15 d0 ff 00 00 00 10
00000c0: 0c 15 d0 ff f5 ff ff 0f 14 15 d0 ff 00 00 00 00
00000d0: 1c 15 d0 ff 00 00 00 00 94 14 d0 ff 00 00 03 00
00000e0: 98 14 d0 ff 00 00 00 00 9c 14 d0 ff 03 e8 00 00
00000f0: 80 14 d0 ff 01 00 00 00 00 00 00 00 00 00 00 00
### end my u-boot.kwb #################################################

Also, before I do a 'sf erase...; sf write...' I'd like to know I can
recover via the jtag, if necessary.  In theory, I should be able to load
the factory image into RAM via jtag, and run it.  Then, use tftpload and
'sf write' to restore the factory bootloader.  What I'm missing is how
to directly burn the spi flash from openocd.  Has anyone done this?  Is
there a config I can reference?

thx,

Jason. 
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to