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.

[参考译文] AM62P:snagrecover 错误

Guru**** 2652575 points

Other Parts Discussed in Thread: AM625, AM62P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1586423/am62p-snagrecover-error

部件号: AM62P
主题中讨论的其他器件: AM625

我正在使用 AM62P5 Processor usinf TI 的 BSP Linux 6.6、并且我正在使用此命令  
我们基于 AM62P-SK-EVM 定制硬件

$ snagrecover -s am625 -f ./am62px-Lohr.yaml、我得到了此输出

2025-11-11 13:08:36,144 [INFO] Starting recovery of am625 board
2025-11-11 13:08:36,146 [INFO] Installing firmware tiboot3
2025-11-11 13:08:36,146 [INFO] Searching for partition id...
2025-11-11 13:08:36,147 [INFO] Found DFU Functional descriptor: wTransferSize = 512
2025-11-11 13:08:36,148 [INFO] Downloading file...
2025-11-11 13:08:37,890 [INFO] Could not read status after end of manifest phase
2025-11-11 13:08:37,890 [INFO] Done
2025-11-11 13:08:37,890 [INFO] Done installing firmware tiboot3
Traceback (most recent call last):
  File "/home/sergio.r/.local/bin/snagrecover", line 8, in <module>
    sys.exit(cli())
             ^^^^^
  File "/home/sergio.r/.local/lib/python3.12/site-packages/snagrecover/cli.py", line 140, in cli
    recovery()
  File "/home/sergio.r/.local/lib/python3.12/site-packages/snagrecover/recoveries/am6x.py", line 26, in main
    if dfu.search_partid(dev, "bootloader") is not None:
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sergio.r/.local/lib/python3.12/site-packages/snagrecover/protocols/dfu.py", line 46, in search_partid
    desc = usb.util.get_string(dev, intf.iInterface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sergio.r/.local/lib/python3.12/site-packages/usb/util.py", line 309, in get_string
    raise ValueError("The device has no langid"

在处理器方面、我有这个输出

picocom v3.1

port is        : /dev/ttyUSB0
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
stopbits are   : 1
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : yes
hangup is      : no
nolock is      : yes
send_cmd is    : sz -vv
receive_cmd is : rz -vv -E
imap is        : 
omap is        : 
emap is        : crcrlf,delbs,
logfile is     : none
initstring     : none
exit_after is  : not set
exit is        : no

Type [C-a] [C-h] to see available commands
Terminal ready

U-Boot SPL 2025.01-00551-g743712b9ee4b (Jul 31 2025 - 11:32:44 +0000)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
SPL initial stack usage: 17056 bytes
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###

有人知道如何解决?

BR、

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sergio、

    请参阅本指南: https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/11_01_16_13/exports/docs/linux/Foundational_Components /Tools/Flash_via_Fastboot.html 

    此致、

    会面。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢您、  

    现在、电路板上电时有这个输出

    U-Boot SPL 2025.01-00551-g743712b9ee4b (Jul 31 2025 - 11:32:44 +0000)
    SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
    SPL initial stack usage: 17056 bytes
    Trying to boot from MMC1
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.13.0(release):v2.13.0-259-ge0c4d3903b-dirty
    NOTICE:  BL31: Built : 07:01:36, Jul  1 2025
    


    在我的上一个电路板 (AM62P 入门套件 EVM) 上、有这个输出

    U-Boot SPL 2024.04-ti-g29d0c23d67ee (Nov 29 2024 - 11:41:54 +0000)
    SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
    SPL initial stack usage: 1904 bytes
    Trying to boot from MMC1
    Authentication passed
    Authentication passed

    SPL 2024 e SPL 2025 有何区别?


    BR、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sergio、

    现在、我在给电路板上电时有这个输出
    [/报价]

    我假设您的问题已在遵循共享指南中的步骤后得到解决、请确认。

    SPL 2024 e SPL 2025 的区别是什么?

    这只是一些版本差异、可能您之前使用的是较旧的 SDK 版本。

    此致、

    会面。

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    现在、当我给电路板上电时、会有这个输出

    U-Boot SPL 2024.04-ti-g29d0c23d67ee (Nov 29 2024 - 11:41:54 +0000)
    SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
    SPL initial stack usage: 17056 bytes
    Trying to boot from MMC1
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.13.0(release):v2.13.0-259-ge0c4d3903b-dirty
    NOTICE:  BL31: Built : 07:01:36, Jul  1 2025
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sergio、

    请允许我用一些时间在我的 EVM 上进行测试。

    此致、

    会面。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    也许这会有所帮助、

    这是我的引导加载程序器件树

    // SPDX-License-Identifier: GPL-2.0-only OR MIT
    /*
     * Device Tree file for the AM62P5 Board
     */
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include <dt-bindings/bus/ti-sysc.h>
    #include <dt-bindings/input/input.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h> 
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    
    / {
    	compatible = "ti,am62p5-sk", "ti,am62p5";
    	model = "AM62P5 SK - BOOTLOADER";
    
    	aliases {
    		serial0 = &main_uart0;
    		serial1 = &wkup_uart0;
    		mmc0 = &sdhci0;
    		ethernet0 = &cpsw_port1;
    		usb0 = &usb0;
    		usb1 = &usb1;
    	};
    
    	chosen {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		stdout-path = &main_uart0;
    
    	};
    
    	memory@80000000 {
    		/* 8G RAM */
    		reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
    		      <0x00000008 0x80000000 0x00000001 0x80000000>;
    		device_type = "memory";
    		bootph-pre-ram;
    	};
    
    	reserved_memory: reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		secure_tfa_ddr: tfa@9e780000 {
    			reg = <0x00 0x9e780000 0x00 0x80000>;
    			no-map;
    		};
    
    		secure_ddr: optee@9e800000 {
    			reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
    			no-map;
    		};
    
    		wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c900000 0x00 0x01e00000>;
    			no-map;
    		};
    	};
    
        vmain_pd: regulator-0 {
    		/* TPS65988 PD CONTROLLER OUTPUT */
    		compatible = "regulator-fixed";
    		regulator-name = "vmain_pd";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		regulator-always-on;
    		regulator-boot-on;
    		bootph-all;
    	};
    
    	vcc_5v0: regulator-1 {
    		/* Output of TPS630702RNMR */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_5v0";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    		bootph-all;
    	};
    
    	vcc_3v3_main: regulator-2 {
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_3v3_main";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_3v3_sys: regulator-3 {
    		/* output of TPS222965DSGT */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_3v3_sys";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		vin-supply = <&vcc_3v3_main>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vdd_1v8_codec: regulator-4 {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_1v8_codec";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		vin-supply = <&vcc_3v3_main>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	leds {
    		compatible = "gpio-leds";
    		pinctrl-names = "default";
    		pinctrl-0 = <&usr_led_1_pins_default>, <&usr_led_2_pins_default>;
    
    		led-0 {
    			label = "am62-sk:green:heartbeat";
    			gpios = <&main_gpio0 72 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "off";
    		};
    
    		led-1 {
    			label = "am62-sk:red:heartbeat";
    			gpios = <&mcu_gpio0 21 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "off";
    		};
    	};
    
    	opp-table {
    		/* Add 1.4GHz OPP for am62p5-sk board. Requires VDD_CORE at 0v85 */
    		opp-1400000000 {
    			opp-hz = /bits/ 64 <1400000000>;
    			opp-supported-hw = <0x01 0x0004>;
    			clock-latency-ns = <6000000>;
    		};
    	};
    };
    
    &main_i2c0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c0_pins_default>;
    	clock-frequency = <400000>;
    
    };
    
    &main_i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c1_pins_default>;
    	clock-frequency = <400000>;
    
    };
    
    &main_i2c2 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c2_pins_default>;
    	clock-frequency = <400000>;
    
    };
    
    &sdhci0 {
    	status = "okay";
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    	bootph-all;
    };
    
    &main_gpio0 {
    	bootph-all;
    };
    
    &main_gpio1 {
    	bootph-all;
    };
    
    &mcu_pmx0 {
    	bootph-all;
    	
    	usr_led_2_pins_default: usr-led-2-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_MCU_IOPAD(0x005c, PIN_INPUT, 7) /* (F14) MCU_RESETSTATz.MCU_GPIO0_21 */
    		>;
    	};
    };
    
    &main_pmx0 {
    	bootph-all;
    
    	usr_led_1_pins_default: usr-led-1-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x0128, PIN_INPUT, 7) /* (K25) MMC2_SDWP.GPIO0_72 - LED_DEBUG1*/
    		>;
    	};
    
    	main_i2c0_pins_default: main_i2c0-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x01e0, PIN_INPUT_PULLUP, 0) /* (B25) I2C0_SCL */
    			AM62PX_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (A24) I2C0_SDA */
    		>;
    	};
    	main_i2c1_pins_default: main_i2c1-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x01e8, PIN_INPUT_PULLUP, 0) /* (C24) I2C1_SCL */
    			AM62PX_IOPAD(0x01ec, PIN_INPUT_PULLUP, 0) /* (B24) I2C1_SDA */
    		>;
    	};
    	main_i2c2_pins_default: main_i2c2-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x00b0, PIN_INPUT_PULLUP, 1) /* (T22) GPMC0_CSn2.I2C2_SCL */
    			AM62PX_IOPAD(0x00b4, PIN_INPUT_PULLUP, 1) /* (U25) GPMC0_CSn3.I2C2_SDA */
    		>;
    	};
    
    	main_rgmii1_pins_default: main_rgmii1-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x014c, PIN_INPUT, 0) /* (B15) RGMII1_RD0 */
    			AM62PX_IOPAD(0x0150, PIN_INPUT, 0) /* (B16) RGMII1_RD1 */
    			AM62PX_IOPAD(0x0154, PIN_INPUT, 0) /* (A14) RGMII1_RD2 */
    			AM62PX_IOPAD(0x0158, PIN_INPUT, 0) /* (B14) RGMII1_RD3 */
    			AM62PX_IOPAD(0x0148, PIN_INPUT, 0) /* (A16) RGMII1_RXC */
    			AM62PX_IOPAD(0x0144, PIN_INPUT, 0) /* (A15) RGMII1_RX_CTL */
    			AM62PX_IOPAD(0x0134, PIN_INPUT, 0) /* (A18) RGMII1_TD0 */
    			AM62PX_IOPAD(0x0138, PIN_INPUT, 0) /* (C17) RGMII1_TD1 */
    			AM62PX_IOPAD(0x013c, PIN_INPUT, 0) /* (A17) RGMII1_TD2 */
    			AM62PX_IOPAD(0x0140, PIN_INPUT, 0) /* (C16) RGMII1_TD3 */
    			AM62PX_IOPAD(0x0130, PIN_INPUT, 0) /* (B17) RGMII1_TXC */
    			AM62PX_IOPAD(0x012c, PIN_INPUT, 0) /* (B18) RGMII1_TX_CTL */
    		>;
    	};
    
    	main_uart0_pins_default: main_uart0-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x01c8, PIN_INPUT, 0) /* (A22) UART0_RXD */
    			AM62PX_IOPAD(0x01cc, PIN_OUTPUT, 0) /* (B22) UART0_TXD */
    		>;
    	};
    
    	main_wkup_uart0_pins_default: main_wkup_uart0-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_MCU_IOPAD(0x0024, PIN_INPUT, 0) /* (D8) WKUP_UART0_RXD */
    			AM62PX_MCU_IOPAD(0x0028, PIN_OUTPUT, 0) /* (D7) WKUP_UART0_TXD */
    		>;
    	};
    
    	main_usb0_pins_default: main_usb0-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x0258, PIN_OUTPUT, 0) /* (G21) USB1_DRVVBUS */
    		>;
    	};
    	main_usb1_pins_default: main_usb1-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x0254, PIN_OUTPUT, 0) /* (G22) USB0_DRVVBUS */
    		>;
    	};
    
    	main_mdio1_pins_default: mymdio1-default-pins {
    		pinctrl-single,pins = <
    			AM62PX_IOPAD(0x0160, PIN_OUTPUT, 0) /* (F17) MDIO0_MDC */
    			AM62PX_IOPAD(0x015c, PIN_INPUT, 0) /* (F16) MDIO0_MDIO */
    		>;
    	};
    };
    
    &epwm0{
    	status = "okay";
    };
    
    &epwm1{
    	status = "okay";
    };
    
    &cpsw3g {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_rgmii1_pins_default>;
    };
    
    &cpsw_port1 {
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy0>;
    };
    
    &cpsw_port2 {
    	status = "disabled";
    };
    
    &cpsw3g_mdio {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mdio1_pins_default>;
    	status = "okay";
    
    	cpsw3g_phy0: ethernet-phy@0 {
    		reg = <0>;
    		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
    		ti,min-output-impedance;
    	};
    
    };
    
    &main_uart0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart0_pins_default>;
    	status = "okay";
    	bootph-all;
    };
    
    &mailbox0_cluster0 {
    	mbox_r5_0: mbox-r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &mailbox0_cluster1 {
    	mbox_mcu_r5_0: mbox-mcu-r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &wkup_uart0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_wkup_uart0_pins_default>;
    	status = "okay";
    	bootph-all;
    };
    
    /* mcu_gpio0 and mcu_gpio_intr are reserved for mcu firmware usage */
    &mcu_gpio0 {
    	status = "reserved";
    };
    
    &mcu_gpio_intr {
    	status = "reserved";
    };
    
    &mcu_r5fss0 {
    	status = "okay";
    };
    
    &usbss0 {
    	status = "okay";
    	ti,vbus-divider;
    };
    
    &usbss1 {
    	status = "okay";
    	ti,vbus-divider;
    };
    
    &usb0 {
    	dr_mode = "host";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_usb0_pins_default>;
    };
    
    &usb1 {
    	dr_mode = "host";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_usb1_pins_default>;
    };

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经解决了问题的第一部分、现在出现了这个错误

    U-Boot SPL 2024.04-ti-g29d0c23d67ee (Nov 29 2024 - 11:41:54 +0000)
    SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
    SPL initial stack usage: 17056 bytes
    Trying to boot from MMC1
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.13.0(release):v2.13.0-259-ge0c4d3903b-dirty
    NOTICE:  BL31: Built : 07:01:36, Jul  1 2025
    
    U-Boot SPL 2024.04-ti-g29d0c23d67ee (Nov 29 2024 - 11:41:54 +0000)
    SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
    SPL initial stack usage: 1776 bytes
    Trying to boot from MMC1
    Authentication passed
    Authentication passed
    
    
    U-Boot 2024.04-ti-g29d0c23d67ee (Nov 29 2024 - 11:41:54 +0000)
    
    SoC:   AM62PX SR1.0 HS-FS
    Model: LOHR AM62P SOM on Head Unit Advanced BOOTLOADER
    DRAM:  2 GiB (effective 8 GiB)
    Core:  68 devices, 27 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0
    Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1... 
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0 
    switch to partitions #0, OK
    mmc0(part 0) is current device
    SD/MMC found on device 0
    Failed to load 'uEnv.txt'
    46316032 bytes read in 179 ms (246.8 MiB/s)
    Failed to load 'ti/k3-am62p5-sk.dtb'
    Failed to load '/boot/Image'
    Failed to load '/boot/dtb/ti/k3-am62p5-lohr-hu-advanced.dtb'
    libfdt fdt_check_header(): FDT_ERR_BADMAGIC
    No FDT memory address configured. Please configure
    the FDT address via "fdt addr <address>" command.
    Aborting!
    ERROR: Did not find a cmdline Flattened Device Tree
    Could not find a valid device tree
    Scanning for bootflows in all bootdevs
    Seq  Method       State   Uclass    Part  Name                      Filename
    ---  -----------  ------  --------  ----  ------------------------  ----------------
    Scanning global bootmeth 'efi_mgr':
    No EFI system partition
    No EFI system partition
    Failed to persist EFI variables
    No EFI system partition
    Failed to persist EFI variables
    No EFI system partition
    Failed to persist EFI variables
      0  efi_mgr      ready   (none)       0  <NULL>                    
    ** Booting bootflow '<NULL>' with efi_mgr
    Loading Boot0000 'mmc 0' failed
    EFI boot manager: Cannot load any image
    Boot failed (err=-14)
    Scanning bootdev 'mmc@fa10000.bootdev':
    Bus usb@31000000: Register 1000840 NbrPorts 1
    Starting the controller
    USB XHCI 1.10
    Bus usb@31100000: Register 1000840 NbrPorts 1
    Starting the controller
    USB XHCI 1.10
    scanning bus usb@31000000 for devices... 1 USB Device(s) found
    scanning bus usb@31100000 for devices... 1 USB Device(s) found
    ethernet@8000000port@1 Waiting for PHY auto negotiation to complete......... TIMEOUT 
    !
    am65_cpsw_nuss_port ethernet@8000000port@1: phy_startup failed
    am65_cpsw_nuss_port ethernet@8000000port@1: am65_cpsw_start end error
    ethernet@8000000port@1 Waiting for PHY auto negotiation to complete......... TIMEOUT 
    !
    am65_cpsw_nuss_port ethernet@8000000port@1: phy_startup failed
    am65_cpsw_nuss_port ethernet@8000000port@1: am65_cpsw_start end error
    No more bootdevs
    ---  -----------  ------  --------  ----  ------------------------  ----------------
    (1 bootflow, 1 valid)
    => 
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    u-boot 似乎无法找到文件系统、您能否确认已将所有映像刷写到 eMMC 中、您可以共享用于刷写的 Snagfactory YAML 配置文件。

    另外、了解如何解决之前的问题也会有所帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    之前我已经解决了添加到我的 binman 的 faliure

    	/* Added by meta-lohr: tiboot3 image for LOHR board (R5 SPL) */
    	tiboot3-am62px-hs-lohr.bin {
    		filename = "tiboot3-am62px-hs-lohr.bin";
    		symlink = "tiboot3.bin";
    
    		ti-secure-rom {
    			content = <&u_boot_spl_lohr>, <&ti_fs_enc_fs_lohr>, <&combined_tifs_cfg_fs>,
    				  <&combined_dm_cfg_fs_lohr>, <&sysfw_inner_cert_fs_lohr>;
    			combined;
    			dm-data;
    			sysfw-inner-cert;
    			keyfile = "custMpk.pem";
    			sw-rev = <1>;
    			content-sbl = <&u_boot_spl_lohr>;
    			content-sysfw = <&ti_fs_enc_fs_lohr>;
    			content-sysfw-data = <&combined_tifs_cfg_fs>;
    			content-sysfw-inner-cert = <&sysfw_inner_cert_fs_lohr>;
    			content-dm-data = <&combined_dm_cfg_fs_lohr>;
    			load = <0x43c00000>;
    			load-sysfw = <0x40000>;
    			load-sysfw-data = <0x67000>;
    			load-dm-data = <0x43c4a800>;
    		};
    
    		u_boot_spl_lohr: u-boot-spl {
    			no-expanded;
    		};
    
    		/* Use same sysfw artifact names as FS node by default; adjust filenames if needed */
    		ti_fs_enc_fs_lohr: ti-fs-enc.bin {
    			filename = "ti-sysfw/ti-fs-firmware-am62px-hs-fs-enc.bin";
    			type = "blob-ext";
    			optional;
    		};
    
    		sysfw_inner_cert_fs_lohr: sysfw-inner-cert {
    			filename = "ti-sysfw/ti-fs-firmware-am62px-hs-fs-cert.bin";
    			type = "blob-ext";
    			optional;
    		};
    
    		combined_dm_cfg_fs_lohr: combined-dm-cfg.bin {
    			filename = "combined-dm-cfg.bin";
    			type = "blob-ext";
    		};
    
    		/* embed LOHR-specific spl DTB for ATF/DDR info */
    		lohr_fdt: fdt-0 {
    			description = "k3-am62p5-lohr-hu-advanced";
    			type = "flat_dt";
    			arch = "arm";
    			compression = "none";
    
    			ti-secure {
    				content = <&spl_am62p5_lohr_dtb>;
    				keyfile = "custMpk.pem";
    			};
    
    			spl_am62p5_lohr_dtb: blob-ext {
    				filename = "spl/dts/k3-am62p5-lohr-hu-advanced.dtb";
    			};
    		};
    	};
    };
    
    #endif /* CONFIG_TARGET_AM62P5_R5_EVM */
    
    #if IS_ENABLED(CONFIG_TARGET_AM62P5_A53_EVM)


    如何“共享您用于刷写的 Snagfactory YAML 配置文件“? 我从未使用过这个工具。

    BR。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如何“共享您用于刷写的 Snagfactory YAML 配置文件“? 我从未使用过此工具。

    那么、您能告诉我如何将这些映像刷写到 eMMC、以及所有映像都是刷写的吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我将 Balena etcher 与我使用 storage.ext4 和 rootfs.ext4 创建的.wic 配合使用。 我的系统是基于 k3-am62p-sk 开发的。

    BR。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能否分享以下命令的输出?

    => printenv
    => mmc dev 0
    => mmc part
    => ls mmc 0:1
    => ls mmc 0:2 /boot

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    =>打印  
    ADDR_FIT = 0x90000000
    ARCH=臂
    args_all=setenv optargs ${optargs}earlycon=ns16550a、mmio32、0x02800000 ${mtdparts}
    args_mc=load mmc 0:1 ${loadaddr}映像;加载 mmc 0:1 ${FDT_addr_r}ti/k3-am62p5-sk.dtb;运行 finduid;setenv optargs “${optargs}vt.global_default=0 consoleblank=0 fbcon=map:0 logo.n
    logo“;setenv vidargs video=LVDS-1:1280x720@60、bpp=32;setenv bootargs console=${console}quiet vmalloc=256M ${optargs}root=/dev/mmcblk ${mmcdev}p${mmcpart}ro rootfstype=${mmcrootfstype}$
    {vidargs}
    波特率=115200
    board=am62px
    board_name=am62px
    BOOT=MMC
    BOOT_FDT=Try
    BOOT_FIT=0
    boot_rprocs= if test ${dorprocboot}-eq 1 && test ${boot}= mmc;然后 rproc init;运行 boot_rprocs_mmc;fi;
    boot_rprocs_mc=env set rproc_id;env set rproc_fw;env set secure_simply;如果 test ${secure_rprocs}-eq 1;则 env set secure_simply -sec;fi;对于${rproc_FW_binaries}中的 i;如果 test -z、则执行  
    “${rproc_id}“;然后 env set rproc_id $i;else env set rproc_fw $i${secure_suffix};运行 rproc_load_and_boot_one;env set rproc_id;env set rproc_fw;fi; 已完成
    boot_targets=mmc1 mmc0 USB PXE DHCP
    bootargs=console=ttyS2115200n8 quiet vmalloc=256M earlycon=ns16550a、mmio32、0x02800000 vt.global_curser_default=0 consoleblank=0 fbcon=map:0 logo.nologo earlycon=ns16550a、mmio32、0x02800000 v
    t.global_curser_default=0 consoleblank=0 fbcon=map:0 logo.nologo arlycon=ns16550a,mmio32,0x0000 vt.global_curser_default=0 consoleblank=0 fbcon=map:0 logo.nologo root=/dev/mmcblk0p2 ro  
    rootfstype=ext4 Rootwait video=LVDS-1:1280x720@60、bpp=32
    bootcmd=运行 envboot;运行 bootcmd_ti_mcm;bootflow scan -lb
    bootcmd_mc=run init_${boot};运行 update_do_main_cpsw0_qsgmii_phyinit;如果测试${do_main_cpsw0_qsgmii_phyinit}-eq 1;然后运行 main_cpsw0_qsgmii_phyinit;fi;运行 boot_rprocs;如果测试${bo}
    ot_fit}-eq 1;然后运行 get_fit_${boot};运行 get_fit_overlaystring;运行 run_fit;else; 运行 get_kern_${boot};运行 get_FDT_${boot};运行 get_overlay_${boot};运行 run_kern;fi;
    Bootdelay=2
    bootdir=/boot
    bootenvfile=uEnv.txt
    BOOTM_size=0x10000000
    Bootpart=0:2
    bootscript=echo 从 MMC${mmcdev}...运行 bootscript;source ${loadaddr}
    console=ttyS2115200n8.
    CPU=ARMv8
    dfu_alt_info_eMMC=rawemmc RAW 0 0x800000 mmcpart 1;rootfs 部分 0 1;tiboot3.bin.raw RAW 0x0 0x400 mmcpart 1;tispl.bin.raw RAW 0x400 0x1000 mmcpart 1;u-boot.img.raw 原始 0x1400 0x2000 mmcpa
    RT 1;u-env.raw RAW 0x3400 0x100 mmcpart 1;sysfw.itb.raw 原始 0x3600 0x800 mmcpart 1
    dfu_alt_info_mc=boot 部分 1;rootfs 部分 1 2;tiboot3.bin fat 1 1;tispl.bin fat 1 1;u-boot.img fat 1 1;uEnv.txt fat 1 1;sysfw.itb fat 1 1
    dfu_alt_info_nand=nand.tiboot3 第 0 部分 1;nand.tispl 第 0 部分 2;nand.tiboot3.backup 第 0 部分 3;nand.u-boot 第 0 部分 4;nand.u-boot-env 第 0 部分 5;nand.u-boot-env.backup 第 0 部分;nand.file-system  
    第 0 部分 7.
    dfu_alt_info_ospi = tiboot3.bin raw 0x0 0x080000;tispl.bin raw 0x080000 0x200000;u-boot.img raw 0x280000 0x400000;u-boot-env raw 0x680000 0x020000;sysfw.itb raw 0x6c0000 0x100000;rootfs r
    AW 0x800000 0x3800000
    dfu_alt_info_ospi_nand=ospi_nand.tiboot3 第 1 部分;ospi_nand.tispl 第 2 部分;ospi_nand.u-boot 第 3 部分;ospi_nand.env 第 4 部分;ospi_nand.env.backup 第 5 部分; ospi_nand.rootfs 第 6 部分;ospi_nand.phypat
    第 7 部分
    dfu_alt_info_ram = tispl.bin ram 0x80080000 0x200000;u-boot.img ram 0x81000000 0x400000
    do_main_cpsw0_qsgmii_phyinit=0
    dorprocboot=0
    dtboaddr=0x89000000
    envboot=if MMC dev ${mmcdev};然后如果 MMC 重新扫描;然后在器件${mmcdev}上找到 echo SD/MMC;如果 test -n “${loadbootscript}“&&运行 loadbootscript;然后运行 bootscript;否则运行 loadboote
    nv;然后从${bootenvfile}加载 echo env;运行 importbootenv;fi;如果 test -n $uenvcmd;然后回显正在运行 uenvcmd ...;运行 uenvcmd;fi;fi;fi; FI;
    ethact=Ethernet@8000000port@1
    ethaddr=86:37:7c:A6:C6:32
    fDT_addr_r=0x88000000
    fdtaddr=0x88000000
    fdtcontroladdr=fdea1230
    fdtfile=ti/k3-am62p5-Lohr-hu-advanced.dtb
    fdtoverlay_addr_r=0x89500000
    fileaddr=82000000
    filesize=2c2ba00
    findfdt=echo 警告:fdtfile 已设置。 停止在脚本中使用 findfdt
    finduuid=part uuid ${boot}${bootpart}uuid
    get_FDT_MMC=load MMC ${bootpart}${fdtaddr}${bootdir}/dtb/${fdtfile}
    get_fit_config=setextpr name_fit_config gsub /_ conf-${fdtfile}
    GET_FIT_MMC=加载 MMC ${bootpart}${addr_fit}${bootdir}/${name_fit}
    get_fit_overlaystring=for overlaystring in $name_overlaystrings; do;setexpr name_fit_overlay gsub /_ conf-${overlaystring};setenv overlaystring ${overlaystring}'#'${name_fit_overlay};done;
    get_kern_mc=load mmc ${bootpart}${loadaddr}${bootdir}/${name_kern}
    get_overlay_mc=FDT address ${fdtaddr};FDT 调整大小 0x100000;对于$name_overlays 中的重叠;do;加载 mmc ${bootpart}${dtboaddr}${bootdir}/dtb/${overlay}&& FDT Apply ${dtboaddr};done;
    importbootenv=echo 导入环境 from MMC${mmcdev}...;env import -t ${loadaddr}${filesize}
    init_mc=run args_all args_mmc
    kernel_addr_r=0x82000000
    loadaddr=0x82000000
    loadbootenv=fatload MMC ${mmcdev}${loadaddr}${bootenvfile}
    loadfdt=load ${devtype}${bootpart}${fdtaddr}${bootdir}/dtb/${fdtfile}
    loadimage=load ${devtype}${bootpart}${loadaddr}${bootdir}/${bootfile}
    mmcboot=if mmc dev ${mmcdev};then devnum=${mmcdev};devtype=mmc;if mmc rescan;then echo SD/MMC found on device ${mmcdev};if run lomage;然后运行 args_mmc;if test ${boot_fit}-eq 1;t
    hen run run_fit;否则运行 mmcloados;fi;fi; FI;
    mmcdev=0
    mmcloados=if test ${boot_FDT}= yes || test ${boot_FDT}= try;然后运行 get_FDT_mmc;然后运行 bootz ${loadaddr}-${fdtaddr};否则如果 test ${boot_FDT}= try;则为 bootz;否则回声警告:canno
    t 加载 DT;fi;fi;否则 bootz;fi;
    mmcpart=2
    mmcrootfstype=ext4 Rootwait
    NAME_FIT=fitImage
    name_kern=Image
    optargs=earlycon=ns16550a、mmio32、0x02800000 vt.global_cursor_default=0 consoleblank=0 fbcon=map:0 logo.nologo earlycon=ns16550a、mmio32、0x02800000 vt.global_cursor_default=0 consoleblank=0 fb
    con=map:0 logo.nologo earlycon=ns16550a、mmio32、0x02800000 vt.global_cursor_default=0 consoleblank=0 fbcon=map:0 logo.nologo
    partitions=name=rootfs、start=0、size=-、uuid=${uuid_gp_rootfs}
    pxefile_addr_r=0x80100000
    ramdisk_addr_r=0x88080000
    Rd_spec =-
    rdaddr=0x80080000
    rproc_FW_binaries= 0 /lib/firmware/am62p-mcu-r5f0_0-fw
    rproc_load_and_boot_one=如果加载 mmc ${bootpart}$loadaddr ${rproc_fw};如果 rproc 加载${rproc_id}${loadaddr}${filesize};则 rproc 启动${rproc_id};fi;fi
    run_fit =运行 get_fit_config;bootm ${addr_fit}#${name_fit_config}${overlaystring}
    run_kern=booti ${loadaddr}${rd_spec}${fdtaddr}
    scriptaddr=0x80000000
    SECURE_rprocs=0
    soc = K3
    splashfile=ti_logo_414x97_32bpp.bmp.gz
    splashimage=0x80200000
    splashpos=m,m
    splashsource=mmc
    stderr=serial@2800000
    stdin = serial@2800000
    stdout=串行@2800000
    update_do_main_cpsw0_qsgmii_phyinit=setenv do_main_cpsw0_qsgmii_phyinit 0;
    update_to_fik=setenv loadaddr ${addr_fit};setenv bootfile ${name_fit}
    UUUID=11723f83-02
    供应商= ti
    vidargs=video=LVDS-1:1280x720@60、bpp=32

    环境大小:6782/126972 字节


    => MMC dev 0
    切换到分区#0、确定
    mmc0(第 0 部分)是当前设备
    => MMC 器件

    MMC 设备 0 的分区映射 --  分区类型:DOS

    器件  开始扇区  编号扇区   UUID       参数
     1   2048       262144.      11723f83-01   0c 引导
     2   264192.      4614144.      11723f83-02 83    
     3   4878336      7157760      11723f83-03 83    
     4   12036096     3158016      11723f83-04 83    
    => ls MMC 0:1
     46316032  图像
          TI/
      323594  tiboot3.bin
     1428947  tispl.bin
     1205775  u-boot.img
      126976  uboot.env
          BOOT/

    5 个文件、2 个目录

    => ls mmc 0:2 /boot

        4096.
        4096.
    =>  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    => mmc dev 0
    switch to partitions #0, OK
    mmc0(part 0) is current device
    => mmc part
    
    Partition Map for MMC device 0  --   Partition Type: DOS
    
    Part    Start Sector    Num Sectors     UUID            Type
      1     2048            262144          11723f83-01     0c Boot
      2     264192          4614144         11723f83-02     83
      3     4878336         7157760         11723f83-03     83
      4     12036096        3158016         11723f83-04     83
    => ls mmc 0:1
     46316032   Image
                ti/
       323594   tiboot3.bin
      1428947   tispl.bin
      1205775   u-boot.img
       126976   uboot.env
                boot/
    
    5 file(s), 2 dir(s)
    
    => ls mmc 0:2 /boot
    <DIR>       4096 .
    <DIR>       4096 ..

    根据此输出、eMMC 被划分为 4 个逻辑分区、但第二个分区的“/boot"目录“目录中没有任何内容。 由于在环境变量中将 bootpart 设置为“0:2“、U-Boot 将尝试从该分区加载内核和 DTB。

    如果已将 rootfs 刷写到另一个分区、请将 bootpart 环境变量修改到该分区。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢、这解决了我的问题。 现在当我进入内核它看起来奇怪的字符,如下面所示。 对此有何看法?  

    U-Boot SPL 2024.04-ti-g29d0c23d67ee (2024 年 11 月 29 日 — 11:41:54 +0000)
    SYSFW ABI:4.0(固件版本 0x000b'11.1.5--v11.01.05(花哨 Rat)')
    SPL 初始栈使用量:17056 字节
    尝试从 MMC1 引导
    身份验证已通过
    身份验证已通过
    身份验证已通过
    身份验证已通过
    身份验证已通过
    在 ARM64 内核上启动 ATF……
    ͭ ݮKc ˬ、- ٹ 렫; r$h 2 j-Ƚ4hˮ'٦ ͅ' 。


    BR、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    现在当我输入内核时、它出现了奇怪的字符、如下所示。 有什么想法吗?

    我看不到内核日志。 在 R5 SPL 本身之后日志停止。 这是问题吗? 如果是、您是如何确认内核正在成功引导的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    只需几次回复、我就能看出您能够完全引导到 A53 U-Boot。 但是、最新的日志并未显示这一点。 UART 控制台上有垃圾字符、现在发生了什么更改?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想,这是我的 bootargs。