This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Problem with memory layout (.ldi file)
- From: John Dallaway <john at dallaway dot org dot uk>
- To: Himanshu Patel <himanshup at aftek dot com>
- Cc: eCos Discuss <ecos-discuss at ecos dot sourceware dot org>
- Date: Fri, 03 Apr 2009 08:16:45 +0100
- Subject: [ECOS] Re: Problem with memory layout (.ldi file)
- References: <555EEEF90D6A464193A4558107108CF9DF19C5@exbm.aftekpune.com>
Hi Himanshu
Himanshu Patel wrote:
> We are porting eCos onto board with LPC2458 processor. The board has
> segmented RAM memory speared across 32-bit address space.
>
> Segment 1: start address 0x40000000, Length = 0xFFE0
> Segment 2: Start address 0x7FE00000, Length = 0x4000
>
> We want to have .bss section mapped in section (Segment 1) and data and
> heap to be mapped in section(Segment 2). We tried to modify the .ldi and
> .h file. However we are getting error (heap.cxx: invalid operands of
> type "int" and "char" to binary operator).
A copy of the precise error message in context would help.
> SECTION_bss (sram, 0x40000540, FOLLOWING(.fixed_vectors))
The .bss section is not relocated from ROM, so the third parameter
should be LMA_EQ_VMA in the above line.
> .h file:
> #define CYGMEM_REGION_sram (0x40000000)
> #define CYGMEM_REGION_sram_SIZE (0x0000FFE0)
> #define CYGMEM_REGION_sram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
You should add similar definitions to the .h file for memory region sram2.
I hope this helps
John Dallaway
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss