AUDIO-AM62D-EVM: CCS Project Build Issue on AM62Dx (AUDIO-AM62D-EVM)

Part Number: AUDIO-AM62D-EVM
Other Parts Discussed in Thread: SYSCONFIG, AM62D-Q1

Tool/software:

When I try to build the Hello World – C7x proj ect, I encounter the issue shown in the screenshot. However, when I build and run the A53 project, I don’t face any issues.

  • Hi 

    Which version of SDK are you using?

    Regards,

    Tushar

  • I’m using SDK 11, and I encounter an error when I click Start Projectless Debug in the Target Configuration.

  • The error below is thrown by CCS when the device driver is unable to communicate with the JTAG debugger either via USB or Ethernet.

    Please refer host-connection-error for details.

  • When I run the A53 project, it builds successfully. However, when I run the Hello World project of the mcu-r5fss0, I encounter this error. Please do the needful




  • Please check the project properties for the both the project. Looks like you are using older version of Sysconfig from what is recommended to use.

  • am using SDK version 11, CCS 20.2.0, and SysConfig 1.23.
    I have attached a screenshot for SysConfig clarification.

    I can successfully build the A53 project, but I am unable to build the C75 and MCU-R5F projects.
    Moreover, when I attempt to debug the A53 project, it throws an error.

    I have been struggling with this issue for a long time and would appreciate your support at the earliest possible.
    For your reference, I have also attached a screenshot of the error.




     

  • , but I am unable to build the C75 and MCU-R5F projects.

    Please check the properties of this project. 

    Right click on the project and open properties. Navigate General -> Dependencies.

  • Moreover, when I attempt to debug the A53 project, it throws an error.

    Are you directly clicking the debug option for the project? This will not work.

    Please refer below video to see, how to debug the application for AM62D on CCS.







  • I am using SDK 11.0.0.17 and SysConfig 1.24. Previously, I was able to clean and build the A53 project successfully. However, it now fails even during the build process and throws an error. I have attached a screenshot of the error for your reference. Current I changed to sysconfig 1.24.0.

  • Please share the example.syscfg file of the project for analysis.

  • For c7x

    /**
    * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
    * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
    * @cliArgs --device "AM62Dx" --package "AMB" --part "Default" --context "c75ss0-0" --product "AM62Dx_FREERTOS_SDK@11.00.00"
    * @versions {"tool":"1.18.0+3266"}
    */

    /**
    * Import the modules used in this configuration.
    */
    const debug_log = scripting.addModule("/kernel/dpl/debug_log");
    const mmu_armv8 = scripting.addModule("/kernel/dpl/mmu_armv8", {}, false);
    const mmu_armv81 = mmu_armv8.addInstance();
    const mmu_armv82 = mmu_armv8.addInstance();
    const mmu_armv83 = mmu_armv8.addInstance();
    const mmu_armv84 = mmu_armv8.addInstance();
    const mmu_armv85 = mmu_armv8.addInstance();
    const mmu_armv86 = mmu_armv8.addInstance();
    const mmu_armv87 = mmu_armv8.addInstance();
    const mmu_armv88 = mmu_armv8.addInstance();
    const mmu_armv89 = mmu_armv8.addInstance();
    const mmu_armv810 = mmu_armv8.addInstance();

    /**
    * Write custom configuration values to the imported modules.
    */
    debug_log.enableUartLog = true;
    debug_log.uartLog.$name = "CONFIG_UART0";
    debug_log.uartLog.useMcuDomainPeripherals = true;

    mmu_armv81.size = 0x20000000;
    mmu_armv81.$name = "REGISTER_REGION_0";

    mmu_armv82.vAddr = 0x20000000;
    mmu_armv82.pAddr = 0x20000000;
    mmu_armv82.size = 0x20000000;
    mmu_armv82.$name = "REGISTER_REGION_1";

    mmu_armv83.vAddr = 0x40000000;
    mmu_armv83.pAddr = 0x40000000;
    mmu_armv83.size = 0x20000000;
    mmu_armv83.$name = "REGISTER_REGION_2";

    mmu_armv84.vAddr = 0x60000000;
    mmu_armv84.pAddr = 0x60000000;
    mmu_armv84.size = 0x10000000;
    mmu_armv84.$name = "FSS0_DAT_REGION";

    mmu_armv85.vAddr = 0x7C200000;
    mmu_armv85.pAddr = 0x7C200000;
    mmu_armv85.$name = "CLEC";
    mmu_armv85.size = 0x100000;

    mmu_armv86.$name = "DRU";
    mmu_armv86.vAddr = 0x7C400000;
    mmu_armv86.pAddr = 0x7C400000;
    mmu_armv86.size = 0x100000;

    mmu_armv87.vAddr = 0x80000000;
    mmu_armv87.pAddr = 0x80000000;
    mmu_armv87.size = 0x20000000;
    mmu_armv87.attribute = "MAIR7";
    mmu_armv87.$name = "DDR_0";

    mmu_armv88.vAddr = 0xA0000000;
    mmu_armv88.pAddr = 0xA0000000;
    mmu_armv88.size = 0x20000000;
    mmu_armv88.attribute = "MAIR7";
    mmu_armv88.$name = "DDR_1";

    mmu_armv89.vAddr = 0xAA000000;
    mmu_armv89.pAddr = 0xAA000000;
    mmu_armv89.size = 0x2000000;
    mmu_armv89.attribute = "MAIR4";
    mmu_armv89.$name = "DDR_2";

    mmu_armv810.$name = "CCS_DEBUG_LOG_MEM";
    mmu_armv810.vAddr = 0x99C10000;
    mmu_armv810.pAddr = 0x99C10000;
    mmu_armv810.size = 0x1000;
    mmu_armv810.attribute = "MAIR4";

    /**
    * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
    * version of the tool will not impact the pinmux you originally saw. These lines can be completely deleted in order to
    * re-solve from scratch.
    */
    debug_log.uartLog.MCU_UART.$suggestSolution = "MCU_USART0";
    debug_log.uartLog.MCU_UART.RXD.$suggestSolution = "MCU_UART0_RXD";
    debug_log.uartLog.MCU_UART.TXD.$suggestSolution = "MCU_UART0_TXD";

  • For A53


    /**
    * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
    * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
    * @cliArgs --device "AM62Dx" --part "AM62D24-G" --package "ANF" --context "a53ss0-0" --product "AM62Dx_FREERTOS_SDK@11.00.00"
    * @v2CliArgs --device "AM62D-Q1" --package "FCBGA (ANF)" --variant "AM62D24-G" --context "a53ss0-0" --product "AM62Dx_FREERTOS_SDK@11.00.00"
    * @versions {"tool":"1.22.0+3893"}
    */

    /**
    * Import the modules used in this configuration.
    */
    const debug_log = scripting.addModule("/kernel/dpl/debug_log");
    const mmu_armv8 = scripting.addModule("/kernel/dpl/mmu_armv8", {}, false);
    const mmu_armv81 = mmu_armv8.addInstance();
    const mmu_armv82 = mmu_armv8.addInstance();
    const mmu_armv83 = mmu_armv8.addInstance();
    const mmu_armv84 = mmu_armv8.addInstance();

    /**
    * Write custom configuration values to the imported modules.
    */
    debug_log.enableUartLog = true;
    debug_log.enableSharedMemLogReader = true;
    debug_log.uartTrace = true;
    debug_log.uartLog.$name = "CONFIG_UART_CONSOLE";
    debug_log.uartLog.UART.$assign = "USART0";

    mmu_armv81.size = 0x80000000;
    mmu_armv81.$name = "SOC_MEM_REGION";

    mmu_armv82.vAddr = 0x80000000;
    mmu_armv82.pAddr = 0x80000000;
    mmu_armv82.attribute = "MAIR7";
    mmu_armv82.$name = "DDR_REGION";
    mmu_armv82.size = 0x2000000;

    mmu_armv83.$name = "LOG_SHM_MEM";
    mmu_armv83.vAddr = 0xA1000000;
    mmu_armv83.pAddr = 0xA1000000;
    mmu_armv83.size = 0x40000;
    mmu_armv83.attribute = "MAIR4";

    mmu_armv84.$name = "AMP_SHM";
    mmu_armv84.vAddr = 0x99000000;
    mmu_armv84.pAddr = 0x99000000;
    mmu_armv84.size = 0x4000;
    mmu_armv84.attribute = "MAIR7";

    /**
    * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
    * version of the tool will not impact the pinmux you originally saw. These lines can be completely deleted in order to
    * re-solve from scratch.
    */
    debug_log.uartLog.UART.RXD.$suggestSolution = "UART0_RXD";
    debug_log.uartLog.UART.TXD.$suggestSolution = "UART0_TXD";

  • Please replace the example.syscfg file of your project with the below provided sysconfig file.

    File - example.syscfg

    After replacing the file with above, you should be able to build the project. You can use the Sysconfig v1.23 with the SDK v11.00.


  • After replacing the provided configuration file, I am encountering an error. Please find the attached screenshot for reference.






  • The above provided file is for A53 core not for C7x. I have asked you to provide the example.syscfg file for project which you want to use.

    If you are using C7x core project, provide the file for that project only.

  • For C7x project, you will need to change the cli args in the example.syscfg file with below args.

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "AM62Dx" --part "AM62D24-G" --package "ANF" --context "c75ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @v2CliArgs --device "AM62D-Q1" --package "FCBGA (ANF)" --variant "AM62D24-G" --context "c75ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @versions {"tool":"1.23.0+4000"}
     */

  • I was expecting this to be provided by default. Could you please clarify why I need to edit it manually and reach out for help each time for every single project?

  • Yes, you are correct. This is bug in the current SDK offering. I will create an internal Jira ticket to get it resolved.

    Meanwhile you can edit the example.syscfg file's cli args to use it without issues.

    For C7x:

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "AM62Dx" --part "AM62D24-G" --package "ANF" --context "c75ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @v2CliArgs --device "AM62D-Q1" --package "FCBGA (ANF)" --variant "AM62D24-G" --context "c75ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @versions {"tool":"1.23.0+4000"}
     */

    For MCU R5F:

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "AM62Dx" --part "AM62D24-G" --package "ANF" --context "mcu-r5fss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @v2CliArgs --device "AM62D-Q1" --package "FCBGA (ANF)" --variant "AM62D24-G" --context "mcu-r5fss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @versions {"tool":"1.23.0+4000"}
     */

    For A530-0:

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "AM62Dx" --part "AM62D24-G" --package "ANF" --context "a53ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @v2CliArgs --device "AM62D-Q1" --package "FCBGA (ANF)" --variant "AM62D24-G" --context "a53ss0-0" --product "MCU_PLUS_SDK_AM62Dx@11.00.00"
     * @versions {"tool":"1.23.0+4000"}
     */

    Hope the above details helps. We can close the thread if there are no more open queries.

  • The above parameters will work with Sysconfig v1.23.

    One more easy solution is to modify the name field of product.json file provided in the SDK.

    Open ${AWE_SDK}/mcu_plus_sdk/am62dx/.metadata/product.json file and udpate name with below.

    "name": "AM62Dx_FREERTOS_SDK",




  • This is the message I get when I try to debug after pressing Continue. How can I resolve this issue? Source file not found - Breakpoint issue

  • Please browse the appropriate file in the SDK to see the breakpoint.