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.

CCS/PROCESSOR-SDK-AM65X: Target configuration issue

Part Number: PROCESSOR-SDK-AM65X
Other Parts Discussed in Thread: OMAPL138

Tool/software: Code Composer Studio

Hi

I have some questions 

I want to build the "csl_epwm_duty_cycle_test_app" ,and use follow the article "

"

And I load the  Program"packages\ti\binary\csl_epwm_duty_cycle_test_app\bin\am65xx_evm\csl_epwm_duty_cycle_test_app_mpu1_0_release.xa53fg " into Target A53_0_0 

but it show MCU_PULSAR_Cortex_R5_0: AutoRun: Target not run as the symbol "main" is not defined in Console

how should i modify the configuration ?

  • Hi,

    I observe something slightly different when I attempt to load this example to A53_0_0:

    CortexA53_0_0: AutoRun: Target not run as the symbol "main" is not defined

    Nevertheless I think there is a build problem for this example. I'm checking into the cause of this problem, and I'll get back with you shortly.

    Regards,
    Frank

  • Hi,

    I think there is a bug in the make file for the PWM example. I compared the make files for CSL examples csl_crc_cputest_app & csl_epwm_duty_cycle_test_app. I discovered some omissions for the make file for csl_epwm_duty_cycle_test_app. I've attached the updated make file. Can you please see if this work for you? Also please let me know if the problem is solved so I can integrate this change into the PRSDK.

    Regards,
    Frank

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/791/1072.makefile

  • HI Frank

    Thank your response ,I can start the target on A53  now

    But it will crash/stack when entering the function CSL_epwmTbTimebaseClkCfg/ CSL_epwmTbPwmFreqCfg(epwm_app.c line 402~405)

  • Hi Tsai,

    I'll need to check into this and get back with you.

    Regards,
    Frank

  • Hi Frank 

    It stops at the address "Intc_AbortHandler at interrupt.c:484 0x700013F0"

    it is in Memory Map : "COMPUTE_CLUSTER0_MSMC_SRAM"

    Is the MSMC problem ?

    thank

  • Hi Tsai,

    I see the same problem. I'm taking a quick look at the issue now.

    Regards,
    Frank

  • Hi Tsai,

    The failure occurs in CSL_epwmTbTimebaseClkCfg() on this line:

    regVal = HW_RD_REG16((baseAddr + PWMSS_EPWM_OFFSET) + PWMSS_EPWM_TBCTL);

    I observe the following:

    baseAddr=0x0300_0000 : this looks correct
    PWMSS_EPWM_OFFSET=0x200 : this looks incorrect
    PWMSS_EPWM_TBCTL=0x0 : this looks correct

    So the 16-bit read of PWMSS_EPWM_TBCTL occurs at address 0x0300_0200, which is incorrect. The correct address for this register is 0x0300_0000.

    Browsing through the code, I see this:

    grep -rI -n -i --regexp="PWMSS_EPWM_OFFSET" --include "*.h"
    ti/csl/src/ip/epwm/V0/hw_pwmss_submodule_offsets.h:55:#define PWMSS_EPWM_OFFSET (0x200U)
    ti/csl/src/ip/epwm/V0_1/hw_pwmss_submodule_offsets.h:55:#define PWMSS_EPWM_OFFSET (0x0U)

    Next, I observe this in <PDK>\packages\ti\csl\src\ip\epwm\hw_pwmss_submodule_offsets.h:

    #if defined (SOC_AM574x) || defined (SOC_TDA2XX) || defined (SOC_TDA2PX) || defined (SOC_TDA2EX) || defined (SOC_TDA3XX) || defined (SOC_DRA72x) || defined (SOC_DRA75x) || defined (SOC_DRA78x) || defined (SOC_AM437x) || defined (SOC_AM572x) || defined (SOC_AM571x) || defined(SOC_AM335x) || defined (SOC_AM65XX) || defined (SOC_J721E) || defined (SOC_J7200)
    #include <ti/csl/src/ip/epwm/V0/hw_pwmss_submodule_offsets.h>
    #elif defined (SOC_K2G) || defined (SOC_OMAPL137) || defined (SOC_OMAPL138)
    #include <ti/csl/src/ip/epwm/V0_1/hw_pwmss_submodule_offsets.h>
    #endif

    Hence it appears the wrong header file is being included for this example for AM65XX. When I move the "defined (SOC_AM65XX)" to include <ti/csl/src/ip/epwm/V0_1/hw_pwmss_submodule_offsets.h>, this particular problem doesn't occur. However, I don't know if this results in working code.

    I think these issues qualify as bugs for this example, so I'll file a bug report. If the example still doesn't work after these modifications you'll need to debug it on your own.

    Regards,
    Frank