JETSON ORIN NX 无法烧录系统,提示ERROR: might be timeout in USB write

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" --showlogs --network usb0 jetson-orin-nano-devkit internal
最近新购买了一批核心板,采用官方的载板进行烧录,使用如上命令,如下是我的运行日志:

/home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra/tools/kernel_flash/l4t_initrd_flash_internal.sh --network usb0 --usb-instance 3-2 --device-instance 0 --flash-only --initrd p3768-0000+p3767-0000 mmcblk0
**********************************************
*                                            *
*  Step 1: Build the flashing environment    *
*                                            *
**********************************************
Create flash environment 0
/home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra/bootloader /home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra
/home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra
Finish creating flash environment 0.
****************************************************
*                                                  *
*  Step 2: Boot the device with flash initrd image *
*                                                  *
****************************************************
/home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra/temp_initrdflash/bootloader0 /home/kuper/Nvidia/Jetson/Linux_35.3.1_5.1.1/Linux_for_Tegra
./tegraflash.py --bl uefi_jetson_with_dtb_sigheader.bin.encrypt --bct br_bct_BR.bct --securedev  --bldtb tegra234-p3767-0000-p3768-0000-a0-modify.dtb --applet rcm_2_encrypt.rcm --applet_softfuse rcm_1_encrypt.rcm --cmd "rcmboot"  --cfg secureflash.xml --chip 0x23 --mb1_bct mb1_bct_MB1_sigheader.bct.encrypt --mem_bct mem_rcm_sigheader.bct.encrypt --mb1_cold_boot_bct mb1_cold_boot_bct_MB1_sigheader.bct.encrypt --mb1_bin mb1_t234_prod_aligned_sigheader.bin.encrypt --psc_bl1_bin psc_bl1_t234_prod_aligned_sigheader.bin.encrypt --mem_bct_cold_boot mem_coldboot_sigheader.bct.encrypt  --bins "psc_fw pscfw_t234_prod_sigheader.bin.encrypt; mts_mce mce_flash_o10_cr_prod_sigheader.bin.encrypt; mb2_applet applet_t234_sigheader.bin.encrypt; mb2_bootloader mb2_t234_with_mb2_cold_boot_bct_MB2_sigheader.bin.encrypt; xusb_fw xusb_t234_prod_sigheader.bin.encrypt; dce_fw display-t234-dce_sigheader.bin.encrypt; nvdec nvdec_t234_prod_sigheader.fw.encrypt; bpmp_fw bpmp_t234-TE990M-A1_prod_sigheader.bin.encrypt; bpmp_fw_dtb tegra234-bpmp-3767-0000-a02-3509-a02_with_odm_sigheader.dtb.encrypt; sce_fw camera-rtcpu-sce_sigheader.img.encrypt; rce_fw camera-rtcpu-t234-rce_sigheader.img.encrypt; ape_fw adsp-fw_sigheader.bin.encrypt; spe_fw spe_t234_sigheader.bin.encrypt; tos tos-optee_t234_sigheader.img.encrypt; eks eks_t234_sigheader.img.encrypt; kernel boot0.img; kernel_dtb tegra234-p3767-0000-p3768-0000-a0-modify.dtb"    --secondary_gpt_backup  --bct_backup  --boot_chain A  --instance 3-2
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
 

 Entering RCM boot

[   0.0329 ] mb1_t234_prod_aligned_sigheader.bin.encrypt filename is from --mb1_bin
[   0.0329 ] psc_bl1_t234_prod_aligned_sigheader.bin.encrypt filename is from --psc_bl1_bin
[   0.0329 ] rcm boot with presigned binaries
[   0.0339 ] tegrarcm_v2 --instance 3-2 --new_session --chip 0x23 0 --uid --download bct_br br_bct_BR.bct --download mb1 mb1_t234_prod_aligned_sigheader.bin.encrypt --download psc_bl1 psc_bl1_t234_prod_aligned_sigheader.bin.encrypt --download bct_mb1 mb1_bct_MB1_sigheader.bct.encrypt
[   0.0348 ] BR_CID: 0x80012344705DE8CF2400000002FF0100
[   0.0432 ] Sending bct_br
[   0.0463 ] Sending mb1
[   0.0467 ] Sending psc_bl1
[   0.0562 ] Sending bct_mb1
[   0.0618 ] Generating blob for T23x
[   0.0649 ] tegrahost_v2 --chip 0x23 0 --generateblob blob.xml blob.bin
[   0.0663 ] The number of images in blob is 18
[   0.0669 ] blobsize is 65663722
[   0.0672 ] Added binary blob_uefi_jetson_with_dtb_sigheader.bin.encrypt of size 3182656
[   0.0913 ] Added binary blob_pscfw_t234_prod_sigheader.bin.encrypt of size 375168
[   0.0919 ] Added binary blob_mce_flash_o10_cr_prod_sigheader.bin.encrypt of size 190592
[   0.0924 ] Added binary blob_applet_t234_sigheader.bin.encrypt of size 277312
[   0.0928 ] Not supported type: mb2_applet
[   0.0930 ] Added binary blob_mb2_t234_with_mb2_cold_boot_bct_MB2_sigheader.bin.encrypt of size 437984
[   0.0936 ] Added binary blob_xusb_t234_prod_sigheader.bin.encrypt of size 164352
[   0.0940 ] Added binary blob_display-t234-dce_sigheader.bin.encrypt of size 9097216
[   0.0971 ] Added binary blob_nvdec_t234_prod_sigheader.fw.encrypt of size 294912
[   0.0990 ] Added binary blob_bpmp_t234-TE990M-A1_prod_sigheader.bin.encrypt of size 1048000
[   0.0995 ] Added binary blob_tegra234-bpmp-3767-0000-a02-3509-a02_with_odm_sigheader.dtb.encrypt of size 138880
[   0.1002 ] Added binary blob_camera-rtcpu-sce_sigheader.img.encrypt of size 166304
[   0.1006 ] Added binary blob_camera-rtcpu-t234-rce_sigheader.img.encrypt of size 537952
[   0.1011 ] Added binary blob_adsp-fw_sigheader.bin.encrypt of size 400960
[   0.1015 ] Added binary blob_spe_t234_sigheader.bin.encrypt of size 270336
[   0.1019 ] Added binary blob_tos-optee_t234_sigheader.img.encrypt of size 1064752
[   0.1023 ] Added binary blob_eks_t234_sigheader.img.encrypt of size 9232
[   0.1027 ] Added binary blob_boot0.img of size 47661056
[   0.1239 ] Added binary blob_tegra234-p3767-0000-p3768-0000-a0-modify.dtb of size 344954
[   0.1738 ] tegrarcm_v2 --instance 3-2 --chip 0x23 0 --pollbl --download bct_mem mem_rcm_sigheader.bct.encrypt --download blob blob.bin
[   0.1754 ] BL: version 0.32.0.0-t234-54845784-57325615 last_boot_error: 0
[   0.2908 ] Sending bct_mem
[   0.2990 ] Sending blob
[   0.3886 ] ERROR: might be timeout in USB write.
Error: Return value 3
Command tegrarcm_v2 --instance 3-2 --chip 0x23 0 --pollbl --download bct_mem mem_rcm_sigheader.bct.encrypt --download blob blob.bin
Cleaning up...

提示报错might be timeout in USB write,在Sending blob之后,我注意到之后板卡过了大概30s风扇才开始转动,或许进入了某种模式,但此时电脑终端已经报错退出;
我尝试过主机关闭USB自动挂起,可还是解决不了问题。
奇怪的是,我使用之前购买的核心板,而不是这一批购买的,然后使用同样的USB线缆和载板进行同样的命令烧录,在Sending blob之后,板卡风扇立马开始转动,脚本也正常运行,烧录也成功,因此排除了USB线缆和主机以及载板硬件的问题,这似乎是由核心板引起的,使用的都是JetSon ORIN NX 16GB
我也联系过供应商,供应商回复在出厂时已经烧录过系统,我供电后进入查看,确实可以进入系统并且正常工作,证明核心板是正常的并且没有损坏,但就是无法烧录系统。似乎是由于核心板USB接收数据的问题或是由于bootloader的问题,能否帮忙找出故障原因?

基本上如果

  1. 你買了一批新的module

  2. 只有這批新的module沒辦法燒, 舊的module可以

  3. 你使用的BSP 不是最新版本

多半就是你買到了PCN update過的module. 請你使用最新的BSP試試看能不能燒

我下载了Jetson5.1.1最新的BSP,试了很多次烧录时仍然报错USB write error。但是我试着使用了Jetson6.1的pack 包,它居然成功烧录了。看上去好像是软件系统版本的问题。我有一点疑惑,难道被PCN update过的module就无法烧录Jetson5或者说低版本的系统吗?

Jetson5.1.1最新的BSP

你這句話本身就矛盾了. Jetpack5.1.1在2023年3月就出了. 這東西怎麼會叫做"最新"?
只有最新的Jetpack6或最新的Jetpack5這種說法.

我有一点疑惑,难道被PCN update过的module就无法烧录Jetson5或者说低版本的系统吗

在沒有打任何patch的情況下, 是的. 比方說2023年出的Jetpack是沒辦法直接支援 2024年PCN過的module的

好的,大概明白了,那么如何打Patch补丁包呢

不確定你的是不是最後連結那兩個pcn. 可以先試試看

如何打该补丁包呢

直接在你的Linux_for_Tegra BSP目錄上解壓縮

我发现是PCN的问题,话题可以关闭了,我升级了BSP

1 Like