bdiGDB
for GNU Debugger, BDI2000 (ARM11/Cortex-A8) User Manual 37
© Copyright 1997-2007 by ABATRON AG Switzerland V 1.04
Note:
Some Intel flash chips (e.g. 28F800C3, 28F160C3, 28F320C3) power-up with all blocks in locked
state. In order to erase/program those flash chips, use the init list to unlock the appropriate blocks:
WM16 0xFFF00000 0x0060 unlock block 0
WM16 0xFFF00000 0x00D0
WM16 0xFFF10000 0x0060 unlock block 1
WM16 0xFFF10000 0x00D0
....
WM16 0xFFF00000 0xFFFF select read mode
or use the Telnet "unlock" command:
UNLOCK [<addr> [<delay>]]
addr This is the address of the sector (block) to unlock
delay A delay time in milliseconds the BDI waits after sending the unlock com-
mand to the flash. For example, clearing all lock-bits of an Intel J3 Strata
flash takes up to 0.7 seconds.
If "unlock" is used without any parameter, all sectors in the erase list with the UNLOCK option are
processed.
To clear all lock-bits of an Intel J3 Strata flash use for example:
BDI> unlock 0xFF000000 1000
To erase or unlock multiple, continuos flash sectors (blocks) of the same size, the following Telnet
commands can be used:
ERASE <addr> <step> <count>
UNLOCK <addr> <step> <count>
addr This is the address of the first sector to erase or unlock.
step This value is added to the last used address in order to get to the next sec-
tor. In other words, this is the size of one sector in bytes.
count The number of sectors to erase or unlock.
The following example unlocks all 256 sectors of an Intel Strata flash ( 28F256K3) that is mapped to
0x00000000. In case there are two flash chips to get a 32bit system, double the "step" parameter.
BDI> unlock 0x00000000 0x20000 256