[U-Boot-Users] CFI driver problems on MPC8260 and 440EPx systems
Wolfgang Denk
wd at denx.de
Thu Dec 27 00:09:25 CET 2007
Hi Stefan,
even after pulling the latest CFI updates from the u-boot-cfi-flash
repository, I still see the following issues:
a) on MPC8260:
[Stefan: for testing please use the TQM8260_AD board in the xpert VL.]
The CFI driver returns from an "erase" operation with the flash still
in a undefined state; immediate reads after an erase do not show 0xFF
patterns. If you wait a few milliseconds, the flash will finally
change into the expected erased state.
Example:
=> era 40280000 +1 ; md 40280000 10 ; sleep 1 ; md 40280000
. done
Erased 1 sectors
40280000: 004c004c 00080008 004c004c 00080008 .L.L.....L.L.... <= bad
40280010: 004c004c 00080008 004c004c 00080008 .L.L.....L.L.... <= bad
40280020: 004c004c 00080008 004c004c 00080008 .L.L.....L.L.... <= bad
40280030: 004c004c 00080008 004c004c 00080008 .L.L.....L.L.... <= bad
40280000: ffffffff ffffffff ffffffff ffffffff ................ <- good
40280010: ffffffff ffffffff ffffffff ffffffff ................ <- good
40280020: ffffffff ffffffff ffffffff ffffffff ................ <- good
40280030: ffffffff ffffffff ffffffff ffffffff ................ <- good
Playing with CFI paramaters (like manually increasing write timeout
and/or erase timeout) does not change anything. Neither does adding
sync() instructions to the flash_read?() and flash_write?()
functions.
b) on 440EPx:
[Stefan: for testing please use the Sequoia board in the pollux VL.]
The CFI driver does not detect that it's writing to flash that is not
(sufficiently) erased:
=> md FC000000 10
fc000000: 00000000 00000000 00000000 00000000 ................
fc000010: 00000000 00000000 00000000 00000000 ................
fc000020: 00000000 00000000 00000000 00000000 ................
fc000030: 00000000 00000000 00000000 00000000 ................
=> mw.b 0 FF 400
=> md 0
00000000: ffffffff ffffffff ffffffff ffffffff ................
00000010: ffffffff ffffffff ffffffff ffffffff ................
00000020: ffffffff ffffffff ffffffff ffffffff ................
00000030: ffffffff ffffffff ffffffff ffffffff ................
=> cp.b 0 FC000000 400
Copy to Flash... done <= should issue error message here!!!!
=> md FC000000
fc000000: 00000000 00000000 00000000 00000000 ................
fc000010: 00000000 00000000 00000000 00000000 ................
fc000020: 00000000 00000000 00000000 00000000 ................
fc000030: 00000000 00000000 00000000 00000000 ................
=>
I consider this a major bug.
Any ideas what might cause such effects?
Best regards,
Viele Grüße,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Today is the yesterday you worried about tomorrow.
More information about the U-Boot
mailing list