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.

AM4372: About Memory Mapping of AM437x's Gel file

Part Number: AM4372

Hi everyone,

Does sk_am437x.gel call GEL_MapAdd()?
C:\ti\ccsv7\ccs_base\emulation\boards\sk_am437x\gel

I could not find a place calling this function.

When reading the following manuals, I think that it is necessary to use GEL_MapAdd() to access OCMCRAM(0x40300000).
www.ti.com/.../spraa74a.pdf

After the sk_am437x board is connected by CCS, OCMCRAM can be accessed from the CCS memory window.
Why is the device accessible there?

Best regards,
Sasaki

  • Hi Sasaki,

    The spraa74a user guide is 14 years old and might not been up to date with all the new CCS features. Seems that for AM437x device, GEL_MapAdd() or GEL_MapAddStr() is not needed. I see we have full test including EDMA, DDR RAM and SRAM in below file:

    ti\ccsv7\ccs_base\emulation\boards\sk_am437x\gel\AM43xx_EMIFconfig_HWlvl.gel

    //#########################################################################
    //EDMA tests for DDR
    //#########################################################################


    #define INT_SRAM_BASE_ADDR 0x00300000
    #define L3_OFFSET_ADDR 0x40000000
    #define CPU_OFFSET_ADDR 0x40000000

    memWrite(0x40300000, 0x100, 0);

    edmaConfigure(DDR_BASE_ADDR, (INT_SRAM_BASE_ADDR+L3_OFFSET_ADDR), DMA_SIZE, queuqePri);
    compare((INT_SRAM_BASE_ADDR+CPU_OFFSET_ADDR), DMA_SIZE, pattern);
    memWrite(((INT_SRAM_BASE_ADDR+CPU_OFFSET_ADDR)+4*DMA_SIZE), DMA_SIZE, pattern);

    Regards,
    Pavel
  • Hi Pavel-san,

    Thank you for your support.

    Is it OK to think that Read / Write to memory is permitted at debugging with AM437x default setting?

    In other words, can I think that AM437x does not need to set memory mapping with gel?

    Best regards,

    Sasaki

  • Sasaki,

    Yes, from what I was able to find, AM437x OCMC RAM does not need to be memory mapped with GEL_MapAdd() to be working fine.

    The only AM437x memory that need to be mapped with GEL_MapAdd() is inside the PRU-ICSS subsystem, check below GEL files:

    ti\ccsv7\ccs_base\emulation\gel\AM437x_PRU_ICSS0_local.gel
    ti\ccsv7\ccs_base\emulation\gel\AM437x_PRU_ICSS1_local.gel

    Regards,
    Pavel
  • Hi Pavel-san,

    Thank you for your support.
    I got it.

    Best regards,
    Sasaki