This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

6678 Use mcoreloder to load .out file to cores

Hi Using EVM6678 I have followed the instruction in http://processors.wiki.ti.com/index.php/BIOS_MCSDK_2.0_User_Guide#Example_2_-_Building_and_running_your_first_tasking_application_using_MCSDK_and_BIOS and build a simple project to blink led and using jtag it tun properly on core 1, but when i configure swithes to boot from NAND and use mcoreloader to load led_playbios.out file to core1 there is the following error: / # mcoreloader 1 /var/local/led_playbios.out ELF: ELF ELF file header entry point: c013dc0 << D L O A D >> ERROR: Failed to set target memory for segment. << D L O A D >> ERROR: Failed to allocate target memory for static executable. Failed to load file /var/local/led_playbios.out on core 1 what is the problem with my work? I use led_playbios.out directly from the output of build procedure in CCS, is it correct? is it any conversion needed to convert this .out file to .xe66> thanks

  • Hi

    Using EVM6678 I have followed the instruction in http://processors.wiki.ti.com/index.php/BIOS_MCSDK_2.0_User_Guide#Example_2_-_Building_and_running_your_first_tasking_application_using_MCSDK_and_BIOS

    and build a simple project to blink led and using jtag it tun properly on core 1, but when i configure swithes to boot from NAND and use mcoreloader to load led_playbios.out file to core1 there is the following error:

    / # mcoreloader 1 /var/local/led_playbios.out                                   
    ELF: ELF                                                                        
    ELF file header entry point: c013dc0                                            
    << D L O A D >> ERROR: Failed to set target memory for segment.                 
    << D L O A D >> ERROR: Failed to allocate target memory for static executable.  
    Failed to load file /var/local/led_playbios.out on core 1

    what is the problem with my work?

    I use led_playbios.out directly from the output of build procedure in CCS,  is it correct? is it any conversion needed to convert this .out file to .xe66>

    thanks

  • Hi, Dido,

    Sorry, I was out for a few days and also working on some other stuffs.

    By looking at the logs, I think you may have a conflict on the memory location. Please see the linux-c6x Release Notes, the following memory partitions are used and I believe the ELF entry point of 0x0c013dc0 stepped on area reserved for Syslink shared region.

    Memory partition information

    On C6670 and C6678, Linux NetCP driver uses a part of the MSMC memory. Similarly SysLink uses DDR and MSMC memory for Shared Region. Here are the memory range used...

    User    memory   Range
    ======================
    NetCP   MSMC     0x0C000000-0x0C003000
    SysLink MSMC     0x0C008000-0x0C0F8000 (For SharedRegion 0)
    Linux   DDR      0x80000000-0x8FFFFFFF (Managed by Linux on core 0, assumes mem=256M on command line)
    SysLink DDR      0X9FC00000-0x9FFFFFFF (For SharedRegion 1 and User specified SharedRegion)
    
  • Hi Rex

    I found the problem, It was because the project hase been created from an empty RTOS project.

    I created a new SYS/BIOS project and paste codes for blinking LEDs, and the result .out file successfully loaded using mcoreloader.

    I attached the full project in this post hopefully be useful for others.

    thans a lot,

    Dido