SK-AM62A-LP: The DSP frequency changes when the CCS program is loaded.

Part Number: SK-AM62A-LP

Tool/software:

Hi experts,

This is a continuation of the answer below from the original thread.

From 4fa3af8d3f1b3ad653417c19af4bb1c3470be83b Mon Sep 17 00:00:00 2001
From: Anand <s-anand@ti.com>
Date: Wed, 16 Jul 2025 12:19:10 +0530
Subject: [PATCH 1/2] Enabled C7X CPU Clock modification

---
 bootloader_soc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bootloader_soc.c b/bootloader_soc.c
index eaf28f1..8516b55 100644
--- a/bootloader_soc.c
+++ b/bootloader_soc.c
@@ -552,7 +552,7 @@ int32_t Bootloader_socCpuSetClock(uint32_t cpuId, uint32_t cpuHz)
     uint32_t sciclientCpuDevId;
     uint32_t sciclientCpuClkId;
 
-    if((cpuId != CSL_CORE_ID_HSM_M4FSS0_0) && (cpuId != CSL_CORE_ID_C75SS0_0))
+    if((cpuId != CSL_CORE_ID_HSM_M4FSS0_0))
     {
         sciclientCpuDevId = Bootloader_socGetSciclientCpuDevId(cpuId);
         sciclientCpuClkId = Bootloader_socGetSciclientCpuClkId(cpuId);
-- 
2.33.0.windows.2


From de16d9281c30f277355d6b4ff9e10874633dc244 Mon Sep 17 00:00:00 2001
From: Anand <s-anand@ti.com>
Date: Wed, 16 Jul 2025 12:30:51 +0530
Subject: [PATCH 2/2] Updated C7x clock to 1GHz

---
 bootloader_soc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bootloader_soc.c b/bootloader_soc.c
index 8516b55..e943c39 100644
--- a/bootloader_soc.c
+++ b/bootloader_soc.c
@@ -163,7 +163,7 @@ Bootloader_CoreBootInfo gCoreBootInfo[] =
     .tisciProcId    = SCICLIENT_PROC_ID_C7X256V0_C7XV_CORE_0,
     .tisciDevId     = TISCI_DEV_C7X256V0_C7XV_CORE_0,
     .tisciClockId   = TISCI_DEV_C7X256V0_C7XV_CORE_0_C7XV_CLK,
-    .defaultClockHz = (uint32_t)(500*1000000),
+    .defaultClockHz = (uint32_t)(1000*1000000),
     .coreName       = "c7x0-0",
     },
 };
-- 
2.33.0.windows.2

A customer created SBL NULLs for the AM62AxRTOS SDK c7x, operating at 500MHz and 1000MHz, based on the above.
After booting them up and using the CCS profile clock, both clock speeds appeared to be running at 850MHz.

(A 50msec sleep operation was measured at 42041576 cycles, approximately 840.83MHz.)

Q1: Does the profile clock frequency change depending on the CCS load program?

Best regards,
O.H

  • Q1: Does the profile clock frequency change depending on the CCS load program?

    No, load program should not change the clock frequency. It is simply a memory write access to the target while the target is halted. I suppose there could be some actions in the GEL file that could do some target configuration before/after the program is loaded. But it is unlikely that it would be actions like changing the frequency.

    Thanks

    ki

  • Hi ki,

    Below is a comment from a customer.

    ====================

    We're not using a GEL file, so the frequency setting in the c7x bootloader has not been changed.
    Our understanding is that when booting with a bootloader set to 500MHz, we would like the profile clock value to also operate at a 500MHz cycle.
    (The cycles per second vary depending on the frequency set in the bootloader.)
    Have you seen any cases where the profile clock varies depending on the bootloader for each frequency?

    Also, please let us know if there are any errors in this understanding.

    ====================

    Best regards,
    O.H

  • Our understanding is that when booting with a bootloader set to 500MHz, we would like the profile clock value to also operate at a 500MHz cycle.

    That is correct.

    Have you seen any cases where the profile clock varies depending on the bootloader for each frequency?

    The profile clock counts clock cycles. So if the clock frequency changes, that would impact the clock. 

    Back to your original question - I don't know why the clock speed of the CPU would change. I will bring this thread to the attention of the device experts who may have more answers.

    Thanks

    ki

  • Hi O.H,

    Which SDK version are you using, could you try testing this with SDK V11.1

    Best Regards,

    Meet.

  • Hi Ki, Meet,

    Thank you for your reply.

    Now is v10_00_00_14. We asked the customer to share the results of their test with v11.1.

    Best regards,
    O.H

  • Hi Meet,

    Below are comments from customers.
    ========================

    I'm trying to test with mcu_plus_sdk_am62ax_11_01_00_16, but I'm having trouble confirming the frequency. System_Init() doesn't complete.

    The steps I took are as follows:

    1. Applying the frequency change patch and building the bootloader with mcusdkv11
      sbl_null.release.hs_fs.tiimage(created based on this thread) write to emmc.
    2. Successfully booting the c7x at 250MHz (set to 250MHz for testing)
    3. Connecting with CCSv20 - Importing the project in mcusdkv11 (helloworld)
    4. Running after building
    5. Unable to complete PowerClock_init() execution in System_init(void)

    This issue did not occur when booting with the previous version of the bootloader. The startup log displays the follow message.
    Is this related to the issue? 

    "WARNING: Bootloader_rprcImageLoad:233: Software version mismatch, Installer version 0xb010010, AppImage version 0x1 Some tests have failed!!"

    Starting NULL Bootloader ...
    
    SYSFW Firmware Version 11.1.5--v11.01.05 (Fancy Rat)
    SYSFW Firmware revision 0xb
    SYSFW ABI revision 4.0
    
    INFO: Bootloader_runCpu:137: CPU mcu-r5f is initialized to 800000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a530-0 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a530-1 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a531-0 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a531-1 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU c7x0-0 is initialized to 250000000 Hz !!!
    WARNING: Bootloader_rprcImageLoad:233: Software version mismatch, Installer version 0xb010010, AppImage version 0x1
    Some tests have failed!!
    INFO: Bootloader_JumpSelfCpu:157: All done, jumping self ...
    

    ========================

    Best regards,
    O.H

  • Hi O.H,
    Can you please recompile all the binaries and reflash the bootloader?

    Thanks,
    Shreyansh

  • Hi Shreyansh,

    Can you please recompile all the binaries and reflash the bootloader?

    Do you mean using the command "make -s all PROFILE=debug"?

    Best regards,
    O.H

  • Yes, but first do a clean "make -s clean", and then build.

    Thanks,
    Shreyansh

  • I understood. I will check with the customer.

    Best regards,
    O.H

  • Hi Shreyansh,

    The above "sbl_null.release.hs_fs.tiimage" was the first build of version 11 using "make -sj4 all", so the customer believes it is equivalent to the one rebuilt using clean->make. He said he would check it with debug just in case.

    Best regrads,
    O.H