[ECOS] Using 2 RAM segments in eCos Application

Elad Yosef elad.yosef@gmail.com
Mon Mar 28 11:44:00 GMT 2011


Hi,
I have 2 RAM segments in my mips32 target.
The first range from 0x400 to 0x40000
The second from 0x400000 to 0x410000
I'm using the first as the TEXT RAM and the second is DATA RAM (Tested
cached and un-cached)
The sections in the TEXT RAM are:

    SECTION_ROMISC (ram, 0xA0000400, LMA_EQ_VMA)
    SECTION_RELOCS (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_init (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (ram, ALIGN (0x8), LMA_EQ_VMA)
    SECTION_rodata1 (ram, ALIGN (0x8), LMA_EQ_VMA)

The sections in the DATA RAM are:

    SECTION_data (ram_data, 0xA0400000, LMA_EQ_VMA)
    SECTION_data1 (ram_data, ALIGN (0x8), LMA_EQ_VMA)
    SECTION_eh_frame (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_ctors (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_dtors (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_devtab (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_got (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_dynamic (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_sdata (ram_data, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_lit8 (ram_data, ALIGN (0x8), LMA_EQ_VMA)
    SECTION_lit4 (ram_data, ALIGN (0x8), LMA_EQ_VMA)
    SECTION_sbss (ram_data, ALIGN (0x8), LMA_EQ_VMA)
    SECTION_bss (ram_data, ALIGN (0x8), LMA_EQ_VMA)
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
    SECTIONS_END


My application crash and prints to screen:
$T0025:00e70000;1d:901740a0;#1c

When I using only one RAM segment is works fine.

Any ideas?

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list