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]

Crashing eCos application


hi all,
I'm using MIPS32 4KEc and developed this application on 1 RAM segment
starting at 0x8000:0000 (and that's works great).
Now due to RAM addition I want to separate the I-RAM and D-RAM.
I have edited the linker script file (ram is the I-RAM & ram_data is D-RAM):

MEMORY
{
    ram_vectors : ORIGIN = 0x80000000, LENGTH = 0x200
    ram : ORIGIN = 0x80000400, LENGTH = 0x3fc00 //limit to 256K 0x4fc00 -is 320k
    ram_data : ORIGIN = 0x80400000, LENGTH = 0x20000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_rom_vectors (ram_vectors, 0x80000000, LMA_EQ_VMA)
    SECTION_ROMISC (ram, 0x80000400, 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)
    SECTION_data (ram_data, 0x80400000, 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
}

Now I have eCos application that crashes when I separate the
instructions and data into 2 separate RAM segments.
It crashes during the start-up in the CTOR stage when calling:

_GLOBAL__I.11100__ZN18Cyg_HardwareThread12thread_entryEP10Cyg_Thread


(In addition I checked the option to run the application with
non-cached D-RAM and this option works (but not valid for me))

Help ? please

Thanks
Elad

-- 
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]