Jetson Thor create and flash image fail

Hello,I use 22.04.1-Ubuntu, using the Thor core board + our own designed motherboard, we encountered an issue where the programming and burning failed.

The specific steps are as follows:

  1. Press the reset button + RCM button to enter the download mode. When the USB is plugged in, the system can recognize “NVIDIA Corp. APX”

  2. Use the following programming command
    l4t_initrd_flash.sh jetson-agx-thor-devkit internal

  3. The errorlog is as follows:[ 2.6517 ] Boot Rom communication completed
    [ 2.6543 ] tegrahost_v2 --chip 0x26 0 --align applet_t264_aligned.bin
    [ 2.6571 ] tegrahost_v2 --chip 0x26 0 --magicid MB2A --ratchet_blob ratchet_blob.bin --appendsigheader applet_t264_aligned.bin zerosbk
    [ 2.6580 ] adding BCH for applet_t264_aligned.bin
    [ 2.6773 ] tegrasign_v3.py --key None --list applet_t264_aligned_sigheader.bin_list.xml --pubkeyhash pub_key.key --sha sha512
    [ 2.6775 ] Assuming zero filled SBK key
    [ 2.6808 ] Warning: pub_key.key is not found
    [ 2.6818 ] tegrahost_v2 --chip 0x26 0 --updatesigheader applet_t264_aligned_sigheader.bin.encrypt applet_t264_aligned_sigheader.bin.hash zerosbk
    [ 2.6864 ] All applet flow required files are saved in applet folder
    [ 2.6864 ] Sending mb2_applet…

    [ 2.6872 ] tegrarcm_v2 --chip 0x26 0 --pollbl --download applet applet_t264_sigheader.bin.encrypt
    [ 2.6881 ] ERROR: might be timeout in USB read
    Error: Return value 8

    Command tegrarcm_v2 --chip 0x26 0 --pollbl --download applet applet_t264_sigheader.bin.encrypt
    [ 2.8335 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8343 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8350 ] Retrieving board information
    [ 2.8353 ] tegrarcm_v2 --chip 0x26 0 --oem platformdetails chip chip_info.bin
    [ 2.8356 ] Retrieving boot device information
    [ 2.8357 ] tegrarcm_v2 --chip 0x26 0 --oem platformdetails bootdeviceinfo bootdevice_info.bin
    [ 2.8360 ] INFO: bootdevice_info.bin exists and the same

    [ 2.8360 ] Retrieving EEPROM data
    [ 2.8360 ] Renaming /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/cvm.bin to /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/cvm.bin.sav
    [ 2.8361 ] tegrarcm_v2 --oem platformdetails eeprom cvm /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/cvm.bin --chip 0x26 0
    [ 2.8366 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8372 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8376 ] Retrieving board information
    [ 2.8379 ] tegrarcm_v2 --chip 0x26 0 --oem platformdetails chip chip_info.bin
    [ 2.8382 ] Retrieving boot device information
    [ 2.8384 ] tegrarcm_v2 --chip 0x26 0 --oem platformdetails bootdeviceinfo bootdevice_info.bin
    [ 2.8387 ] INFO: bootdevice_info.bin exists and the same

    [ 2.8387 ] Retrieving EEPROM data
    [ 2.8387 ] tegrarcm_v2 --oem platformdetails eeprom cvb /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/cvb.bin --chip 0x26 0
    [ 2.8391 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8395 ] tegrarcm_v2 --chip 0x26 0 --ismb2applet
    [ 2.8398 ] Dumping customer Info
    [ 2.8398 ] Renaming /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/custinfo_out.bin to /home/ymf/workspace/thor7.1_2/Ant_Jetson_Linux_r38.4.0/Linux_for_Tegra/bootloader/custinfo_out.bin.sav
    [ 2.8399 ] tegrarcm_v2 --chip 0x26 0 --oem dump bct tmp.bct
    [ 2.8402 ] Continue while dump bct failed
    [ 2.8402 ] Rebooting to recovery mode
    [ 2.8404 ] tegrarcm_v2 --chip 0x26 0 --ismb2
    [ 2.8406 ] Rebooting to recovery mode
    [ 2.8407 ] tegrarcm_v2 --chip 0x26 0 --reboot recovery
    cvm.bin does not exist
    Error: failed to generate images

    Cleaning up…

error_log.zip (6.6 KB)

the uart log stops in very early stage. Are you sure this is full log?

For a custom board, please disable CVB EEPROM but keeps CVM EEPROM readable.

I find below context: eeprom {
cvm_eeprom_i2c_instance = <1>;
cvm_eeprom_i2c_slave_address = <0xa0>;
cvm_eeprom_read_size = <0x100>;
cvb_eeprom_i2c_instance = <1>;
cvb_eeprom_i2c_slave_address = <0xac>;
cvb_eeprom_read_size = <0x0>;
}; you mean delete these three lines?
cvb_eeprom_i2c_instance = <1>;
cvb_eeprom_i2c_slave_address = <0xac>;
cvb_eeprom_read_size = <0x0>;

If read size is already 0x0 then no need to modify anymore.

do this too

OKAY,got it, Thanks