Wednesday, September 9, 2009

Flash write failed error – Booboo explains; help if you can!

image

Some users have been encountering the “Flash write failed” error (FWF – also known as the A320-FU and not quite the RROD, but let’s see if it’ll stick) when attempting to flash their firmware to the dualboot installer for Dingux.  Booboo explains the likely cause, and recommends some options here:

Hi all,
Sorry for being so unreachable lately. After vacation I have a pile of stuff here at work like never before.
Would please those with the flash write failure problem answer a question: is this the first time you install dual-boot?.
The dual boot installer contains a stripped-down kernel (no MMC, no network, etc) and a minimal root filesystem in an initramfs embedded in the kernel image. The rootfs contains the necessary programs to erase and write the first NAND flash block, together with the actual data to write.
So far, all releases of the dual-boot installer do have the same kernel and rootfs, except for the actual data written to flash. The change in these data is minimal and there is no way it can make a difference when writing.
With these premises, my bet is that the problem you are experiencing is bad page(s) in the first NAND flash block. Don't panic. This is NORMAL. All NAND contain some bad pages. They are just marked as such and ignored by software. The boot process accounts for this, but I guess that the flash write programs don't, and instead of marking a page bad when the write fails and placing data in the next page, they just spit out the message error and exit.
If this is the problem:
1- You will experience it no matter what dual-boot release you try to install.
2- You will most likely be able to restore the original SPL using the approriate dual-boot installer option.
(2) is because while installing dual-boot writes almost all the 256 pages in the first block, restoring the SPL writes only the 4 first pages of the block. If you have one or two bad pages and they are not 1-4, dual-boot install will fail but it will be successful in restoring the original SPL.
Now for the solution: the Dingux SPL already accounts for bad pages, but the code is untested (none of my two A320 have bad pages in the first block). The flash_write program in the dual-boot installer probably doesn't account for bad pages. I must modify it to mark a page bad when the write fails and just put the data in the next page.
The problem is that I can't test this myself, and you know these things are trial-and-error. Options:
1- Someone lends his A320.
2- Someone sells his A320.
3- Someone exchanges his A320.
4- Someone volunteers to test modified dual-boot installers until I get it working.
All expenses will be covered by the donation fund.
(1) Would be best if someone lived near Valencia (Spain).
(2) Not sure if it is worth purchasing a second hand A320 just to fix this.
(3) Not possible. My ILI9325 has the console installed. My ILI9331 doesn't and is almost pristine, but unfortunately has a broken shoulder button (my daughter's contribution). It is Ok for me because I just use it to test the ILI9331 releases, but don't think it is Ok to exchange it.
(4) Will be slooooow.

 

So: if anyone lives near Valencia Spain and is suffering the FWFE, drop Booboo a line – or better yet, send him an FWF’d Dingoo over at www.dingux.com !

2 comments :

  1. Hi, it's a great blog.
    I could tell how much efforts you've taken on it.
    Keep doing!

    ReplyDelete
  2. Me which believed being the only one has to have this problem ^^

    Tanks booboo and all others we tried to solve the problem!

    ReplyDelete