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.

AM62L: 512MB DDR Boot Stuck

Part Number: AM62L


Tool/software:

Hi,

I developed a custom board with 512MB DDR4. Using the DDR Register Configuration Tool, I generated the DDR configuration for 512MB and modified the memory size to 0x20000000 in both the Trusted Firmware-A (TF-A) device tree file arm-trusted-firmware/fdts/k3-am62l-ddr.dts and the U-Boot device tree file dts/upstream/src/arm64/ti/k3-am62l3-evm.dts. However, the system stalls at the U-Boot stage during boot-up.

--- a/fdts/k3-am62l-ddr.dts
+++ b/fdts/k3-am62l-ddr.dts
@@ -12,7 +12,7 @@
         memory@80000000 {
                 device_type = "memory";
                 /* 2G RAM */
-                reg = <0x00000000 0x80000000 0x00000000 0x40000000>;
+                reg = <0x00000000 0x80000000 0x00000000 0x20000000>;
         };
 
        memorycontroller: memorycontroller@f300000 {

--- a/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts
+++ b/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts
@@ -29,7 +29,7 @@
        };
 
        memory@80000000 {
-               reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
+               reg = <0x00000000 0x80000000 0x00000000 0x20000000>;
                device_type = "memory";
                bootph-all;
        };

log:

NOTICE:  bl1_plat_arch_setup arch setup 
NOTICE:  Booting Trusted Firmware
NOTICE:  BL1: v2.12.0(release):f3b84eb11-dirty
NOTICE:  BL1: Built : 08:38:33, Apr 14 2025
NOTICE:  BL1: dram_class: 10
NOTICE:  lpddr4: post start - PI training status=0x29c02000 
NOTICE:  bl1_platform_setup DDR init done
NOTICE:  k3_bl1_handoff ENTERING WFI - end of bl1
NOTICE:  BL31: v2.12.0(release):f3b84eb11-dirty
NOTICE:  BL31: Built : 08:38:33, Apr 14 2025
NOTICE:  0_ADC0's parent is 0
NOTICE:  0_ADC0's parent (after set_parent) is 2
ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported

U-Boot SPL 2025.01-00256-gc581bb9a32c2 (Apr 14 2025 - 08:39:39 +0000)
SPL initial stack usage: 1872 bytes
Trying to boot from MMC2
ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported


U-Boot 2025.01-00256-gc581bb9a32c2 (Apr 14 2025 - 08:39:39 +0000)

SoC:   AM62LX SR1.0 HS-FS
Model: MYIR MYD-YM62L Module
DRAM:  512 MiB

I have another development board with 1GB DDR4 that successfully boots using the same configuration method, but why does the 512MB version fail? Additionally, there is a strange phenomenon: when the device tree is set to 0x40000000 (1GB), the system can boot on the 512MB DDR4 board, but frequent memory crashes occur after entering the linux.

  • Hi Mazel,

    For 512MB DDR configuration, besides the two devicetree changes you made, please apply the following U-Boot config patch too.

    diff --git a/configs/am62lx_evm_defconfig b/configs/am62lx_evm_defconfig
    index 21040a3eb36a..f673ed118497 100644
    --- a/configs/am62lx_evm_defconfig
    +++ b/configs/am62lx_evm_defconfig
    @@ -124,5 +124,6 @@ CONFIG_CADENCE_QSPI_PHY=y
     CONFIG_SYSRESET=y
     CONFIG_SPL_SYSRESET=y
     CONFIG_FS_FAT_MAX_CLUSTSIZE=16384
    +CONFIG_SYS_MEM_TOP_HIDE=0x02500000
     
     #include <configs/am62x_a53_usbdfu.config>