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.

How to reconfigure QMSS/CPPI and BIOS

Hi,

I am working on TDMX6670 EVM board.

The board is operating in network boot mode.

Code is loaded on core0 and it setup tcp/ip(base on code from MCSDK/ client project).

And it loads other code for core1/2/3 by tftp and execute them successly currently.

(sample code for core 1/2/3 does not use specail coprocessor now).

In this case, the example code (on core1,2,3) does not include qmss/cppi use.

But in target system, codes on core1,2,3 should use QMSS/CPPI with BIOS.

The code is derived from PDK_C6670_1_1_2_6/packages/ti/drv/exampleProject/PA_multicoreExample_exampleProject.

I think that in order to run that code, it is necessary to reconfig(or reset) qmss/cppi/pa and others.

(Previously core 0 run TCP/IP on qmss/cppi/pa)

Where could i start ?

I cannot find qmss/cppi/pa reconfig(restart) example anywhere.

Sincerely yours.

EmbedHolic.

  • Hi,

    Refer the section "TFTP Boot" in the below wiki page, 
    http://processors.wiki.ti.com/index.php/BIOS_MCSDK_2.0_User_Guide#Intermediate_Boot_Loader_.28IBL.29_and_Examples

  • Um..

    I have coded second bootloader for other cores.

    and the bootloader loads codes for other cores via tftp and is done successfully.

    The 2nd bootloader is based on client project from MCSDK with NDK library.

    Finally what i want to implement is ,

    Data communication using PA which is derived from PDK_C6670_1_1_2_6/packages/ti/drv/exampleProject/PA_multicoreExample_exampleProject.

    The bootloader(2nd) initialized the qmss and cppi already.

    PA_multicoreExample_exampleProject initializes qmss/cppi/PA LLD/CPSW also.

    Summary is as follow..

    1. DSP run in net boot.

    2. Host send 2nd bootloader to DSP.

    3. DSP run 2nd bootloader 

    3.1 tftp code for core1,core2,core3.

    ------- above procedure is done and run OK.

    3.2 reinit qmss/cppi/PA/CPSW on core 0 and maybe restart BIOS.

    3.3 execute codes on core1/2/3

    I wanna stop netcp for TCP/IP and use them as PA_multicoreExample_exampleProject syle code.

    Thansk.

    EmbedHolic

  • Um..

    I have coded second bootloader for other cores.

    and the bootloader loads codes for other cores via tftp and is done successfully.

    The 2nd bootloader is based on client project from MCSDK with NDK library.

    Finally what i want to implement is ,

    Data communication using PA which is derived from PDK_C6670_1_1_2_6/packages/ti/drv/exampleProject/PA_multicoreExample_exampleProject.

    The bootloader(2nd) initialized the qmss and cppi already.

    PA_multicoreExample_exampleProject initializes qmss/cppi/PA LLD/CPSW also.

    Summary is as follow..

    1. DSP run in net boot.

    2. Host send 2nd bootloader to DSP.

    3. DSP run 2nd bootloader 

    3.1 tftp code for core1,core2,core3.

    ------- above procedure is done and run OK.

    3.2 reinit qmss/cppi/PA/CPSW on core 0 and maybe restart BIOS.

    3.3 execute codes on core1/2/3

    I wanna stop netcp for TCP/IP and use them as PA_multicoreExample_exampleProject syle code.

    Thansk.

    EmbedHolic

  • Hi,

    I am not the expert for bootloader. But the bootloader may contain some initialization of the peripheral. When you use application code requires like init of QMSS, PKTDMA, CPSW and PA.
    You need to reset the PA, is my understanding correct? There is no reinit API call, so you should take care once restart the application and again configure the modules.