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.

SK-AM62A-LP: RGMII boot mode problem

Part Number: SK-AM62A-LP

Hi

I'm using ti-processor-sdk-linux-edgeai-am62axx-evm-09_00_01_03 on SK-AM62A-LP board.

I'm trying to boot from rgmii mode.

I had copied and modified am62x's defconfig file for am62ax (I can't find ethboot_defconfig for am62ax in my sdk folder)

on my host: isc-dhcp-server is working, tftp server is working

I can see the tiboot3 data transfer information in wireshark, but it always gets stuck at the end of the tftp flow.

it seems like that the eth for u-boot were not properly configured.

So is there any template defconfig for am62ax ethboot ?

(wireshark screenshot)

(ttyUSB0 log)

  • Hello,

    I have assigned your thread. Please expect delays due to the holidays. Feel free to ping the thread if you do not have a response within the first week of January.

    Regards,

    Nick

  • Hi Jie Li,

    Until the subject matter expert is back in office, I will provide some comments.

    1. I noticed that in the AM62A SDK documentation for Booting over Ethernet, there is some missing information that the AM62x SDK documentation contains. For reference, I will use the information from the AM62x SDK documentation. Have you made the Bootmode pin selections and CPSW PHY strapping as directed by the following section in the documentation?

    2. There is some additional information on the Ethernet Bootloader Operation under section 5.4.5.1 in the AM62A TRM. Specifically in section 5.4.5.1.1 Ethernet Initialization Process, as suggested by the SDK documentation, Link info should be set to 1 and the attached PHY should be configured for RGMII-ID mode since the ROM does not make this configuration change during the Ethernet initialization process. 

    3. I am double checking with the team on if we have an ethboot defconfig file for AM62A and will let you know when I have updates.

    Best regards,

    Daolin

  • thanks for your feedback !

  • Hi Daolin

    Thank you for the information about link info, and i'll read through the am62x sdk documents to see if i'm missing anything

    • I've checked the boot pin configuration of my board,  link info SW2.8 is 0
    • I've tried to set the link info from 0 -> 1, it's doesn't work, you can see the boot pin changed after that (devstat read by u-boot)
    • And I have noticed that the PHY was already working with the ROM bootloader, as the u-boot R5 spl (tiboot3.bin) was successfully loaded. If tiboot3 is not loaded, there will be no u-boot spl print log, right?
    • It failed when trying to load u-boot A53 spl (tispl.bin) in my opinion
    • so it seems as if something wrong in my u-boot spl configuration for eth (defconfig file) ?

  • CONFIG_ARM=y
    CONFIG_ARCH_K3=y
    CONFIG_TI_SECURE_DEVICE=y
    CONFIG_SYS_MALLOC_F_LEN=0x9000
    CONFIG_SPL_LIBCOMMON_SUPPORT=y
    CONFIG_SPL_LIBGENERIC_SUPPORT=y
    CONFIG_SOC_K3_AM62A7=y
    CONFIG_TARGET_AM62A7_R5_EVM=y
    CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
    CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x43c3a7f0
    CONFIG_ENV_SIZE=0x20000
    CONFIG_ENV_OFFSET=0x680000
    CONFIG_DM_GPIO=y
    CONFIG_DEFAULT_DEVICE_TREE="k3-am62a7-r5-sk"
    CONFIG_SPL_TEXT_BASE=0x43c00000
    CONFIG_DM_RESET=y
    CONFIG_SPL_MMC=y
    CONFIG_SPL_SERIAL=y
    CONFIG_SPL_DRIVERS_MISC=y
    CONFIG_SPL_STACK_R_ADDR=0x82000000
    CONFIG_SPL_SYS_MALLOC_F_LEN=0x7145
    CONFIG_SPL_SIZE_LIMIT=0x3A7F0
    CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x4400
    CONFIG_SPL_LIBDISK_SUPPORT=y
    CONFIG_SPL_LOAD_FIT=y
    CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
    # CONFIG_DISPLAY_CPUINFO is not set
    CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
    CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
    CONFIG_SPL_MAX_SIZE=0x3B000
    CONFIG_SPL_PAD_TO=0x0
    CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
    CONFIG_SPL_BSS_START_ADDR=0x43c3b000
    CONFIG_SPL_BSS_MAX_SIZE=0x3000
    CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
    CONFIG_SPL_BOARD_INIT=y
    CONFIG_SPL_SYS_MALLOC_SIMPLE=y
    CONFIG_SPL_STACK_R=y
    CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
    CONFIG_SPL_SEPARATE_BSS=y
    CONFIG_SYS_SPL_MALLOC=y
    CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
    CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
    CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
    CONFIG_SPL_EARLY_BSS=y
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
    CONFIG_SPL_DMA=y
    CONFIG_SPL_ENV_SUPPORT=y
    CONFIG_SPL_ETH=y
    CONFIG_SPL_I2C=y
    CONFIG_SPL_DM_MAILBOX=y
    CONFIG_SPL_NET=y
    CONFIG_SPL_NET_VCI_STRING="AM62AX U-Boot R5 SPL"
    CONFIG_SPL_DM_RESET=y
    CONFIG_SPL_POWER_DOMAIN=y
    CONFIG_SPL_RAM_SUPPORT=y
    CONFIG_SPL_RAM_DEVICE=y
    CONFIG_SPL_REMOTEPROC=y
    CONFIG_SPL_THERMAL=y
    CONFIG_SPL_YMODEM_SUPPORT=y
    CONFIG_HUSH_PARSER=y
    CONFIG_CMD_ASKENV=y
    CONFIG_CMD_GPT=y
    CONFIG_CMD_MMC=y
    CONFIG_CMD_REMOTEPROC=y
    # CONFIG_CMD_SETEXPR is not set
    CONFIG_CMD_DHCP=y
    CONFIG_CMD_TIME=y
    CONFIG_CMD_FAT=y
    CONFIG_OF_CONTROL=y
    CONFIG_SPL_OF_CONTROL=y
    CONFIG_ENV_IS_NOWHERE=y
    CONFIG_ENV_IS_IN_MMC=y
    CONFIG_SYS_RELOC_GD_ENV_ADDR=y
    CONFIG_SYS_MMC_ENV_PART=1
    CONFIG_SPL_DM=y
    CONFIG_SPL_DM_SEQ_ALIAS=y
    CONFIG_REGMAP=y
    CONFIG_SPL_REGMAP=y
    CONFIG_SPL_OF_TRANSLATE=y
    CONFIG_CLK=y
    CONFIG_SPL_CLK=y
    CONFIG_SPL_CLK_CCF=y
    CONFIG_SPL_CLK_K3_PLL=y
    CONFIG_SPL_CLK_K3=y
    CONFIG_DMA_CHANNELS=y
    CONFIG_TI_K3_NAVSS_UDMA=y
    CONFIG_TI_SCI_PROTOCOL=y
    # CONFIG_GPIO is not set
    CONFIG_DM_I2C=y
    CONFIG_DM_MAILBOX=y
    CONFIG_K3_SEC_PROXY=y
    CONFIG_MMC_SDHCI=y
    CONFIG_MMC_SDHCI_ADMA=y
    CONFIG_MMC_SDHCI_AM654=y
    CONFIG_PHY_TI_DP83867=y
    CONFIG_TI_AM65_CPSW_NUSS=y
    CONFIG_PINCTRL=y
    # CONFIG_PINCTRL_GENERIC is not set
    CONFIG_SPL_PINCTRL=y
    # CONFIG_SPL_PINCTRL_GENERIC is not set
    CONFIG_PINCTRL_SINGLE=y
    CONFIG_POWER_DOMAIN=y
    CONFIG_TI_POWER_DOMAIN=y
    CONFIG_K3_SYSTEM_CONTROLLER=y
    CONFIG_REMOTEPROC_TI_K3_ARM64=y
    CONFIG_RESET_TI_SCI=y
    CONFIG_SPECIFY_CONSOLE_INDEX=y
    CONFIG_DM_SERIAL=y
    CONFIG_SOC_DEVICE=y
    CONFIG_SOC_DEVICE_TI_K3=y
    CONFIG_SOC_TI=y
    CONFIG_TIMER=y
    CONFIG_SPL_TIMER=y
    CONFIG_OMAP_TIMER=y
    CONFIG_LIB_RATIONAL=y
    CONFIG_SPL_LIB_RATIONAL=y

    this is my defconfig file content for u-boot R5 spl

  • Hi Jie Li,

    Thanks for sharing your updates and findings. 

    I checked the internal team on an ethboot defconfig for AM62A and here are the findings:

    • It appears that the default SDK does not support booting over Ethernet on AM62A. That means that we don't have a reference ethboot defconfig for AM62A. 
    • However, the ethboot defconfig shouldn't be too different from the AM62x version - at least for the tiboot3.bin 
    • Enabling boot over Ethernet on AM62A is quite difficult to do as it involves not only defconfig changes but also changes such as (re-generating the build-in DM firmware source files to include the power domain for the CPSW3G Ethernet, allocating DMA flows back to the CPSW3G, etc).

    Based on this information, it appears that trying to boot through Ethernet will be much more complicated than expected- which leads me to ask several questions to best help support you:

    1. Is there a particular reason to why you need to boot through Ethernet? Have you tried other boot methods such as SD card boot? The easiest way to get started with the SK-AM62A-LP is through flashing a wic image on an SD card and booting the evm through the SD card- this method is also detailed here: https://dev.ti.com/tirex/explore/node?node=A__AQniYj7pI2aoPAFMxWtKDQ__am62ax-devtools__FUz-xrs__LATEST 

    2. What is the timeline/urgency on this situation? Would you be okay with waiting until later this week or next week when the subject matter experts are back in office to provide further support?

    Best regards,

    Daolin

  • Hi Daolin
    Thanks for your detail information about ethboot !
    • I'm currently getting started through all the content in the processor SDK documentation on my own am62ax evm to get familiar with the am62ax processor.
    • There is no specific reason for me or my customer to use ethboot mode. So it's not urgent for me to do so.
    • I've already tried SDCard / eMMC / Uart / Dfu ROM boot, they work fine.
    • I guess ethboot can let me only use 1 ethernet cable to boot and develop without flashing, It seems very practical, so here i am.

    It would be very helpful if i could get further support on this. Grinning

  • Hi Jie Li,

    Thanks for explaining the background of why you're booting over Ethernet.

    The team had filed a request/requirement to enable Ethernet boot working out-of-the-box and to be supported by the SDK for AM62A. They are currently tracking this issue. Currently, Ethernet boot has not yet been planned for a specific upcoming SDK release but there may be more updates in next few days. 

    I'll keep this thread open so that the subject matter expert can provide more inputs when he is back in office. 

    I appreciate your patience on this issue!

    Best regards,

    Daolin

  • Thanks for following this topic !

    Also, I'd like to know if ethboot is out-of-the-box on the am62x ?

  • Hi Jie Li,

    Yes, booting over Ethernet should be supported by the default SDK for AM62x. You may have already seen this software documentation with details on the process: 3.1.1.3. Booting over Ethernet (Ethernet RGMII) — Processor SDK AM62x Documentation. Feel free to try it out on an AM62x EVM if you have access to one!

    Best regards,

    Daolin

  • Hi Jie Li,

    We have a patch for the SDK 9.0 to enable AM62A Ethernet RGMII boot. I have attached it below. It was tested and working on SDK 9.0 and also worked on SDK 8.6. 

    Please try it out and let us know if you have any additional questions/difficulties.

    From 0d87151d7732ce48406483f62389ab6b3f9ff158 Mon Sep 17 00:00:00 2001
    From: Andreas Dannenberg <dannenberg@ti.com>
    Date: Wed, 28 Dec 2022 16:14:16 -0600
    Subject: [PATCH] arm: k3-am62a: Add Ethernet boot support
    
    Make the needed changes to support a full Ethernet-based boot on AM62A.
    In addition to a dedicated R5 defconfig modeled after AM62 we also need
    to add static device and clock data to support CPSW as it is not yet
    available in the tree. Furthermore, we also need to ignore some errors
    during CPWS PSIL pairing as two of the channels will throw an error
    while we are trying to use them. This could be because of some left-over
    ROM state that is not dealt with gracefully (by TIFS?).
    
    Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
    ---
     arch/arm/dts/k3-am62a7-sk-u-boot.dtsi   |  24 +++++
     arch/arm/mach-k3/am62a7_init.c          |   9 ++
     board/ti/am62ax/evm.c                   |   4 +
     configs/am62ax_evm_a53_defconfig        |   5 +
     configs/am62ax_evm_r5_ethboot_defconfig | 124 ++++++++++++++++++++++++
     drivers/dma/ti/k3-udma.c                |   8 +-
     drivers/firmware/ti_sci.c               |   3 +-
     7 files changed, 172 insertions(+), 5 deletions(-)
     create mode 100644 configs/am62ax_evm_r5_ethboot_defconfig
    
    diff --git a/arch/arm/dts/k3-am62a7-sk-u-boot.dtsi b/arch/arm/dts/k3-am62a7-sk-u-boot.dtsi
    index 0905205005..ad489ea24b 100644
    --- a/arch/arm/dts/k3-am62a7-sk-u-boot.dtsi
    +++ b/arch/arm/dts/k3-am62a7-sk-u-boot.dtsi
    @@ -189,6 +189,10 @@
     		reg = <0x00 0x00104044 0x00 0x8>;
     		bootph-pre-ram;
     	};
    +
    +	ethernet-ports {
    +		bootph-pre-ram;
    +	};
     };
     
     &usbss0 {
    @@ -218,3 +222,23 @@
     		};
     	};
     };
    +
    +&main_pktdma {
    +	bootph-pre-ram;
    +};
    +
    +&cpsw_port1 {
    +	bootph-pre-ram;
    +};
    +
    +&main_rgmii1_pins_default {
    +	bootph-pre-ram;
    +};
    +
    +&main_mdio1_pins_default {
    +	bootph-pre-ram;
    +};
    +
    +&cpsw3g_phy0 {
    +	bootph-pre-ram;
    +};
    diff --git a/arch/arm/mach-k3/am62a7_init.c b/arch/arm/mach-k3/am62a7_init.c
    index 0b044bf037..568b43d086 100644
    --- a/arch/arm/mach-k3/am62a7_init.c
    +++ b/arch/arm/mach-k3/am62a7_init.c
    @@ -181,6 +181,15 @@ void board_init_f(ulong dummy)
     
     	setup_qos();
     
    +	if (IS_ENABLED(CONFIG_SPL_ETH) && IS_ENABLED(CONFIG_TI_AM65_CPSW_NUSS) &&
    +	    spl_boot_device() == BOOT_DEVICE_ETHERNET) {
    +		struct udevice *cpswdev;
    +
    +		if (uclass_get_device_by_driver(UCLASS_MISC, DM_DRIVER_GET(am65_cpsw_nuss),
    +						&cpswdev))
    +			printf("Failed to probe am65_cpsw_nuss driver\n");
    +	}
    +
     	printf("am62a_init: %s done\n", __func__);
     }
     
    diff --git a/board/ti/am62ax/evm.c b/board/ti/am62ax/evm.c
    index 9065038756..1da7e1f557 100644
    --- a/board/ti/am62ax/evm.c
    +++ b/board/ti/am62ax/evm.c
    @@ -48,5 +48,9 @@ void spl_board_init(void)
     	val = readl(CTRLMMR_USB1_PHY_CTRL);
     	val &= ~(CORE_VOLTAGE);
     	writel(val, CTRLMMR_USB1_PHY_CTRL);
    +
    +	if (IS_ENABLED(CONFIG_SPL_ETH))
    +		/* Init DRAM size for R5/A53 SPL */
    +		dram_init_banksize();
     }
     #endif
    diff --git a/configs/am62ax_evm_a53_defconfig b/configs/am62ax_evm_a53_defconfig
    index fd52d3dad6..f46d72b614 100644
    --- a/configs/am62ax_evm_a53_defconfig
    +++ b/configs/am62ax_evm_a53_defconfig
    @@ -17,6 +17,7 @@ CONFIG_SPL_TEXT_BASE=0x80080000
     CONFIG_DM_RESET=y
     CONFIG_SPL_MMC=y
     CONFIG_SPL_SERIAL=y
    +CONFIG_SPL_DRIVERS_MISC=y
     CONFIG_SPL_STACK_R_ADDR=0x82000000
     CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80480000
     CONFIG_SPL_FS_FAT=y
    @@ -38,7 +39,9 @@ CONFIG_SPL_SYS_MALLOC_SIMPLE=y
     CONFIG_SPL_STACK_R=y
     CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
     CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
    +CONFIG_SPL_DMA=y
     CONFIG_SPL_ENV_SUPPORT=y
    +CONFIG_SPL_ETH=y
     CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
     CONFIG_SPL_I2C=y
     CONFIG_SPL_DM_MAILBOX=y
    @@ -47,6 +50,8 @@ CONFIG_SPL_MTD_LOAD=y
     CONFIG_SYS_MTD_U_BOOT_OFFS=0x280000
     CONFIG_SPL_NAND_SPI_SUPPORT=y
     CONFIG_SPL_DM_SPI_FLASH=y
    +CONFIG_SPL_NET=y
    +CONFIG_SPL_NET_VCI_STRING="AM62AX U-Boot A53 SPL"
     CONFIG_SPL_POWER_DOMAIN=y
     CONFIG_SPL_RAM_SUPPORT=y
     CONFIG_SPL_USB_HOST=y
    diff --git a/configs/am62ax_evm_r5_ethboot_defconfig b/configs/am62ax_evm_r5_ethboot_defconfig
    new file mode 100644
    index 0000000000..25d6937832
    --- /dev/null
    +++ b/configs/am62ax_evm_r5_ethboot_defconfig
    @@ -0,0 +1,124 @@
    +CONFIG_ARM=y
    +CONFIG_ARCH_K3=y
    +CONFIG_TI_SECURE_DEVICE=y
    +CONFIG_SYS_MALLOC_F_LEN=0x8000
    +CONFIG_SPL_LIBCOMMON_SUPPORT=y
    +CONFIG_SPL_LIBGENERIC_SUPPORT=y
    +CONFIG_SOC_K3_AM62A7=y
    +CONFIG_TARGET_AM62A7_R5_EVM=y
    +CONFIG_ENV_SIZE=0x20000
    +CONFIG_ENV_OFFSET=0x680000
    +CONFIG_DEFAULT_DEVICE_TREE="k3-am62a7-r5-sk"
    +CONFIG_SPL_TEXT_BASE=0x43c00000
    +CONFIG_DM_RESET=y
    +CONFIG_SPL_SERIAL=y
    +CONFIG_SPL_DRIVERS_MISC=y
    +CONFIG_SPL_STACK_R_ADDR=0x82000000
    +CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x43c3a7f0
    +CONFIG_SPL_SYS_MALLOC_F_LEN=0x7145
    +CONFIG_SPL_SIZE_LIMIT=0x3A7F0
    +CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x4400
    +CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
    +CONFIG_SPL_LOAD_FIT=y
    +CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
    +# CONFIG_DISPLAY_CPUINFO is not set
    +# CONFIG_MISC_INIT_R is not set
    +CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
    +CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
    +CONFIG_SPL_MAX_SIZE=0x3B000
    +CONFIG_SPL_PAD_TO=0x0
    +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
    +CONFIG_SPL_BSS_START_ADDR=0x43c3b000
    +CONFIG_SPL_BSS_MAX_SIZE=0x3000
    +CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
    +CONFIG_SPL_BOARD_INIT=y
    +CONFIG_SPL_SYS_MALLOC_SIMPLE=y
    +CONFIG_SPL_STACK_R=y
    +CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
    +CONFIG_SPL_SEPARATE_BSS=y
    +CONFIG_SYS_SPL_MALLOC=y
    +CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
    +CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
    +CONFIG_SPL_EARLY_BSS=y
    +CONFIG_SPL_DMA=y
    +CONFIG_SPL_ENV_SUPPORT=y
    +CONFIG_SPL_ETH=y
    +CONFIG_SPL_DM_MAILBOX=y
    +CONFIG_SPL_NET=y
    +CONFIG_SPL_NET_VCI_STRING="AM62AX U-Boot R5 SPL"
    +CONFIG_SPL_DM_RESET=y
    +CONFIG_SPL_POWER_DOMAIN=y
    +CONFIG_SPL_RAM_SUPPORT=y
    +CONFIG_SPL_RAM_DEVICE=y
    +CONFIG_SPL_REMOTEPROC=y
    +CONFIG_SPL_THERMAL=y
    +CONFIG_SPL_YMODEM_SUPPORT=y
    +CONFIG_HUSH_PARSER=y
    +CONFIG_CMD_ASKENV=y
    +CONFIG_CMD_DFU=y
    +CONFIG_CMD_GPT=y
    +CONFIG_CMD_MMC=y
    +CONFIG_CMD_REMOTEPROC=y
    +# CONFIG_CMD_SETEXPR is not set
    +CONFIG_CMD_TIME=y
    +CONFIG_CMD_FAT=y
    +CONFIG_OF_CONTROL=y
    +CONFIG_SPL_OF_CONTROL=y
    +CONFIG_ENV_IS_NOWHERE=y
    +CONFIG_ENV_IS_IN_MMC=y
    +CONFIG_SYS_RELOC_GD_ENV_ADDR=y
    +CONFIG_SYS_MMC_ENV_PART=1
    +CONFIG_SPL_DM=y
    +CONFIG_SPL_DM_DEVICE_REMOVE=y
    +CONFIG_SPL_DM_SEQ_ALIAS=y
    +CONFIG_REGMAP=y
    +CONFIG_SPL_REGMAP=y
    +CONFIG_SPL_OF_TRANSLATE=y
    +CONFIG_CLK=y
    +CONFIG_SPL_CLK=y
    +CONFIG_SPL_CLK_CCF=y
    +CONFIG_SPL_CLK_K3_PLL=y
    +CONFIG_SPL_CLK_K3=y
    +CONFIG_DMA_CHANNELS=y
    +CONFIG_TI_K3_NAVSS_UDMA=y
    +CONFIG_TI_SCI_PROTOCOL=y
    +# CONFIG_GPIO is not set
    +CONFIG_DM_I2C=y
    +CONFIG_SYS_I2C_OMAP24XX=y
    +CONFIG_DM_MAILBOX=y
    +CONFIG_K3_SEC_PROXY=y
    +CONFIG_MMC_HS200_SUPPORT=y
    +CONFIG_MMC_SDHCI=y
    +CONFIG_MMC_SDHCI_ADMA=y
    +CONFIG_MMC_SDHCI_AM654=y
    +CONFIG_MTD=y
    +CONFIG_DM_MTD=y
    +CONFIG_MTD_SPI_NAND=y
    +CONFIG_DM_SPI_FLASH=y
    +CONFIG_PHY_TI_DP83867=y
    +CONFIG_DM_ETH_PHY=y
    +CONFIG_TI_AM65_CPSW_NUSS=y
    +CONFIG_SPL_PHY=y
    +CONFIG_PINCTRL=y
    +# CONFIG_PINCTRL_GENERIC is not set
    +CONFIG_SPL_PINCTRL=y
    +# CONFIG_SPL_PINCTRL_GENERIC is not set
    +CONFIG_PINCTRL_SINGLE=y
    +CONFIG_POWER_DOMAIN=y
    +CONFIG_TI_POWER_DOMAIN=y
    +CONFIG_K3_SYSTEM_CONTROLLER=y
    +CONFIG_REMOTEPROC_TI_K3_ARM64=y
    +CONFIG_RESET_TI_SCI=y
    +CONFIG_SPECIFY_CONSOLE_INDEX=y
    +CONFIG_DM_SERIAL=y
    +CONFIG_SOC_DEVICE=y
    +CONFIG_SOC_DEVICE_TI_K3=y
    +CONFIG_SOC_TI=y
    +CONFIG_SPI=y
    +CONFIG_DM_SPI=y
    +CONFIG_CADENCE_QSPI=y
    +CONFIG_TIMER=y
    +CONFIG_SPL_TIMER=y
    +CONFIG_OMAP_TIMER=y
    +CONFIG_LIB_RATIONAL=y
    +CONFIG_SPL_LIB_RATIONAL=y
    diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
    index a018f70c54..d44fffbee1 100644
    --- a/drivers/dma/ti/k3-udma.c
    +++ b/drivers/dma/ti/k3-udma.c
    @@ -2273,17 +2273,17 @@ static int pktdma_alloc_chan_resources(struct udma_chan *uc)
     	/* PSI-L pairing */
     	ret = udma_navss_psil_pair(ud, uc->config.src_thread, uc->config.dst_thread);
     	if (ret) {
    -		dev_err(ud->dev, "PSI-L pairing failed: 0x%04x -> 0x%04x\n",
    +		dev_err(ud->dev, "IGNORED: PSI-L pairing failed: 0x%04x -> 0x%04x\n",
     			uc->config.src_thread, uc->config.dst_thread);
    -		goto err_res_free;
    +		/* goto err_res_free; */
     	}
     
     	if (udma_is_chan_running(uc)) {
     		dev_warn(ud->dev, "chan%d: is running!\n", uc->id);
     		udma_stop(uc);
     		if (udma_is_chan_running(uc)) {
    -			dev_err(ud->dev, "chan%d: won't stop!\n", uc->id);
    -			goto err_res_free;
    +			dev_err(ud->dev, "IGNORED: chan%d: won't stop!\n", uc->id);
    +			/* goto err_res_free; */
     		}
     	}
     
    diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
    index f5f659c112..9ca5aca869 100644
    --- a/drivers/firmware/ti_sci.c
    +++ b/drivers/firmware/ti_sci.c
    @@ -2241,7 +2241,8 @@ static int ti_sci_cmd_rm_psil_pair(const struct ti_sci_handle *handle,
     		goto fail;
     
     fail:
    -	dev_dbg(info->dev, "RM_PSIL: nav: %u link pair %u->%u ret:%u\n",
    +	/* Use dev_err() to force output when using the default log level of 4 */
    +	dev_err(info->dev, "RM_PSIL: nav: %u link pair %u->%u ret:%d\n",
     		nav_id, src_thread, dst_thread, ret);
     	return ret;
     }
    -- 
    2.42.0.windows.2
    
    

    Best regards,

    Daolin

  • Hi Daolin,

    Thanks for your patch !

    • I've applied this patch and rebuilt u-boot, but it still failed after tiboot3 loaded.
    • I also tried with a different link info setting, same error.
    • My sdk version: ti-processor-sdk-linux-edgeai-am62axx-evm-09_00_01_03.

    (with link info = 0)

    (with link info = 1)

    Here are my defconfig after applying the patch:

    CONFIG_ARM=y
    CONFIG_ARCH_K3=y
    CONFIG_TI_SECURE_DEVICE=y
    CONFIG_SPL_GPIO=y
    CONFIG_SYS_MALLOC_F_LEN=0x8000
    CONFIG_SPL_LIBCOMMON_SUPPORT=y
    CONFIG_SPL_LIBGENERIC_SUPPORT=y
    CONFIG_NR_DRAM_BANKS=2
    CONFIG_SOC_K3_AM62A7=y
    CONFIG_K3_ATF_LOAD_ADDR=0x9e780000
    CONFIG_TARGET_AM62A7_A53_EVM=y
    CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
    CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80480000
    CONFIG_DM_GPIO=y
    CONFIG_SF_DEFAULT_SPEED=25000000
    CONFIG_ENV_SIZE=0x40000
    CONFIG_SPL_DM_SPI=y
    CONFIG_DEFAULT_DEVICE_TREE="k3-am62a7-sk"
    CONFIG_SPL_TEXT_BASE=0x80080000
    CONFIG_DM_RESET=y
    CONFIG_SPL_MMC=y
    CONFIG_SPL_SERIAL=y
    CONFIG_SPL_DRIVERS_MISC=y
    CONFIG_SPL_STACK_R_ADDR=0x82000000
    CONFIG_SPL_FS_FAT=y
    CONFIG_SPL_LIBDISK_SUPPORT=y
    CONFIG_SPL_SPI=y
    # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
    CONFIG_SPL_LOAD_FIT=y
    CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
    CONFIG_DISTRO_DEFAULTS=y
    CONFIG_BOOTCOMMAND="run envboot; run distro_bootcmd;"
    CONFIG_SPL_MAX_SIZE=0x58000
    CONFIG_SPL_PAD_TO=0x0
    CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
    CONFIG_SPL_BSS_START_ADDR=0x80a00000
    CONFIG_SPL_BSS_MAX_SIZE=0x80000
    CONFIG_SPL_SYS_MALLOC_SIMPLE=y
    CONFIG_SPL_BOARD_INIT=y
    CONFIG_SPL_STACK_R=y
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
    CONFIG_SPL_DMA=y
    CONFIG_SPL_ENV_SUPPORT=y
    CONFIG_SPL_ETH=y
    CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
    CONFIG_SPL_I2C=y
    CONFIG_SPL_DM_MAILBOX=y
    CONFIG_SPL_MTD_SUPPORT=y
    CONFIG_SPL_MTD_LOAD=y
    CONFIG_SYS_MTD_U_BOOT_OFFS=0x280000
    CONFIG_SPL_NAND_SPI_SUPPORT=y
    CONFIG_SPL_DM_SPI_FLASH=y
    CONFIG_SPL_NET=y
    CONFIG_SPL_NET_VCI_STRING="AM62AX U-Boot A53 SPL"
    CONFIG_SPL_POWER_DOMAIN=y
    CONFIG_SPL_RAM_SUPPORT=y
    CONFIG_SPL_USB_GADGET=y
    CONFIG_SPL_DFU=y
    CONFIG_SPL_YMODEM_SUPPORT=y
    CONFIG_SYS_MAXARGS=64
    CONFIG_CMD_MMC=y
    CONFIG_CMD_CLK=y
    CONFIG_CMD_DFU=y
    CONFIG_CMD_DM=y
    CONFIG_CMD_GPIO=y
    CONFIG_CMD_GPT=y
    CONFIG_CMD_I2C=y
    CONFIG_SUPPORT_EMMC_BOOT=y
    CONFIG_MMC_HS200_SUPPORT=y
    CONFIG_SPL_MMC_HS200_SUPPORT=y
    CONFIG_CMD_MTD=y
    CONFIG_CMD_USB=y
    CONFIG_CMD_USB_MASS_STORAGE=y
    CONFIG_CMD_TIME=y
    CONFIG_CMD_EXT4_WRITE=y
    CONFIG_CMD_MTDPARTS=y
    CONFIG_CMD_UBI=y
    CONFIG_OF_CONTROL=y
    CONFIG_SPL_OF_CONTROL=y
    CONFIG_MULTI_DTB_FIT=y
    CONFIG_SPL_MULTI_DTB_FIT=y
    CONFIG_SPL_MULTI_DTB_FIT_NO_COMPRESSION=y
    CONFIG_SPL_DM=y
    CONFIG_SPL_DM_DEVICE_REMOVE=y
    CONFIG_SPL_DM_SEQ_ALIAS=y
    CONFIG_REGMAP=y
    CONFIG_SPL_REGMAP=y
    CONFIG_SYSCON=y
    CONFIG_SPL_SYSCON=y
    CONFIG_SPL_OF_TRANSLATE=y
    CONFIG_CLK=y
    CONFIG_SPL_CLK=y
    CONFIG_CLK_TI_SCI=y
    CONFIG_DFU_MMC=y
    CONFIG_DFU_RAM=y
    CONFIG_DFU_SF=y
    CONFIG_DFU_MTD=y
    CONFIG_SYS_DFU_DATA_BUF_SIZE=0x40000
    CONFIG_SYS_DFU_MAX_FILE_SIZE=0x800000
    CONFIG_DMA_CHANNELS=y
    CONFIG_TI_K3_NAVSS_UDMA=y
    CONFIG_USB_FUNCTION_FASTBOOT=y
    CONFIG_FASTBOOT_BUF_ADDR=0xC0000000
    CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
    CONFIG_TI_SCI_PROTOCOL=y
    CONFIG_SPL_DM_GPIO_LOOKUP_LABEL=y
    CONFIG_DA8XX_GPIO=y
    CONFIG_DM_PCA953X=y
    CONFIG_SPL_DM_PCA953X=y
    CONFIG_DM_I2C=y
    CONFIG_SYS_I2C_OMAP24XX=y
    CONFIG_DM_MAILBOX=y
    CONFIG_K3_SEC_PROXY=y
    CONFIG_SPL_MISC=y
    CONFIG_MMC_SDHCI=y
    CONFIG_MMC_SDHCI_ADMA=y
    CONFIG_SPL_MMC_SDHCI_ADMA=y
    CONFIG_MMC_SDHCI_AM654=y
    CONFIG_MTD=y
    CONFIG_DM_MTD=y
    CONFIG_MTD_SPI_NAND=y
    CONFIG_DM_SPI_FLASH=y
    CONFIG_PHY_TI_DP83867=y
    CONFIG_TI_AM65_CPSW_NUSS=y
    CONFIG_PINCTRL=y
    CONFIG_SPL_PINCTRL=y
    CONFIG_PINCTRL_SINGLE=y
    CONFIG_POWER_DOMAIN=y
    CONFIG_TI_SCI_POWER_DOMAIN=y
    CONFIG_K3_SYSTEM_CONTROLLER=y
    CONFIG_REMOTEPROC_TI_K3_ARM64=y
    CONFIG_REMOTEPROC_TI_K3_R5F=y
    CONFIG_REMOTEPROC_TI_K3_DSP=y
    CONFIG_RESET_TI_SCI=y
    CONFIG_DM_SERIAL=y
    CONFIG_SOC_DEVICE=y
    CONFIG_SOC_DEVICE_TI_K3=y
    CONFIG_SOC_TI=y
    CONFIG_SPI=y
    CONFIG_DM_SPI=y
    CONFIG_CADENCE_QSPI=y
    CONFIG_SYSRESET=y
    CONFIG_SPL_SYSRESET=y
    CONFIG_SYSRESET_TI_SCI=y
    CONFIG_DM_THERMAL=y
    CONFIG_USB=y
    CONFIG_DM_USB=y
    CONFIG_DM_USB_GADGET=y
    CONFIG_SPL_DM_USB_GADGET=y
    CONFIG_USB_XHCI_HCD=y
    CONFIG_USB_DWC3=y
    CONFIG_SPL_USB_DWC3_GENERIC=y
    CONFIG_USB_DWC3_GENERIC=y
    CONFIG_SPL_USB_DWC3_AM62=y
    CONFIG_USB_DWC3_AM62=y
    CONFIG_USB_GADGET=y
    CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
    CONFIG_USB_GADGET_VENDOR_NUM=0x0451
    CONFIG_USB_GADGET_PRODUCT_NUM=0x6165
    CONFIG_USB_FUNCTION_MASS_STORAGE=y
    CONFIG_FS_FAT_MAX_CLUSTSIZE=16384
    CONFIG_OF_LIBFDT_OVERLAY=y
    CONFIG_CMD_REMOTEPROC=y
    CONFIG_SPL_USB_HOST=y
    CONFIG_SPL_USB_STORAGE=y
    CONFIG_USB_HOST=y
    CONFIG_USB_STORAGE=y
    CONFIG_SUPPORT_EMMC_BOOT=y
    

    (A53 defconfig)

    CONFIG_ARM=y
    CONFIG_ARCH_K3=y
    CONFIG_TI_SECURE_DEVICE=y
    CONFIG_SYS_MALLOC_F_LEN=0x8000
    CONFIG_SPL_LIBCOMMON_SUPPORT=y
    CONFIG_SPL_LIBGENERIC_SUPPORT=y
    CONFIG_SOC_K3_AM62A7=y
    CONFIG_TARGET_AM62A7_R5_EVM=y
    CONFIG_ENV_SIZE=0x20000
    CONFIG_ENV_OFFSET=0x680000
    CONFIG_DEFAULT_DEVICE_TREE="k3-am62a7-r5-sk"
    CONFIG_SPL_TEXT_BASE=0x43c00000
    CONFIG_DM_RESET=y
    CONFIG_SPL_SERIAL=y
    CONFIG_SPL_DRIVERS_MISC=y
    CONFIG_SPL_STACK_R_ADDR=0x82000000
    CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x43c3a7f0
    CONFIG_SPL_SYS_MALLOC_F_LEN=0x7145
    CONFIG_SPL_SIZE_LIMIT=0x3A7F0
    CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x4400
    CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
    CONFIG_SPL_LOAD_FIT=y
    CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
    # CONFIG_DISPLAY_CPUINFO is not set
    # CONFIG_MISC_INIT_R is not set
    CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
    CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
    CONFIG_SPL_MAX_SIZE=0x3B000
    CONFIG_SPL_PAD_TO=0x0
    CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
    CONFIG_SPL_BSS_START_ADDR=0x43c3b000
    CONFIG_SPL_BSS_MAX_SIZE=0x3000
    CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
    CONFIG_SPL_BOARD_INIT=y
    CONFIG_SPL_SYS_MALLOC_SIMPLE=y
    CONFIG_SPL_STACK_R=y
    CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
    CONFIG_SPL_SEPARATE_BSS=y
    CONFIG_SYS_SPL_MALLOC=y
    CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
    CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
    CONFIG_SPL_EARLY_BSS=y
    CONFIG_SPL_DMA=y
    CONFIG_SPL_ENV_SUPPORT=y
    CONFIG_SPL_ETH=y
    CONFIG_SPL_DM_MAILBOX=y
    CONFIG_SPL_NET=y
    CONFIG_SPL_NET_VCI_STRING="AM62AX U-Boot R5 SPL"
    CONFIG_SPL_DM_RESET=y
    CONFIG_SPL_POWER_DOMAIN=y
    CONFIG_SPL_RAM_SUPPORT=y
    CONFIG_SPL_RAM_DEVICE=y
    CONFIG_SPL_REMOTEPROC=y
    CONFIG_SPL_THERMAL=y
    CONFIG_SPL_YMODEM_SUPPORT=y
    CONFIG_HUSH_PARSER=y
    CONFIG_CMD_ASKENV=y
    CONFIG_CMD_DFU=y
    CONFIG_CMD_GPT=y
    CONFIG_CMD_MMC=y
    CONFIG_CMD_REMOTEPROC=y
    # CONFIG_CMD_SETEXPR is not set
    CONFIG_CMD_TIME=y
    CONFIG_CMD_FAT=y
    CONFIG_OF_CONTROL=y
    CONFIG_SPL_OF_CONTROL=y
    CONFIG_ENV_IS_NOWHERE=y
    CONFIG_ENV_IS_IN_MMC=y
    CONFIG_SYS_RELOC_GD_ENV_ADDR=y
    CONFIG_SYS_MMC_ENV_PART=1
    CONFIG_SPL_DM=y
    CONFIG_SPL_DM_DEVICE_REMOVE=y
    CONFIG_SPL_DM_SEQ_ALIAS=y
    CONFIG_REGMAP=y
    CONFIG_SPL_REGMAP=y
    CONFIG_SPL_OF_TRANSLATE=y
    CONFIG_CLK=y
    CONFIG_SPL_CLK=y
    CONFIG_SPL_CLK_CCF=y
    CONFIG_SPL_CLK_K3_PLL=y
    CONFIG_SPL_CLK_K3=y
    CONFIG_DMA_CHANNELS=y
    CONFIG_TI_K3_NAVSS_UDMA=y
    CONFIG_TI_SCI_PROTOCOL=y
    # CONFIG_GPIO is not set
    CONFIG_DM_I2C=y
    CONFIG_SYS_I2C_OMAP24XX=y
    CONFIG_DM_MAILBOX=y
    CONFIG_K3_SEC_PROXY=y
    CONFIG_MMC_HS200_SUPPORT=y
    CONFIG_MMC_SDHCI=y
    CONFIG_MMC_SDHCI_ADMA=y
    CONFIG_MMC_SDHCI_AM654=y
    CONFIG_MTD=y
    CONFIG_DM_MTD=y
    CONFIG_MTD_SPI_NAND=y
    CONFIG_DM_SPI_FLASH=y
    CONFIG_PHY_TI_DP83867=y
    CONFIG_DM_ETH_PHY=y
    CONFIG_TI_AM65_CPSW_NUSS=y
    CONFIG_SPL_PHY=y
    CONFIG_PINCTRL=y
    # CONFIG_PINCTRL_GENERIC is not set
    CONFIG_SPL_PINCTRL=y
    # CONFIG_SPL_PINCTRL_GENERIC is not set
    CONFIG_PINCTRL_SINGLE=y
    CONFIG_POWER_DOMAIN=y
    CONFIG_TI_POWER_DOMAIN=y
    CONFIG_K3_SYSTEM_CONTROLLER=y
    CONFIG_REMOTEPROC_TI_K3_ARM64=y
    CONFIG_RESET_TI_SCI=y
    CONFIG_SPECIFY_CONSOLE_INDEX=y
    CONFIG_DM_SERIAL=y
    CONFIG_SOC_DEVICE=y
    CONFIG_SOC_DEVICE_TI_K3=y
    CONFIG_SOC_TI=y
    CONFIG_SPI=y
    CONFIG_DM_SPI=y
    CONFIG_CADENCE_QSPI=y
    CONFIG_TIMER=y
    CONFIG_SPL_TIMER=y
    CONFIG_OMAP_TIMER=y
    CONFIG_LIB_RATIONAL=y
    CONFIG_SPL_LIB_RATIONAL=y
    

    (R5 defconfig)

  • Hi Jie Li,

    After checking with the team, we realized that the patch I provided did not include (at minimum) an update to SoC auto-gen data to enable CPSW Ethernet boot. Since this is an "at minimum" change in order to enable Ethernet boot on AM62A, there might be additional changes that need to be made. 

    The easiest way to get a working baseline was to create a patch with all of the most recent changes for Ethernet boot - including those we have for other SoC devices. I've attached a tarball of all patches corresponding to the most recent updates for Ethernet boot. You can ignore all the non-AM62A related patches only apply the ones related to AM62A. 

    ti-u-boot-2023.04-ethernet-boot-patches-for-09.01.00.008.tar.gz

    These changes were based on the SDK v9.1 U-boot sources and I have been told they were validated on AM62Ax devices (as well as other SoC devices). If these patches continue to not work on SDK v9.0 that you are using, if possible, you could try using SDK v9.1.

    Please let us know if there are any additional issues

    Best regards,

    Daolin

  • Hi Jie Li,

    Please disregard my previous message today.

    I got more information that there is a more proper patch set up. The attached patches in this post should be applied on top of ti-u-boot-2023.04-next tree's commit:
    233f462f4e configs: j7200_evm_r5_defconfig: Define K3_OPP_LOW
    Link to commit: https://git.ti.com/cgit/ti-u-boot/ti-u-boot/commit/?h=ti-u-boot-2023.04-next&id=233f462f4e
    Tree at commit: https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/?h=ti-u-boot-2023.04-next&id=233f462f4e

    Updated patches: am62a-ethernet-boot-patches.zip

    DHCP server configuration file /etc/dhcp/dhcpd.conf: https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/791/am62a_2D00_dhcpd.conf

    You should expect to get something similar to the following boot log:

    U-Boot SPL 2023.04-00030-ged5a293157 (Jan 09 2024 - 16:45:53 +0530)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.1.8--v09.01.08 (Kool Koala)')
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    am62a_init: board_init_f done
    SPL initial stack usage: 17056 bytes
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Trying to boot from eth device
    eth0: ethernet@8000000port@1
    ethernet@8000000port@1 Waiting for PHY auto negotiation to complete....... done
    link up on port 1, speed 1000, full duplex
    BOOTP broadcast 1
    BOOTP broadcast 2
    Using ethernet@8000000port@1 device
    TFTP from server 172.24.145.61; our IP address is 172.24.145.4
    Filename 'tispl.bin'.
    Load address: 0x82000000
    Loading: #################################################################
             #################################################################
             #################################################################
             #######################  0 Bytes
             4.3 MiB/s
    done
    Bytes transferred = 1113543 (10fdc7 hex)
    udma_stop_mem2dev: peer not stopped TIMEOUT !
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    init_env from device 4 not supported!
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.8(release):v2.8-226-g2fcd408bb3-dirty
    NOTICE:  BL31: Built : 00:42:57, Jan 13 2023
    
    U-Boot SPL 2023.04-00030-ged5a293157 (Jan 09 2024 - 16:46:05 +0530)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.1.8--v09.01.08 (Kool Koala)')
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    am62a_init: board_init_f done
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Trying to boot from eth device
    Loading Environment from nowhere... OK
    eth0: ethernet@8000000port@1
    ethernet@8000000port@1 Waiting for PHY auto negotiation to complete....... done
    link up on port 1, speed 1000, full duplex
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    DHCP client bound to address 172.24.145.4 (803 ms)
    Using ethernet@8000000port@1 device
    TFTP from server 172.24.145.61; our IP address is 172.24.145.4
    Filename 'u-boot.img'.
    Load address: 0x82000000
    Loading: #################################################################
             #################################################################
             #################################################################
             #####################  0 Bytes
             1.2 MiB/s
    done
    Bytes transferred = 1105867 (10dfcb hex)
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x12a3 bootmedia = 0x4 bootindex = 0
    Authentication passed
    
    
    U-Boot 2023.04-00030-ged5a293157 (Jan 09 2024 - 16:46:05 +0530)
    
    SoC:   AM62AX SR1.0 HS-FS
    Model: Texas Instruments AM62A7 SK
    DRAM:  2 GiB (effective 4 GiB)
    Core:  58 devices, 28 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0 
    => setenv autoload no
    => dhcp
    link up on port 1, speed 1000, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 172.24.145.4 (3 ms)
    => 
    


    Please give this a try and let us know how it goes.

    Best regards,

    Daolin
     

  • Hi Daolin,

    Thank you for your continued support on this topic !

    although there are some git rejects when trying to patch on my SDK 9.0, but I solved them manually by checking the diffs.

    I can successfully boot from ethernet after applying these patches, the boot log appears to be the same as your example.

    Thank you again !