Reducing RTEMS size to <32KB to fit in Epiphany local memories
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Dec 18 07:58:53 UTC 2014
Hello,
is this 32KiB for code and data?
You should also disable the Newlib reentrancy:
#define CONFIGURE_DISABLE_NEWLIB_REENTRANCY
Try to add:
CFLAGS_OPTIMIZE_V += -ffunction-sections -fdata-sections
LDFLAGS = -Wl,--gc-sections
to the *.cfg file of the BSP. You need a proper linker command file to
use these options.
Avoid printf() and instead use printk() or no output.
For a really small RTEMS we need the constructor based initialization.
We should probably also get rid of the workspace and use static
initialization only.
On 17/12/14 17:00, Hesham Moustafa wrote:
> Hi all,
>
> I am working on reducing RTEMS size to fit into <32KB as every Epiphay
> core has only 32KB of local memory. I was able to get hello and
> minimum samples with aggressive size reduction by manually removing
> un-needed code. Currently I only use libcsupport, sapi, score, rtems
> built for cpukit only, and for each, some source code files were
> removed. No IO, no FS, no barrier, event, managers are included. And I
> added -Os flag. However when building ticker, the .text area overflows
> the 32KB local memory by about 8KB.
>
> The question is, what are the very basic mandatory sources/libraries
> and/or managers that are enough to build ticker?
>
> Regards,
> Hesham
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the devel
mailing list