This is the mail archive of the ecos-devel@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: packages to different memory sections


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: PGP.sig
Description: This is a digitally signed message part


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]