[U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset

Scott Wood scottwood at freescale.com
Tue Jul 8 18:05:10 CEST 2008


Harald Welte wrote:
> On Mon, Jul 07, 2008 at 01:47:24PM -0500, Scott Wood wrote:
>> It works if you allow room for bad blocks within each partition, and treat
>> the environment as its own partition.  Current u-boot supports skipping bad
>> blocks within a desginated environment region.
> 
> which wastes a lot of space, if you have something like a 128kByte
> erase-block-size (like most 2kByte page size NAND's today)... so if you
> want to have redundancy and use some spare blocks you will end up with
> something on the order of 512kByte of wasted flash space to store a
> couple of hundreds of bytes environment.  Not very elegant.
> 
> Furthermore, if you want to make sure it always works with any of your
> components that are within the spec of the manufacturer, then you will
> waste even more.  The problem is that a new virgin component e.g. a
> 64MByte flash from Samsung  can have already as many as 1.3MBytes of bad
> blocks.

Fair enough...

> Therefore, I still believe that such a feature is useful and should be
> merged into u-boot.  If there are problems with my particular
> implementation, I'm happy to address them.

Can you base it off of the testing branch of the u-boot-nand-flash repo?

> I also have another patchset for what I call 'dynpart' support, i.e. the
> dynamic calculation of a unit-specific partition table that ensures the
> net size of partitions are as per spec, no matter how many of the
> factory default blocks are located where.  So it would even support
> NAND devices with a worse spec than the ones that we were using.

Interesting...  Would such a patch eliminate the need for this one, by 
making the environment a dynamic partition?  Is there any (plan for) 
Linux support?

-Scott




More information about the U-Boot mailing list