Xavier flashing hangs at tegrarcm_v2 –isapplet with JetPack_5.0_DP

eeprom is not used in custom board. Based on this post,

  • This is not a mandatory design. Most of custom boards from other vendors don’t even have such eeprom on their board.

Have you also changed bootloader/t186ref/BCT/tegra194-mb1-bct-misc-l4t.cfg but not only that one with “-flash” in the file name?

Hi All,

I replaced all the tegra194-mb1-bct-misc-X.cfg files as below, AGX flash and bootup on our own carried board success.

EEPROM flags 
eeprom.cvm_eeprom_i2c_instance = 0;
eeprom.cvm_eeprom_i2c_slave_address = 0xa0;
eeprom.cvm_eeprom_read_size = 256;
eeprom.cvb_eeprom_i2c_instance = 0;
eeprom.cvb_eeprom_i2c_slave_address = 0xae;
eeprom.cvb_eeprom_read_size = 256;

to

#### EEPROM flags ####
eeprom.cvm_eeprom_i2c_instance = 0;
eeprom.cvm_eeprom_i2c_slave_address = 0xa0;
eeprom.cvm_eeprom_read_size = 0;
#eeprom.cvm_eeprom_read_size = 256;
eeprom.cvb_eeprom_i2c_instance = 0;
eeprom.cvb_eeprom_i2c_slave_address = 0xae;
eeprom.cvb_eeprom_read_size = 0;
#eeprom.cvb_eeprom_read_size = 256;

Thanks for reply @Luna2020 . Is there any problem on the board after you did that?

For example, whether the ethernet fails to get mac address, something like that. The mac address is from cvm eeprom, so I want to make sure that is still working or not.

Hi WayneWWW,

I’m testing now, the ethernet failed to get mac address and can’t make ethernet connetion.

[    9.551292] nvethernet 2490000.ethernet: Adding to iommu group 30
[    9.560207] nvethernet 2490000.ethernet: failed to read skip mac reset flag, default 0
[    9.575614] nvethernet 2490000.ethernet: failed to read MDIO address
[    9.587307] nvethernet 2490000.ethernet: setting to default DMA bit mask
[    9.602179] nvethernet 2490000.ethernet: set default TXQ to TC mapping
[    9.614602] nvethernet 2490000.ethernet: Setting default PTP RX queue
[    9.619846] nvethernet 2490000.ethernet: failed to get eqos_rx_m clk
[    9.633681] nvethernet 2490000.ethernet: failed to get eqos_rx_input clk
[    9.633687] nvethernet 2490000.ethernet: failed to get eqos_tx_divider clk
[    9.634965] ether_get_mac_address_dtb: bad mac address at /chosen/nvidia,ether-mac: NULL.
[    9.660284] nvethernet 2490000.ethernet: No MAC address in local DT!
[    9.660293] nvethernet 2490000.ethernet: failed to get MAC address
[    9.673494] nvethernet: probe of 2490000.ethernet failed with error -22
[   12.615709] using random self ethernet address

Hi,

Can you

  1. For the “flash*.cfg”, disable both CVM and CVB eeprom.

  2. But for that cfg file without “flash”, please remove CVB eeprom only and leave CVM eeprom read working

  1. For the “flash*.cfg”, disable both CVM and CVB eeprom.
    For the “flash*.cfg” disable both CVM and CVB eeprom, only flash.sh works, but after flash, the OS can not bring up.
    modify eeprom in both “flash*.cfg” and “l4t*.cfg”, flash.sh works and OS can bring up.

  2. But for that cfg file without “flash”, please remove CVB eeprom only and leave CVM eeprom read working
    flash can not work when remove CVB eeprom only and leave CVM eeprom read working.

so, modify eeprom section in files
bootloader/t186ref/BCT/tegra194-mb1-bct-misc-flash.cfg
bootloader/t186ref/BCT/tegra194-mb1-bct-misc-l4t.cfg

eeprom.cvm_eeprom_read_size = 0;
eeprom.cvb_eeprom_read_size = 0;

./flash.sh jetson-xavier mmblk0p1
works and os can bring up on my board.

If only modify “flash*.cfg”, leave “l4t*.cfg”
./flash.sh -r -k kernel jetson-xavier mmblk0p1
works;
But
./flash.sh jetson-xavier mmblk0p1
could not work, hang as before.

Hi @cuitggyy ,

Sorry that I am a little confused by reading your comment.

Make it more easier to understand → tegra194-mb1-bct-misc-flash.cfg is only for flash.

→ tegra194-mb1-bct-misc-l4t.cfg is for boot.

Are you saying that if you only disable CVB eeprom read in tegra194-mb1-bct-misc-l4t.cfg, you still not able to boot up?

yes.

→ tegra194-mb1-bct-misc-flash.cfg is only for flash.
→ tegra194-mb1-bct-misc-l4t.cfg is for boot.

my test show this result.

if only modify tegra194-mb1-bct-misc-flash.cfg,
“./flash -r -k kernel jetson-xavier mmcblk0p1” works ok;
“./flash jetson-xavier mmcblk0p1” will error at last and hang.

if modify tegra194-mb1-bct-misc-flash.cfg and tegra194-mb1-bct-misc-l4t.cfg
“./flash -r -k kernel jetson-xavier mmcblk0p1” and “./flash jetson-xavier mmcblk0p1” both works.

We will check. Sorry for inconvenience.

For bootloader/t186ref/BCT/tegra194-mb1-bct-misc-l4t.cfg, I set eeprom.cvb_eeprom_read_size = 0. For bootloader/t186ref/BCT/tegra194-mb1-bct-misc-l4t.cfg, I set both

eprom.cvm_eeprom_read_size = 0;
eeprom.cvb_eeprom_read_size = 0;

boot hangs at:

[0000.167] W> RATCHET: MB1 binary ratchet value 4 is larger than ratchet level 1
 from HW fuses.
[0000.175] I> MB1 (prd-version: 2.2.0.0-t194-41334769-3540ffaa)
[0000.180] I> Boot-mode: Coldboot
[0000.183] I> Platform: Silicon
[0000.186] I> Chip revision : A02
[0000.189] I> Bootrom patch version : 7 (correctly patched)
[0000.194] I> ATE fuse revision : 0x200
[0000.198] I> Ram repair fuse : 0x0
[0000.201] I> Ram Code : 0x0
[0000.203] I> rst_source: 0x0, rst_level: 0x0
[0000.208] I> Boot-device: SDMMC (instance: 3)
[0000.224] I> sdmmc DDR50 mode
[0000.228] I> Boot chain mechanism: A/B
[0000.232] I> Current Boot-Chain Slot: 0
[0000.235] W> No valid slot number is found in scratch register
[0000.241] W> Return default slot: _a
[0000.246] W> PROD_CONFIG: device prod data is empty in MB1 BCT.
[0000.253] I> Temperature = 26000
[0000.256] W> Skipping boost for clk: BPMP_CPU_NIC
[0000.260] W> Skipping boost for clk: BPMP_APB
[0000.264] W> Skipping boost for clk: AXI_CBB
[0000.268] W> Skipping boost for clk: AON_CPU_NIC
[0000.272] W> Skipping boost for clk: CAN1
[0000.276] W> Skipping boost for clk: CAN2
[0000.280] I> Boot-device: SDMMC (instance: 3)
[0000.289] I> Sdmmc: HS400 mode enabled
[0000.294] I> Non-ECC region[0]: Start:0x80000000, End:0x100000000
[0000.300] W>  Thermal config not found in BCT
[0000.309] W>  MEMIO rail config not found in BCT
[0000.327] I> sdmmc bdev is already initialized
[0000.371] W>  Platform config not found in BCT
[0000.405] I> MB1 done

����main enter
SPE VERSION #: R01.00.18 Created: Jan 29 2021 @ 14:18:27
HW Function test
Start Scheduler.
in late init

[0000.414] I> Welcome to MB2(TBoot-BPMP) (version: default.t194-mobile-2fb96459)
[0000.415] I> DMA Heap @ [0x526fa000 - 0x52ffa000]
[0000.415] I> Default Heap @ [0xd486400 - 0xd48a400]
[0000.416] E> DEVICE_PROD: Invalid value data = 70020000, size = 0.
[0000.422] W> device prod register failed
[0000.425] I> Boot_device: SDMMC_BOOT instance: 3
[0000.430] I> sdmmc-3 params source = boot args
[0000.435] I> sdmmc-3 params source = boot args
[0000.438] I> sdmmc bdev is already initialized
[0000.447] I> Found 21 partitions in SDMMC_BOOT (instance 3)
[0000.453] I> Found 41 partitions in SDMMC_USER (instance 3)
[0000.454] W> No valid slot number is found in scratch register
[0000.459] W> Return default slot: _a
[0000.463] I> Active Boot chain : 0
[0000.490] I> Relocating BR-BCT
[0000.491]  > DEVICE_PROD: device prod is not initialized.
[0000.516] I> Skip reading CVB eeprom BoardID

Do we need to rebuild the kernel with those .cfg file changes?

Nope. This is a bug.

Hi WayneWWW,

Remove this section from “flash*.cfg” and keep cfg file without “flash”
Flash to agx success, but AGX can’t bootup.

tegra194-mb1-bct-misc-flashX.cfg

#### EEPROM flags ####
eeprom.cvm_eeprom_i2c_instance = 0;
eeprom.cvm_eeprom_i2c_slave_address = 0xa0;
eeprom.cvm_eeprom_read_size = 0;
#eeprom.cvm_eeprom_read_size = 256;
eeprom.cvb_eeprom_i2c_instance = 0;
eeprom.cvb_eeprom_i2c_slave_address = 0xae;
eeprom.cvb_eeprom_read_size = 0;
#eeprom.cvb_eeprom_read_size = 256;

tegra194-mb1-bct-misc-l4tX.cfg

#### EEPROM flags ####
eeprom.cvm_eeprom_i2c_instance = 0;
eeprom.cvm_eeprom_i2c_slave_address = 0xa0;
eeprom.cvm_eeprom_read_size = 0;
eeprom.cvm_eeprom_read_size = 256;
eeprom.cvb_eeprom_i2c_instance = 0;
eeprom.cvb_eeprom_i2c_slave_address = 0xae;
eeprom.cvb_eeprom_read_size = 0;
#eeprom.cvb_eeprom_read_size = 256;

Boot up console debug log :

SPE VERSION #: R01.00.18 Created: Jan 29 2021 @ 14:18:27
HW Function test
Start Scheduler.
in late init
?
[0000.333] I> Welcome to MB2(TBoot-BPMP) (version: default.t194-mobile-2fb96459)
[0000.334] I> DMA Heap @ [0x526fa000 - 0x52ffa000]
[0000.334] I> Default Heap @ [0xd486400 - 0xd48a400]
[0000.335] E> DEVICE_PROD: Invalid value data = 70020000, size = 0.
[0000.341] W> device prod register failed
[0000.345] I> Boot_device: SDMMC_BOOT instance: 3
[0000.349] I> sdmmc-3 params sour
[14:33:34.737]收←◆ce = boot args
[0000.355] I> sdmmc-3 params source = boot args
[0000.358] I> sdmmc bdev is already initialized
[0000.366] I> Found 21 partitions in SDMMC_BOOT (instance 3)
[0000.373] I> Found 41 partitions in SDMMC_USER (instance 3)
[0000.374] W> No valid slot number is found in scratch register
[0000.379] W> Return default slot: _a
[0000.382] I> Active Boot chain : 0
[0000.409] I> Relocating BR-BCT
[0000.410]  > DEVICE_PROD: device prod is not initialized.

[14:33:34.758]收←◆[0000.435] I> Skip reading CVB eeprom BoardID

I am also experiencing the exact same issue on Xavier NX.
If I set all to 0, it will flash and boot, but ethernet will not come up.
If I only change the cvb read size in the l4t file, it will not boot.

When can we expect a fix for this?

Since jp5.0 DP is just developer preview, please try with devkit only. This issue would be fixed after jp5.0 GA.

Hi WayneWWW,

JP5.0 GA release time confirmed?

Is it after or with the jp5.0 GA?

Based on Jetson Roadmap | NVIDIA Developer , 5.0 GA is July, and the release after that (aka 5.1) will be Sept/Oct.

With the GA.

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