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.

AM2432: cannot load program into PRU

Part Number: AM2432
Other Parts Discussed in Thread: AM5726, SYSCONFIG

Tool/software:

ICSS_G1_PRU_0: File Loader: Verification failed: Values at address 0x0000000D@Data_Memory do not match Please verify target memory and memory map.
ICSS_G1_PRU_0: GEL: File: C:\working\dd3s_workspace\test_c\Debug\test_c.out: a data verification error occurred, file load failed.

I loaded the same (!) binary into am5726 (!) without any problem.

  • Hi,

    The side loading feature is supported by AM243x as well, but it needs the PRU clocks to be setup before the .out file can be loaded onto it. We can enable this by having some example running on R5 core which initializes the PRU clocks. For that, you might have to add PRU IO module in syscfg in the example you are running in R5 core. Another option is to enable PRU in the DMSC core. 

    Can you please provide more information on which version of MCU+ SDK is being used? This will help us provide better suited solution based on the features enabled in the SDK.

    Regards,
    Teja.

  • Hi

    We use ind_comms_sdk_am243x_09_01_00_03.

    Here is part of main,

    int main(void)
    {
    /* init SOC specific modules */
    System_init();
    Board_init();
    Drivers_open();
    Board_driversOpen();


    gPruIcss0Handle = PRUICSS_open(CONFIG_PRU_ICSS1);
    /*
    * Each s represents memory size
    */
    volatile int s0 = PRUICSS_initMemory(gPruIcss0Handle, PRUICSS_DATARAM(PRUICSS_PRU0));
    volatile int s1 = PRUICSS_initMemory(gPruIcss0Handle, PRUICSS_DATARAM(PRUICSS_PRU1));

    volatile int s2 = PRUICSS_initMemory(gPruIcss0Handle, PRUICSS_IRAM_PRU(PRUICSS_PRU0));
    volatile int s3 = PRUICSS_initMemory(gPruIcss0Handle, PRUICSS_IRAM_PRU(PRUICSS_PRU1));

    volatile int s4 = PRUICSS_initMemory(gPruIcss0Handle, PRUICSS_SHARED_RAM);

    ....

    }

    I tried to add PRU GPIO into sysconfig. It did not help.

    Other thoughts ?

    Thanks

    Rasty

  • Hi Rasty,

    This looks like valid configuration. Please let me check with out experts for next steps in understanding the issue. I will update the thread in 2 days regarding the details.

    Regards,
    Teja.

  • Hi Rasty,

    Can you please share the linker.cmd file and the corresponding map file of the application to understand the system better?

    Thanks and regards,
    Teja.

  • Hi Rasty,

    We are looking into the issue and trying to reproduce the issue on our end. Meanwhile, can you please let us know why the ".stack" component is commented out in the linker.cmd file? It is expected to be present and available to the application. Please let us know more details about this for better understanding.

    Thanks and regards,
    Teja.

  • Hi,

    Commented by mistake I'll use stack in the future.

    Meanwhile the problem is mismatch at address 0x19. As Shown at the picture, Please help me to undertand why debugger complains about mismatch.

  • Hi Rasty,

    We are working on replicating the issue on our side. Please let us go through this error, and the debugger warning to understand the cause of the issue. 

    Please allow me 2 working days to come back with results.

    Thanks and regards,
    Teja.