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.

[参考译文] PROCESSOR-SDK-AM64X:在 u-boot 时自定义器件树加载失败

Guru**** 2486515 points
Other Parts Discussed in Thread: AM6442

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1443866/processor-sdk-am64x-custom-device-tree-load-failed-at-u-boot

器件型号:PROCESSOR-SDK-AM64X
主题中讨论的其他器件:AM6442

工具与软件:

你(们)好  我是 Chan。

我需要您的帮助、这里是我的信息。

电路板 :TI am64xx 定制电路板

SDK 版本:10.00.07.04.

我正在使用 am6442开发定制电路板、当前正在尝试运行 Linux。 我之前成功运行了版本09.02.01.09的 Linux。

但是、版本10会遇到问题。 我向 am64x.env (sdk/board-support/ti-u-boot-2024.04+git/board/ti/am64x)添加了以下代码、以将 fdtfile 从 k3-am642-evm.dtb 更改为 k3-am642-myb.dtb:

findfdt= setenv name_fdt ti/k3-am642-myb.dtb;
	 setenv fdtfile ${name_fdt}

引导日志如下所示:

U-Boot 2024.04-dirty (Nov 27 2024 - 10:23:21 +0900)
SoC:   AM64X SR2.0 HS-FS
Model: Texas Instruments AM642 MYB
EEPROM not available at 0x50, trying to read at 0x51
Reading on-board EEPROM at 0x51 failed -19
DRAM:  2 GiB
Core:  84 devices, 29 uclasses, devicetree: separate
NAND:  0 MiB
MMC:   mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
ti_sci system-controller@44043000: Message not acknowledged
ti-sci-clk clock-controller: ti_sci_clk_enable: put_clock failed (-19)
Enable clock-controller failed
prueth icssg0-eth: clk_enable failed -19
Failed to probe prueth driver
EEPROM not available at 0x50, trying to read at 0x51
Reading on-board EEPROM at 0x51 failed -19
Net:   eth0: ethernet@8000000port@1
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc1 is current device
SD/MMC found on device 1
Failed to load 'uEnv.txt'
8831310 bytes read in 409 ms (20.6 MiB/s)
## Loading kernel from FIT Image at 90000000 ...
   Using 'conf-ti_k3-am642-evm.dtb' configuration
   Verifying Hash Integrity ... sha512,rsa4096:custMpk+ OK
   Trying 'kernel-1' kernel subimage
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x900000e0
     Data Size:    8502355 Bytes = 8.1 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x81000000
     Entry Point:  0x81000000
     Hash algo:    sha512
     Hash value:   b84ce756e15cd8d43d5663403188a682d75e5678104973a8c722272d962896208c15f99a28d209e65c04172b04ba88dcf7f26caa0cc6f0eeba6d784a8f949b0a
   Verifying Hash Integrity ... sha512+ OK
## Loading fdt from FIT Image at 90000000 ...
   Using 'conf-ti_k3-am642-evm.dtb' configuration
   Verifying Hash Integrity ... sha512,rsa4096:custMpk+ OK
   Trying 'fdt-ti_k3-am642-evm.dtb' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x9082a7a4
     Data Size:    64278 Bytes = 62.8 KiB
     Architecture: AArch64
     Load Address: 0x83000000
     Hash algo:    sha512
     Hash value:   8daba83ac0badd6804fc3b1e43b72f936ea02817ca5413ab1bccad63c21911f389be217663f3207f3ff431be43c81ace362655cd919b93f5c7441fc43386e9c3
   Verifying Hash Integrity ... sha512+ OK
   Loading fdt from 0x9082a7a4 to 0x83000000
   Booting using the fdt blob at 0x83000000
Working FDT set to 83000000
   Uncompressing Kernel Image to 81000000
   Loading Device Tree to 000000008ffed000, end 000000008ffffb15 ... OK
Working FDT set to 8ffed000
Starting kernel ...

版本09.02.01.09的成功启动日志如下:

U-Boot 2023.04-dirty (Nov 20 2024 - 15:14:43 +0900)
SoC:   AM64X SR2.0 HS-FS
Model: Texas Instruments AM642 MYB
EEPROM not available at 0x50, trying to read at 0x51
Reading on-board EEPROM at 0x51 failed -19
DRAM:  2 GiB
Core:  59 devices, 30 uclasses, devicetree: separate
NAND:  0 MiB
MMC:   mmc@fa10000 - probe failed: -22
mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
EEPROM not available at 0x50, trying to read at 0x51
Reading on-board EEPROM at 0x51 failed -121
Net:   eth0: ethernet@8000000port@1
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc1 is current device
SD/MMC found on device 1
Failed to load 'boot.scr'
Failed to load 'uEnv.txt'
## Error: "main_cpsw0_qsgmii_phyinit" not defined
8452086 bytes read in 384 ms (21 MiB/s)
name_fit_config=conf-ti_k3-am642-myb.dtb
## Loading kernel from FIT Image at 90000000 ...
   Using 'conf-ti_k3-am642-myb.dtb' configuration
   Verifying Hash Integrity ... sha512,rsa4096:custMpk+ OK
   Trying 'kernel-1' kernel subimage
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x900000f4
     Data Size:    8264744 Bytes = 7.9 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x81000000
     Entry Point:  0x81000000
     Hash algo:    sha512
     Hash value:   5a3fc75d5414363577e3a4d0b00101dc8b59e70b0fa565e1497564ef85fb44b853265ab7bcfc7930448b119452576b50c2e7f5256a41bdf88e1933338cee5e3b
   Verifying Hash Integrity ... sha512+ OK
## Loading fdt from FIT Image at 90000000 ...
   Using 'conf-ti_k3-am642-myb.dtb' configuration
   Verifying Hash Integrity ... sha512,rsa4096:custMpk+ OK
   Trying 'fdt-ti_k3-am642-myb.dtb' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x907fe4f4
     Data Size:    54978 Bytes = 53.7 KiB
     Architecture: AArch64
     Load Address: 0x83000000
     Hash algo:    sha512
     Hash value:   783457f5d15ffc91a5b55906ca1eaa3c1b22b66c097795bd818da3cac7646f0fb68eb8ff3007e991653f94ec11e37683470deae8673c0b13d39e922457160b08
   Verifying Hash Integrity ... sha512+ OK
   Loading fdt from 0x907fe4f4 to 0x83000000
   Booting using the fdt blob at 0x83000000
Working FDT set to 83000000
   Uncompressing Kernel Image
   Loading Device Tree to 000000008ffef000, end 000000008ffff6c1 ... OK
Working FDT set to 8ffef000
Starting kernel ...

如何制作电路板以查找 FDT 文件 k3-am642-myb.dtb?

提前感谢。

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

    您好!

    是否可以在 U-boot 提示符处检查是否应用了 env 设置完成?

    查看的输出 printenv fdtfile

    您还可以在 U-boot 提示符下使用设置 env 变量 setenv fdtfile .dtb.

    此致、
    Aparna