public inbox for ecos-devel@sourceware.org
 help / color / mirror / Atom feed
* packages to different memory sections
@ 2008-11-23 22:22 Martin Laabs
  2008-11-26 15:48 ` Lars Poeschel
  0 siblings, 1 reply; 2+ messages in thread
From: Martin Laabs @ 2008-11-23 22:22 UTC (permalink / raw)
  To: ecos-devel

Hi,

I have a board with a lpc2294. This processor has about 256kB of
fast internal flash. However - this is not enough. At least while
developement. I have plenty of flash at the external memory bus but
it has many waitstates.
Now I'd like to split ecos in two parts and say "HAL, Kernel and
Math"-Package in the fast internal flash, "ISO-C, Fat, zLib etc."-Packages
into the slow external flash.

Is this possible without too much handwork on the linker script?
(So not add every symbol per hand to the coresponding section.)

And if not - does the gnu-ld linker support two sections of the
same name or assignment of (i.e. the .text) segment to two differ-
ent memory regions? (So that I could use as well the internal as
the external flash for the .text segment.) The info page of ld
was not very informative about that.

Thank you,
 Martin L.

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

* Re: packages to different memory sections
  2008-11-23 22:22 packages to different memory sections Martin Laabs
@ 2008-11-26 15:48 ` Lars Poeschel
  0 siblings, 0 replies; 2+ messages in thread
From: Lars Poeschel @ 2008-11-26 15:48 UTC (permalink / raw)
  To: Martin Laabs; +Cc: ecos-devel

[-- Attachment #1: Type: text/plain, Size: 1528 bytes --]

Am 23.11.2008 um 23:21 schrieb Martin Laabs:

> Hi,
>
> I have a board with a lpc2294. This processor has about 256kB of
> fast internal flash. However - this is not enough. At least while
> developement. I have plenty of flash at the external memory bus but
> it has many waitstates.
> Now I'd like to split ecos in two parts and say "HAL, Kernel and
> Math"-Package in the fast internal flash, "ISO-C, Fat, zLib etc."- 
> Packages
> into the slow external flash.
>
> Is this possible without too much handwork on the linker script?
> (So not add every symbol per hand to the coresponding section.)

I don't know a way that could do it without much handwork.

> And if not - does the gnu-ld linker support two sections of the
> same name or assignment of (i.e. the .text) segment to two differ-
> ent memory regions? (So that I could use as well the internal as
> the external flash for the .text segment.) The info page of ld
> was not very informative about that.

Yes, this should be possible although I never did that. Please read
http://sourceware.org/binutils/docs/ld/Scripts.html#Scripts
I think I would solve that by mapping the same input sections to two  
different output sections seperating them by filename. - not very nice  
but should work.

Derived from the example I would write something like:
SECTIONS { 	
	.text : { *(.text) }
	.text1: {library.o(.text)}
	.data : { *(.data) }
	.bss : { *(.bss) } }
}

Also see:
http://sourceware.org/binutils/docs/ld/Input-Section-Example.html#Input-Section-Example


Lars

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 194 bytes --]

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

end of thread, other threads:[~2008-11-26 15:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-23 22:22 packages to different memory sections Martin Laabs
2008-11-26 15:48 ` Lars Poeschel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).