I had a lot of bad blocks in my mini2440/micro2440 device. I tried format, bon part, etc, and nothing seemed to work.
Today, I uploaded the 128M root file system instead of the 64M one, and it started to work, still with a bunch of bad blocks. Then I did "f" to format the NAND flash and "x" to format nand flash for linux, and re-downloaded the 128M root file system, and no bad block appeared, and everything is working.
The weird thing is that my flash chip says 64M. However, my kernel detects 128M. Why is 128M working? not sure. All I know is that it works now.
Either your 64M Flash has read/write and erase block sizes that match the 128, or you are reading it wrong. A 64M Flash should be a K9F1208 and a 128 is a K9F1G08. Your system info should show 65M of RAM and "storage" if it is a 64M. The 128, 256, and 1G all have the same block sizes. Only the 64 is different.
ReplyDeleteRegnirps
Thanks for your comment. My kernel was built to do 128M. Since I blogged about it, everything is working fine using 128M.
ReplyDeleteThe only thing is that my flash reading K9F1208...