This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM6441 - New NAND Flash chip causes uboot error

We changed flash chips on our board because we can no longer find the old ones. The parts are supposed to be pin compatible, the only difference being the new one is double the size. I didn't anticipate any problems booting the board. I figured if anything I would just see that it still only recognizes half the space. This is the error I see in uboot after I enter my 'ethaddr':

...

Erasing redundant NAND...

Warning: Erase size 0x00010000 smaller than one erase block 0x00020000

                 Erasing 0x00020000 instead

Skipping bad block 0x00090000

Writing to redundant Nand... FAILED!

RESET

After this the board just restarts and brings me to the "Please enter 'ethaddr'" prompt again. I am not familiar enough with uboot, the board, or this problem to have any legitimate guesses as to what to do. Any thoughts would be appreciated.

Thanks.

  • Todd,

    Can you let me know the NAND parts that you were using before and now?

  • Renjith,

    Sorry, I should have posted that in the original message. We were using this before:

    Samsung K9F1208R0C

    We are trying to use this now:

    Micron MT29F1G08ABBDAH4-IT:D

    Thanks

  • Todd,

    The Samsung NAND flash has 512bytes pages size and the Micron NAND has 2KB page size. If this is not handled in your code properly, then NAND can fail.

  • I have been through the u-boot docs and code a little since I originally posted this question. At this point I am at a spot where I have simplified the problem significantly.

    At the U-Boot prompt, after I interrupt auto boot, I simply do a setenv (a=4 for instance), a printenv to verify, a saveenv to save to NAND and then a reset. On the board that works, this obviously works fine. On my board, this fails. This is why I say I feel I have drastically simplified the problem. I feel if I can get this to work, then my other problems will be resolved.

    That being said, after have studied the code for a few days now, I cannot seem to make the change in the proper place to account for this different page size. I have tried a few changes with no success. Can you possibly give me a hint as to where to look or what changes to make to account for the larger page size?

  • I don't have a setup with DM644x with me. If you can share the board with me, I can solve it for you. If you are interested please send me a mail @ renjith.thomas@pathpartnertech.com