public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] mtd: nand: oob data structures taking up a lot of space
@ 2013-12-14  5:11 Aaron Williams
  2013-12-18  4:02 ` Scott Wood
  0 siblings, 1 reply; 2+ messages in thread
From: Aaron Williams @ 2013-12-14  5:11 UTC (permalink / raw)
  To: u-boot

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 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.

-Aaron

-- 
Aaron Williams
Software Engineer
Cavium, Inc.
(408) 943-7198  (510) 789-8988 (cell)

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [U-Boot] mtd: nand: oob data structures taking up a lot of space
  2013-12-14  5:11 [U-Boot] mtd: nand: oob data structures taking up a lot of space Aaron Williams
@ 2013-12-18  4:02 ` Scott Wood
  0 siblings, 0 replies; 2+ messages in thread
From: Scott Wood @ 2013-12-18  4:02 UTC (permalink / raw)
  To: u-boot

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-12-18  4:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-14  5:11 [U-Boot] mtd: nand: oob data structures taking up a lot of space Aaron Williams
2013-12-18  4:02 ` Scott Wood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox