
On Saturday 05 May 2007 04:46, Shiju Mathew wrote:
Looks likes some other issue. On our Freescale imx31 ADS board we have connected an extension board(RAM like device) to CS1 through the logical analyser interface. The problem happens when I connect the extension board(even without powering up the extension board). If I remove the extension board the flash erase/writes are successfull.
Thanks, Shiju
Looks like an hardware/interfacing issue...
I was debugging the problem further. We have two other bootloaders running on this board - redboot and Eboot.
Wow, 3 bootloaders for one board! What luxury. :)
Both does not have this problem. Only on Uboot I am experiencing this problem. On debugging what I could find is that when I erase a sector, the function flash_is_busy() returns immidiatly with success(not busy). Usually it should loop for a while in this function before returning that the flash is not busy. Before writing to the erased sector, the "md" command displayed 0xffffffff for the erased sector. But when I tried to write data to the erased location using cp.b, the function flash_write_cfiword() returns with error "flash is not erased" since it failed to find 0xffffffff in the erased locations(Check if Flash is (sufficiently) erased). So why does "md" displays 0xffffffff for erased locations and flash routine says it is not 0xffffffff ? Could someone explain why this difference.
Does this problem also occur when you disconnect the "extension board"?
Best regards, Stefan
===================================================================== DENX Software Engineering GmbH, HRB 165235 Munich, CEO: Wolfgang Denk Office: Kirchenstr. 5, D-82194 Groebenzell, Germany =====================================================================