[PATCH] image and bss size decrease
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Sat Mar 9 13:38:06 EST 2013
On Mar 9, 2013, at 6:53 PM, Sascha Hauer <s.hauer at pengutronix.de> wrote:
> This series decreases the image size and bss size a bit. First
> we make malloc available in all initcalls by moving the malloc
> pool initialization before start_barebox().
>
> We then decrease the image size by making some statically initialized
> structs smaller. struct command has a struct list_head member
> which can be removed by wrapping the static struct command into
> a dynamically initialized one which contains the list_head. Also
> the embedded struct device_d in struct bus_type is removed in
> favour for a dynamically allocated one.
>
> Also we make the bss smaller by allocating the FILE table and
> the gpio_desc table dynamically. The bss size is may become
> a problem on boards which run from SRAM. Here the malloc pool
> is in the big SDRAM area, but the bss is in SRAM, so it makes
> sense to move the big tables from bss to SDRAM by using malloc.
>
How much less
IIRC I try this too but with PBL it's bigger
Best Regards,
J.
> Sascha
>
> ----------------------------------------------------------------
> Sascha Hauer (10):
> mips: initialize malloc pool before start_barebox()
> nios: initialize malloc pool before start_barebox()
> openrisc: initialize malloc pool before start_barebox()
> blackfin: initialize malloc pool before start_barebox()
> x86: initialize malloc pool before start_barebox()
> bus: Make struct device a pointer
> command: remove list_head from struct command
> command: remove statically initialized aliases
> fs: allocate FILE table dynamically
> gpio: allocate gpio_desc table dynamically
>
> arch/blackfin/cpu-bf561/start.S | 4 +--
> arch/blackfin/lib/board.c | 6 ++--
> arch/mips/boot/main_entry.c | 5 ++++
> arch/mips/lib/Makefile | 1 -
> arch/mips/lib/memory.c | 29 --------------------
> arch/nios2/cpu/start.S | 4 +--
> arch/nios2/lib/board.c | 8 ++----
> arch/openrisc/cpu/start.S | 2 +-
> arch/openrisc/lib/board.c | 7 ++---
> arch/x86/boot/main_entry.c | 4 +--
> arch/x86/lib/memory.c | 7 ++---
> commands/edit.c | 8 ++++--
> commands/help.c | 16 +++++++----
> commands/test.c | 8 ++++--
> common/command.c | 61 +++++++++++++++++++++--------------------
> common/complete.c | 12 ++++----
> common/hush.c | 7 +++--
> common/module.c | 2 +-
> drivers/base/bus.c | 7 +++--
> drivers/base/driver.c | 2 +-
> drivers/gpio/gpio.c | 11 +++++++-
> fs/fs.c | 11 +++++---
> include/command.h | 25 +++++++++++------
> include/driver.h | 2 +-
> 24 files changed, 126 insertions(+), 123 deletions(-)
> delete mode 100644 arch/mips/lib/memory.c
>
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
More information about the barebox
mailing list