
On Tuesday 13 April 2010 08:31:59 prakash bedge wrote:
I did it. :)
Good. But what did you change to make it work?
I am now able to detect the flash. So now I can run the uboot commnads i.e flinfo to check the flash information. For this I make use of ST fixup code for M29W128GH in which I changed the codition for chekcing chipwidth.
Are you not using the mainline version of cfi_flash.c? If not, which "fixup code" are you referring to (link)?
To detect the flash I used chipwidth 16 Bits and Portwidth 8 Bits.
Just checking to be sure: Are you using the Spansion chip in byte (8bit) or word (16bit) mode? All configurations I have used till now use the word mode with this chip.
And you really use 8 bit portwidth to access this chip in your SoC?
But now I am getting the problem in erasing on flash. I gave the erase command to erase the sector but then the sector is not getting erased and I am getting the message as flash erased. Same is for chip erase command. See the log below
<snip>
U-Boot $ *saveenv* Saving Environment to Flash... copy old content: sect_addr: FFFA0000 env_addr: FFFA0000 offset: 00000000 Protect off FFFA0000 ... FFFBFFFF Un-Protecting sectors 509..509 in bank 1 Un-Protected 1 sectors *Erasing Flash...Erase Flash from 0xfffa0000 to 0xfffbffff in Bank # 1* fwc addr fffa0aaa cmd aa aa 8bit x 8 bit fwc addr fffa0555 cmd 55 55 8bit x 8 bit fwc addr fffa0aaa cmd 80 80 8bit x 8 bit fwc addr fffa0aaa cmd aa aa 8bit x 8 bit fwc addr fffa0555 cmd 55 55 8bit x 8 bit fwc addr fffa0000 cmd 30 30 8bit x 8 bit *flash_is_busy: 0 done* *Erased 1 sectors Writing to Flash... Flash not Erased* Protecting sectors 509..509 in bank 1 Protected 1 sectors U-Boot $
Also, even by using BDI 3000 Debugger, I am not able to erase the flash by giving the proper CFI erase command.
mmb 0xfc000000 0xf0 mmb 0xfc000aaa 0xaa mmb 0xfc000555 0x55 mmb 0xfc000aaa 0x80 mmb 0xfc000aaa 0xaa mmb 0xfc000555 0x55 mmb 0xff7c0000 0x30
But the data is still present.
What may be the reason that flash in not getting erased using U-boot as well as BDI debugger?
Hard to tell. Perhaps still a problem of a misconfigured external bus? Perhaps a problem of incorrect unlocking addresses (byte vs. word address)?
How did you program the U-Boot image into FLASH? Via the BDI3000 "prog" command? Is this working correctly?
Cheers, 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@denx.de