[U-Boot] Flash not erased problem.

Stefan Roese sr at denx.de
Mon Feb 20 19:04:36 CET 2012


Hi Sanjoy,

On Monday 20 February 2012 13:40:30 Sanjoy Saha - ERS, HCL Tech wrote:
>     I am using u-Boot [2009.08-CanyonlandsOptimized_2.6.30_1.13-01] in
> canyonlands board to flash my ram file system (which I need to do often).
> I go in step to erase/tftp/copy the binary in my flash.
> 
> era 0xfc200000 0xfd5fffff
> tftp 0x200000 canyonlands/ramdisk.img
> cp.b ${fileaddr} 0xfc200000 ${filesize}
> 
> other than copy command everything works fine. The copy command bails out
> with error message "flash not erased". Size of ramdisk image is ~7MB. I
> have verified the sectors for erase operation done properly (i.e filled
> with 0xFFFFFFFF).
> 
> After giving 'n" number of shot copy works great. I suspect timing problem
> which degrades with age of flash memory. I have acquired a new board and i
> see the same problem.
> 
> Can some one help me out ?
 
Did you check upgrading to a newer U-Boot version? Take a look at
this commit:

Author: Stefan Roese <sr at denx.de>  2009-10-29 18:37:45
Committer: Stefan Roese <sr at denx.de>  2009-11-09 13:30:19
Parent: 514bab6609acd1a2a19fdd75c2f6255178db7c96 (ppc4xx: Fix "chip_config" command for AMCC 
Arches)
Child:  17a684449728ce4c9ce79fa9e7e75b86a5f9b41d (ppc4xx/Canyonlands added USB board 
callbacks)
Branches: many (141)
Follows: v2009.11-rc1
Precedes: v2009.11-rc2

    ppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)
    
    This patch fixes a problem only seen very occasionally on Canyonlands.
    The NOR flash interface (CFI driver) doesn't work reliably in all cases.
    Erasing and/or programming sometimes doesn't work. Sometimes with
    an error message, like "flash not erased" when trying to program an
    area that should have just been erased. And sometimes without any error
    messages. As mentioned above, this problem was only seen rarely and with
    some PLL configuration (CPU speed, EBC speed).
    
    Now I spotted this problem a few times, when running my Canyonlands with
    the following setup (chip_config):
    
    1000-nor         - NOR  CPU:1000 PLB: 200 OPB: 100 EBC: 100
    
    Changing the EBC configuration to not release the bus into high
    impedance state inbetween the transfers (ATC, DTC and CTC bits set to 1
    in EBC0_CFG) seems to fix this problem. I haven't seen any failure
    anymore with this patch applied.
    
    Signed-off-by: Stefan Roese <sr at denx.de>


So a newer U-Boot version should fix your issue.

Best regards,
Stefan

--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de


More information about the U-Boot mailing list