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.

A problem with c6678 NDK exaples

Other Parts Discussed in Thread: SYSBIOS

Hi

I have an evaluation board and I want to run NDK examples on this board. but when I load ".out" file on core 0, this core runs directly. 

Also I load "evmc6678l.gel" on core 0 and initialize DDR3 successfully but I don't know why this core runs directly. What I must do for resolve this problem?

  • Hi,

    Are you using the default .out or newly built  by you ?
    What is your MCSDK version ?
    Can you rebuild the NDK example on your PC and try ?

  • Hi Titusrathinaraj

    I am using the default "client.out" and mcsdk_2_01_02_06. The default "client.out" not worked but when I rebuild that, works sometimes. What is the problem in default .out which needs rebuilding?

  • Hi,
    I think, default client.out could be built with different CCS/SYSBIOS version etc., so it may not work on your setup.
    When you rebuild with your CCS and SYSBIOS settings, its working.

    Please refer to the following TI wiki page.

  • Thanks for your good helps.
    I have a custom 6678 board too that I want to load client project on this board. In my board I set 250MHz clock for SRIOSGMIICLK instead of 312.5MHz. I changed register SGMII_SERDES_CFGPLL to 0x00000051 instead of default value(0x00000041). Is this value right?
    Also I don't use DDR3. For this reason I exchange all of DDR section to MCSDRAM in "linker.cmd" that I do not know is this right or not?
  • Hi,

    I have a custom 6678 board too that I want to load client project on this board. In my board I set 250MHz clock for SRIOSGMIICLK instead of 312.5MHz. I changed register SGMII_SERDES_CFGPLL to 0x00000051 instead of default value(0x00000041). Is this value right?

    Yes, the value is correct for 250MHz.


    Also I don't use DDR3. For this reason I exchange all of DDR section to MCSDRAM in "linker.cmd" that I do not know is this right or not?

    I'm not sure about this, since the .out file could be more than MSMCRAM size.
  • Thanks so much

    When I want load my custom .out file on core 0 with the conditions that I mentioned, This core runs directly. Could this problem for MSMCRAM size? I tested helloworld project which has shorter size too but I have the same problem on my board.

  • Hi,

    Try the following configuration settings.

    /* This is the default memory heap. */
    Memory.defaultHeapInstance = Program.global.heap0;
    Program.sectMap["sharedL2"] = "MSMCSRAM";
    Program.sectMap["systemHeap"] = "MSMCSRAM";
    Program.sectMap[".sysmem"] = "MSMCSRAM";
    Program.sectMap[".args"] = "MSMCSRAM";
    Program.sectMap[".cio"] = "MSMCSRAM";
    Program.sectMap[".far"] = "MSMCSRAM";
    Program.sectMap[".rodata"] = "MSMCSRAM";
    Program.sectMap[".neardata"] = "MSMCSRAM";
    Program.sectMap[".cppi"] = "MSMCSRAM";
    Program.sectMap[".init_array"] = "MSMCSRAM";
    Program.sectMap[".qmss"] = "MSMCSRAM";
    Program.sectMap[".cinit"] = "MSMCSRAM";
    Program.sectMap[".bss"] = "MSMCSRAM";
    Program.sectMap[".const"] = "MSMCSRAM";
    Program.sectMap[".text"] = "MSMCSRAM";
    Program.sectMap[".code"] = "MSMCSRAM";
    Program.sectMap[".switch"] = "MSMCSRAM";
    Program.sectMap[".data"] = "MSMCSRAM";
    Program.sectMap[".fardata"] = "MSMCSRAM";
    Program.sectMap[".args"] = "MSMCSRAM";
    Program.sectMap[".cio"] = "MSMCSRAM";
    Program.sectMap[".vecs"] = "MSMCSRAM";
    Program.sectMap["platform_lib"] = "MSMCSRAM";
    Program.sectMap[".far:taskStackSection"] = "L2SRAM";
    Program.sectMap[".stack"] = "L2SRAM";
    Program.sectMap[".nimu_eth_ll2"] = "L2SRAM";
    Program.sectMap[".resmgr_memregion"] = {loadSegment: "L2SRAM", loadAlign:128}; /* QMSS descriptors region */
    Program.sectMap[".resmgr_handles"] = {loadSegment: "L2SRAM", loadAlign:16}; /* CPPI/QMSS/PA Handles */
    Program.sectMap[".resmgr_pa"] = {loadSegment: "L2SRAM", loadAlign:8}; /* PA Memory */
    Program.sectMap[".far:IMAGEDATA"] = {loadSegment: "L2SRAM", loadAlign: 8};
    Program.sectMap[".far:NDK_OBJMEM"] = {loadSegment: "L2SRAM", loadAlign: 8};
    Program.sectMap[".far:NDK_PACKETMEM"] = {loadSegment: "L2SRAM", loadAlign: 128};
  • Hi

    When I want to change memory address, I change "linker.cmd" directly that I think it is not good work. Actually I do not know where I must import the configuration settings which you sent(in which file?).
  • You could see some *.cfg file in your project where you have to put those lines or you could see similar code.
    Kindly check and let me know.
    If possible, you can attach the code or email to me, I will also try and let update the just .out here to try.

    TItus's Email -> x0213399@ti.com

    Else, give a friend request to chat in offline.

  • Hi Titus 
    Thanks for your good helps and responsibility 
    I found client.cfg and added the code which you gave to me but it not work again and I don't have any idea for solving this problem. When I load client.out to core 0, this core runs directly and I do not know why? I sent my custom board's schematic at the following. Can you check Ethernet section? Also I don't consider DDR3 and I use 250MHz clock instead of 312.5MHz for ethernet section.