This is the mail archive of the ecos-discuss@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: Problem with memory layout (.ldi file)


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


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