Search

Technical Discussion Group Forum

This forum is provided for user discussion. While Beacon EmbeddedWorks support staff and engineers participate, Beacon EmbeddedWorks does not guarantee the accuracy of all information within in the Technical Discussion Group (TDG).

The "Articles" forums provide brief Articles written by Beacon EmbeddedWorks engineers that address the most frequently asked technical questions.

To receive email notifications when updates are posted for a Beacon EmbeddedWorks product download, please subscribe to the TDG Forum of interest.

TDG Forum

PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 25 May 2007 08:24 AM by  richard.laborde@logicpd.com
NAND recovery of bad blocks
 2 Replies
Sort:
You are not authorized to post a reply.
Author Messages
randyc
New Member
New Member
Posts:


--
15 May 2007 08:52 AM
    When I first got my litekit, it never complained about bad blocks in the Nand area.

    Now, every time I use it I see:

    yaffs: 68 blocks are marked by manufacturer as bad

    and

    NAND device: Manufacturer ID: 0x20, Chip ID: 0x76 (ST Micro NAND 64MiB 3,3V 8-bit)
    Scanning device for bad blocks
    Bad eraseblock 5 at 0x00014000
    Bad eraseblock 7 at 0x0001c000
    Bad eraseblock 9 at 0x00024000

    and so on, until I presume all 68 blocks are listed. Is there some way to recover/reset this space so I get rid of this message and get my blocks back? I am not sure what even caused this situation in the first place.

    Randy
    thehexa@gmail.com
    New Member
    New Member
    Posts:


    --
    15 May 2007 01:44 PM
    isn't NAND supposed to have bad blocks?
    YAFFS should take care of this.. maybe with a format or similar?

    I haven't started with the NAND yet btw
    richard.laborde@logicpd.com
    Basic Member
    Basic Member
    Posts:247


    --
    25 May 2007 08:24 AM
    Peter B sent the following to help out Randy:

    First thing:

    losh> info mem

    and send back the NAND bad block information so we can see if they are blocks YAFFS marked bad, or are manufacturer bad blocks. From the thread, I think they are YAFFS bad blocks, and something he did may have tweaked them into a bad state. He's trying to use Linux - is he using YAFFS in Linux? If so, then which kernel and where can I find his YAFFS code he's using. It may be that the Linux YAFFS is conflicting with the YAFFS we use in LoLo(in regards to what a bad block mark is).

    If he wants to bring the blocks back, he can try(IIRC):

    losh> erase B0 B178 /dev/nand0 force

    to erase the NAND, and remark YAFFS-marked bad blocks as good. "info mem" at that point will tell what blocks are bad after the erase. If there are blocks marked bad by the manufacturer in that output, then he can try:

    losh> erase B0 B178 /dev/nand0 force force

    to *force* erasing the blocks, including manufacturer-marked bad blocks.
    >From experience, the NAND chip on the IMX31 will complain that the
    >erase
    failed on a manufacturer-marked bad block and remark them as manufacturer-marked bad, but he should write down the manufacturer-marked bad blocks before the step (or save the LoLo output)...

    Then try the "add-yaffs; mount" command and tell us if it still complains. It shouldn't since those blocks have been all erased.

    Hope this helps.
    You are not authorized to post a reply.