public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Michele De Candia (VT) <michele.decandia@valueteam.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] PATCH: bugfix for nand erase failure with bad blocks
Date: Wed, 17 Jun 2009 09:43:50 +0200	[thread overview]
Message-ID: <4A389EB6.4060808@valueteam.com> (raw)
In-Reply-To: <4A3898B5.8060309@valueteam.com>

Michele De Candia (VT) wrote:
> Scott Wood wrote:
>   
>> Wolfgang Denk wrote:
>>     
>>> Dear "Michele De Candia (VT)",
>>>
>>> In message <4A37F7BF.2090101@valueteam.com> you wrote:
>>>       
>>>>>> this patch fixes a bug for 'nand erase' command: when bad blocks 
>>>>>> are present into erasing area, they were skipped but the erased 
>>>>>> size was updated anyway.
>>>>>>             
>>>>> And what exactly is the bug in this behaviour?
>>>>>   
>>>>>           
>>>> I think that 'erase' should have the same behaviour of 'write' and 
>>>> 'read' commands: skip bad blocks until read/write size is reached. 
>>>> If you write a script that erases and then writes a NAND area and 
>>>> bad blocks are not skipped while erasing (as U-Boot actually does), 
>>>> the following 'write'  is successfully done but ECC checks fail on 
>>>> next read on the same area.
>>>>         
>>> I see - thanks for the explanation.
>>>
>>> Hm... actually I think the write should fail in such a case...
>>>
>>> Scott, what do you think?
>>>       
>> I think the current behavior is reasonable.  You're erasing a specific 
>> region of flash, not an amount needed to hold a certain amount of data.
>>
>>     
>  From this point of view you're in the right; maybe this would be 
> explained in 'README.nand' documentation or what do you think about add 
> ing an option to 'nand erase' command to consider 'size' field as the 
> effective blocks size to be erased and not as the area size?
>   
Moreover, I think that if you want to erase a specific NAND area, the 
correct way to use 'nand erase' command would be:

'nand erase start end'

If you want to erase  an area but you want to be sure that 'size' bytes 
were erased, you should use:

'nand erase off size'

In this case a bad block should be skipped and next block will be erased.

Obviously this behavior must be implemented.

What do you think about it?

>> While I can see the appeal of Michele's suggestion, I think it would 
>> be more error-prone as people trying to erase a region rather than 
>> just the size of data could erase too much.
>>
>> It definitely should not be an error to erase a region that happens to 
>> contain a bad block.  Bad blocks are expected and we need to work 
>> around them.
>>
>> -Scott
>>     
>
>
>   

  reply	other threads:[~2009-06-17  7:43 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-16 13:06 [U-Boot] PATCH: bugfix for nand erase failure with bad blocks Michele De Candia
2009-06-16 18:10 ` Wolfgang Denk
2009-06-16 19:51   ` Michele De Candia
2009-06-16 20:09     ` Wolfgang Denk
2009-06-16 20:19       ` Scott Wood
2009-06-17  7:18         ` Michele De Candia
2009-06-17  7:43           ` Michele De Candia [this message]
2009-06-17  7:44           ` Michele De Candia
2009-06-17 15:54             ` Scott Wood
2009-06-17 16:17               ` Michele De Candia
2009-06-17 22:04                 ` Scott Wood
2009-06-17 22:15                   ` Wolfgang Denk
2009-06-17 22:34                     ` Scott Wood
2009-06-19  7:01                       ` Michele De Candia
2009-06-17 22:11               ` Wolfgang Denk
2009-06-17  9:18         ` Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A389EB6.4060808@valueteam.com \
    --to=michele.decandia@valueteam.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox