[U-Boot] BDI3000 - Unprotect flash sectors

Waibel Georg Georg.Waibel at sensor-technik.de
Mon Jan 14 09:03:24 CET 2013


Hi,

using BDI telnet session to issue the unprotect command works fine. Here some hints that have to be considered:
- use command mmh to do a 16 bit access on a 16 bit wide flash
- on a 16 bit wide flash the LSB address line is usually not connected (A0 of flash is connected to A1 of the host on a little endian machine). Thus the addresses required to enter flash command mode (see flash data sheet) have to be adapted (shift left by 1, 0x555 becomes 0xAAA, 0x2AA becomes 0x554)
Regards
Georg

-----Ursprüngliche Nachricht-----
Von: Stefan Roese [mailto:sr at denx.de] 
Gesendet: Freitag, 11. Januar 2013 10:31
An: Waibel Georg
Cc: 'u-boot at lists.denx.de'
Betreff: Re: [U-Boot] BDI3000 - Unprotect flash sectors

Hi Georg,

On 01/11/2013 08:41 AM, Waibel Georg wrote:
> i'm not sure if this is the right place for this question...however, 
> here it is:
> 
> i'm using a BDI3000 to program uboot to the flash (Spansion S29GL512P) 
> on a MPC5200B base board. Erasing / Programming works fine as long as 
> the flash sectors are not protected (via PPB bit). On a protected 
> sector the erase command fails (what makes sense). I thought I can use 
> the unlock command to unprotect the sectors, but this command seems 
> not to work:
>> unlock 0xfff00000 1000
> Unlocking flash at 0xfff00000
> # Invalid parameter for flash programming
> 
> Any ideas what I'm doing wrong?
> 
> Flash configuration:
> [FLASH]
> CHIPTYPE    MIRRORX16
> CHIPSIZE    0x04000000
> BUSWIDTH    16
> WORKSPACE   0x00000000

Yes, the BDI doesn't support the unlocking of the Advanced Locking Bits
(PPB) of these Spansion (and other manufacturers) type chips. You need to manually unlock the sectors in the telnet BDI session by writing the unlocking sequence to the sector(s). Or use U-Boot to do this (if possible).

Please note that some patches to better support this PPB locking have been applied to mainline just now. And I also have some patches to support this PPB (un)-locking in Linux a short while ago which are still
pending:

http://lists.infradead.org/pipermail/linux-mtd/2012-December/045295.html

Hope this helps.

Thanks,
Stefan



More information about the U-Boot mailing list