Stucking During Flashing Xavier Industrial on Custom Carrier Board

Hi,

I am trying to flash Xavier Industrial module with a pinmux cfg file that is generated for our custom carrier board. Flashing procedure is stuck at a stage given as below.

[ 13.9401 ] Sending blob
[ 13.9403 ] […] 100%
[ 14.9226 ] tegrarcm_v2 --boot recovery
[ 14.9252 ] Applet version 01.00.0000
[ 16.0089 ] tegrarcm_v2 --isapplet
[ 1022.1154 ] tegrarcm_v2 --ismb2
[ 2037.9347 ] tegradevflash_v2 --iscpubl
[ 2037.9384 ] CPU Bootloader is not running on device.
[ 3054.7316 ] tegrarcm_v2 --isapplet
The full log is as following.
xavier_flash_log_error_20231123__1847.txt (55.1 KB)

The problematic config file as following.
tegra19x-mb1-pinmux-p2888-0008-b01-p2822-0000-jaxi_err.txt (24.7 KB)

However when I use a different pinmux configuration file with minimal changes with devkit’s cfg file, flashing procedure finishes successfully.
This configuration file is as following.
tegra19x-mb1-pinmux-p2888-0008-b01-p2822-0000-jaxi.txt (30.4 KB)

To sum up, pinmux settings are effecting the flashing procedure. What can be the reason of this? Do I have to change some device tree settings too?

Best Regards,

  1. Basically, most of host side flash error does not provide much help. You need to dump uart side log along with this host side flash log.

  2. You can compare the the pinmux and try to find out what pin is causing this problem.

  1. UART side log is as following.
    flash_error_uart_log_20231124__0917.txt (9.6 KB)
    Is this log give any clue about the problem?

  2. Ok, I will try but there are lot’s of pins to check. Is there any possibility that will require to do change in the device-tree file(the dtb file that we convert to dts, make changes, and back-convert to dtb format) too?

[0312.513] E> I2C: Failed to clear bus for instance 0.
[0312.517] > DEVICE_PROD: device prod is not initialized.
[0312.522] E> I2C: Failed to clear bus for instance 0.
[0312.527] E> I2C_DEV: Failed to initialize instance 0.
[0312.531] E> eeprom: Can’t get handle to eeprom device @160
[0312.537] I> Failed to read CVM eeprom data
[0312.541] E> Error getting EEPROM data!
[0312.544] E> cpubl: Parallel task execution failed
[0312.549] I> mb2_load_authenticate_binaries done: execution failed
[0312.555] I> nvtboot_boot done: execution failed
[0312.559] E> Top caller module: EEPROM, error module: EEPROM, re

Please check if your pinmux changes the i2c bus setting so that bootloader cannot read cvm eeprom…

I have enabled all of the I2C buses (I2C1, I2C2, I2C3, I2C4, I2C5) and the problem is solved. Thank you very much four your fast support.

It seems that, at least, one of the I2C buses is being used in XAVIER module internally. Is it possible to know exactly which I2C buses being used internally? In our carrier board, we are also using two of them (I2C1 and I2C2) and there can be address conflict on these buses.

Best Regards,

Please refer to the design guide document and search ID EEPROM. It will tell.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.