[U-Boot] mtd: nand: oob data structures taking up a lot of space

Scott Wood scottwood at freescale.com
Wed Dec 18 05:02:39 CET 2013


On Fri, 2013-12-13 at 21:11 -0800, Aaron Williams wrote:
> Hi all,
> 
> I am working on trying to shrink down a bootloader for one of our chips 
> where the bootloader must fit in around 448K of memory and things are 
> fairly tight. I found that the oob data structures for 8, 16, 64 and 128 
> bytes were taking up a fair amount of space. I had to increase the 
> eccpos size to 640 to match the Linux kernel since the existing size was 
> too small for some of the NAND devices we are working with.

This increase has already been done in top-of-tree U-Boot.

Note that (again with top-of-tree) you can override with a lower limit
to exactly match what your board requires.

> This caused each oob data structure to consume around 2.5K in the binary. By 
> initializing the layout data structures at runtime I was able to 
> eliminate most of the space taken since now the linker can place these 
> in BSS.

Yes, there's a lot of bloat in the NAND code -- both code and data --
that we could know at compile time is not going to get used for a
particular target.  Patches welcome.

-Scott




More information about the U-Boot mailing list