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.

[参考译文] TDA4VP-Q1:无法将 U-Boot 加载到定制电路板上的 EMMC

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1435231/tda4vp-q1-failed-to-load-u-boot-to-the-emmc-on-custom-board

器件型号:TDA4VP-Q1
Thread 中讨论的其他器件:CSD

工具与软件:

您好!

我尝试将 U-Boot 从 UART U-boot 刷写到定制板上的 EMMC、
我执行了以下步骤:

=> mmc partconf 0 1 1 1 
=> mmc bootbus 0 2 0 0
=> mmc dev 0
=> mmc erase 0x0 0x400
=> loadb 0x82000000
Send the tiboot3.bin file via Kermit
=> mmc write 0x82000000 0x0 0x400
=> mmc erase 0x400 0x1000
=> loadb 0x82000000
Send the tispl.bin_unsigned file via Kermit
=> mmc write 0x82000000 0x400 0x1000
=> mmc erase 0x1400 0x2000
=> loadb 0x82000000
Send the u-boot.img_unsigned file via Kermit
=> mmc write 0x82000000 0x1400 0x2000

我移至 EMMC 后、EMMC 卡住、请查看日志:

U-Boot SPL 2023.04-dirty (Nov 07 2024 - 09:02:49 +0200)
EEPROM not available at 0x50, trying to read at 0x51
Reading on-board EEPROM at 0x51 failed -121
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
i2c_write: error waiting for data ACK (status=0x116)
tps6287x_regulator tps62873@40: CTRL2 reg read failed: -121
SPL initial stack usage: 13456 bytes
Trying to boot from MMC1
Loading Environment from nowhere... OK
init_env from device 17 not supported!
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b8-dirty
NOTICE:  BL31: Built : 07:38:16, Oct  8 2024
I/TC:
I/TC: OP-TEE version: 4.1.0-51-g012cdca49 (gcc version 13.2.1 20231009 (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7))) #1 Tue Oct  8 10:50:04 UTC 2024 aarch64
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check optee.readthedocs.io/.../porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: GIC redistributor base address not provided
I/TC: Assuming default GIC group status and modifier
I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
I/TC: HUK Initialized
I/TC: Activated SA2UL device
I/TC: Fixing SA2UL firewall owner for GP device
I/TC: Enabled firewalls for SA2UL TRNG device
I/TC: SA2UL TRNG initialized
I/TC: SA2UL Drivers initialized
I/TC: Primary CPU switching to normal world boot

U-Boot SPL 2023.04-dirty (Nov 07 2024 - 09:04:07 +0200)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
Trying to boot from MMC1

您能帮我弄清楚原因吗?
我使用了 ti-processor-sdk-linux-adas-j784s4-evm-09_02_00_05。

谢谢!
Rachel

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

    您好!

    正在更新...

    关闭电路板电源->更改为 EMMC 引导模式->打开电路板电源后、我从 EMMC 使用 U-boot。
    它是否与  EXT_CSD[162]位相关? 我需要写:mmc  rst-function 0 1 (根据 https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j784s4/10_00_00_08/exports/docs/linux/Foundational_Components contoc.U-Boot/UG-Memory.html)?

    如果是、那么该警告的含义是什么:  这是一个一次性写入字段。? 能否再次刷写 EMMC? 它会影响其他方面吗?  

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

    你好、Rachel、

    实际上是中更改的偏移 示例 放大器。

    抱歉。

    您是否能够使用以下命令尝试新的偏移量。 我已按要求以粗体显示所需的更改。


    => MMC dev 0 1.
    => MMC 擦除0x0 0x 800
    => Loadb 0x82000000
    通过 Kermit 发送 tiboot3.bin 文件

    => MMC 写入0x82000000 0x0 0x800
    => MMC 擦除 0x800 0x1000
    => Loadb 0x82000000
    通过 Kermit 发送 tispl.bin_unsigned 文件
    => MMC 写入0x82000000 0x800 0x1000
    => MMC 擦除 0x1800 0x2000
    => Loadb 0x82000000
    通过 Kermit 发送 u-boot.img_unsigned 文件
    => MMC 写入0x82000000 0x1800 0x2000

    => MMC partconf 0 1 1 1
    => MMC bootbus 0 2 0 0

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

    尊敬的 Gokul:

    感谢您的回答。

    我更改了中的偏移  

    configs/j784s4_evm_r5_defconfig:
    -CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
    +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400

    在 configs/j784s4_evm_a72_defconfig 中:
    -CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1800
    +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
    在编译并刷写 U-Boot 文件之前、我认为偏移量不是问题。

     关闭电路板电源->更改为 EMMC 引导模式->打开电路板电源后、我从 EMMC 获得 U-boot

    U-Boot SPL 2023.04-dirty (Nov 07 2024 - 09:02:49 +0200)
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed -121
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
    i2c_write: error waiting for data ACK (status=0x116)
    tps6287x_regulator tps62873@40: CTRL2 reg read failed: -121
    SPL initial stack usage: 13456 bytes
    Trying to boot from MMC1
    Loading Environment from nowhere... OK
    init_env from device 17 not supported!
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b8-dirty
    NOTICE:  BL31: Built : 07:38:16, Oct  8 2024
    I/TC:
    I/TC: OP-TEE version: 4.1.0-51-g012cdca49 (gcc version 13.2.1 20231009 (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7))) #1 Tue Oct  8 10:50:04 UTC 2024 aarch64
    I/TC: WARNING: This OP-TEE configuration might be insecure!
    I/TC: WARNING: Please check optee.readthedocs.io/.../porting_guidelines.html
    I/TC: Primary CPU initializing
    I/TC: GIC redistributor base address not provided
    I/TC: Assuming default GIC group status and modifier
    I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
    I/TC: HUK Initialized
    I/TC: Activated SA2UL device
    I/TC: Fixing SA2UL firewall owner for GP device
    I/TC: Enabled firewalls for SA2UL TRNG device
    I/TC: SA2UL TRNG initialized
    I/TC: SA2UL Drivers initialized
    I/TC: Primary CPU switching to normal world boot
    
    U-Boot SPL 2023.04-dirty (Nov 07 2024 - 09:04:07 +0200)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
    Trying to boot from MMC1
    
    
    U-Boot 2023.04-dirty (Nov 07 2024 - 09:04:07 +0200)
    
    SoC:   J784S4 SR1.0 GP
    Model: Texas Instruments J784S4 EVM
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed -121
    Board: J784S4-EVM rev E1
    DRAM:  2 GiB
    idle-statesCore:  92 devices, 32 uclasses, devicetree: separate
    Flash: 0 Bytes
    MMC:   mmc@4f80000: 0, mmc@4fb0000: 1
    Loading Environment from nowhere... OK
    In:    serial@2820000
    Out:   serial@2820000
    Err:   serial@2820000
    am65_cpsw_nuss ethernet@46000000: K3 CPSW: nuss_ver: 0x6BA02102 cpsw_ver: 0x6BA82102 ale_ver: 0x00293904 Ports:1 mdio_freq:1000000
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed -121
    Net:   Rachel phy_init
    Rachel CONFIG_PHY_FIXED
    Rachel phy_fixed_init
    am65_cpsw_nuss_port ethernet@46000000port@1: can't parse phy-handle port 1 (-2)
    eth0: ethernet@46000000port@1
    Hit any key to stop autoboot:  0
    =>
    

    您以前在我的更新中能看到以下内容  吗?请告诉我它是否与 EXT_CSD[162]位有关? 我需要写:mmc  rst-function 0 1 (根据 https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j784s4/10_00_00_08/exports/docs/linux/Foundational_Components contoc.U-Boot/UG-Memory.html)?

    如果是、那么该警告的含义是什么:  这是一个一次性写入字段。? 能否再次刷写 EMMC? 它会影响其他方面吗?  
    当我通过软件进行复位时、从 EMMC 进行的引导卡在中间。

    谢谢!
    Rachel

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

    你好、Rachel、

    [报价 userid="593644" url="~/support/processors-group/processors/f/processors-forum/1435231/tda4vp-q1-failed-to-load-u-boot-to-the-emmc-on-custom-board/5502788 #5502788"]

    关闭电路板电源->更改为 EMMC 引导模式->打开电路板电源后、我从 EMMC 使用 U-boot。
    它是否与  EXT_CSD[162]位相关? 我需要写:mmc  rst-function 0 1 (根据 https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j784s4/10_00_00_08/exports/docs/linux/Foundational_Components contoc.U-Boot/UG-Memory.html)?

    如果是、那么该警告的含义是什么:  这是一个一次性写入字段。? 能否再次刷写 EMMC? 它会影响其他方面吗?  

    [报价]

    否、这与 EXT_CSD[162]位无关。 该位负责在 EMMC 上电时复位 EMMC。

    警告表示一旦该位置位、则不能将其清零、因为它是一次性写入字段。