Orin boot error

Here is the boot information for my AGX Orin. It failed to boot after a power-on, and the serial output is as follows. The situation remains unchanged upon reboot. How can I troubleshoot this? Could this be a hardware issue?
agxorin_boot_error_information.txt (51.4 KB)

Hi,

Some questions to confirm:

  • Is your AGX orin a dev kit or a custom board?
  • Could you flash again using sdk manager?

Thanks

Hi,DavidDDD.
My AGX ORIN on a custom board, and I can flash again using sdk manager or using Liunx_for_tegra/flash.sh.

Hi,

What is your JP version?

Thanks

My orin sdk version is r35.3.1,and I just find the same problem in [35.5.0] RAS Uncorrectable Error in IOB at Xavier NX Devkit with Orin Nano SOM, cannot boot to Ubuntu, after several reboots - #15 by WayneWWW
.
I want to confirm whether the patch from the above link is effective after I perform the operation. What methods can I use after flashing to ensure that the patch operations have taken effect?

Hi,

Since your device is older sdk version, and this bug is fixed in next release.

Yes

You could do some reboot test to confirm the error whether exist.

Thanks

Hi,
Thank you for your response.
I have already taken many reboot test, and the error exists.

I have followed the steps outlined in the link to modify the size of stmm_heap_size , then recompiled OP-TEE and ATF source to generate a new tos.img . I replaced bootloader/tos-optee_t234.img and then used the command sudo ./flash.sh -k A_secure-os jetson-agx-orin-devkit-industrial mmcblk0p1 for flashing. However, I encountered an error during the boot phase, as shown in the attachment. What could be the reason for this?
update_tos-optee_failed1.txt (41.3 KB)

Hi,

Could you provide your steps in detail for us to review?

Thanks

Hi,
Yes, I can show you my steps in detail.

The first step is to obtain Atf_src.tbz2 and nvidia-jetson-optee-source.tbz2 from public_sources.tbz2 .

The second step is to extract nvidia-jetson-optee-source.tbz2, then run

export CROSS_COMPILE_AARCH64_PATH=xxx
./optee_src_build.sh -p t234

The third step is to extract the ATF source package:

 mkdir atf_build
 tar -I lbzip2 -C atf_build -xpf atf_src.tbz2

The fourth step is to navigate to atf_build/arm-trusted-firmware and run the following commands:

export CROSS_COMPILE_AARCH64=/home/sqxt/jetson/orin355/orin355Kernelsrc/compiletool/bin/aarch64-linux-

make BUILD_BASE=./build CROSS_COMPILE="${CROSS_COMPILE_AARCH64}" DEBUG=0 LOG_LEVEL=20 PLAT=tegra SPD=opteed TARGET_SOC=t234 V=0

The fifth step is to get gen_tos_part_img.py from <Linux_for_Tegra>/nv_tegra/tos-scripts/

The sixth step is run the commands:

 python3 gen_tos_part_img.py --monitor ./atf_build/arm-trusted-firmware/build/tegra/t234/release/bl31.bin --os ./nvidia-jetson-optee-source/optee/build/t234/core/tee-raw.bin --dtb ./nvidia-jetson-optee-source/tegra234-optee.dtb --tostype optee ./tos.img

The seventh step is to replace tos.img with <Linux_for_Tegra>/bootloader/tos-optee_t234.img

The eighth step is to execute the command:

    sudo ./flash.sh -k A_secure-os jetson-agx-orin-devkit-industrial mmcblk0p1

Hi,
I wanna ask there were some advice?

Hi,

Try to build

./optee_src_build.sh -p t234 -t

Also some questions to confirm:

  • Is your device fused?

Thanks

when I use ./optee_src_build.sh -p t234 -t ,
there are some information shows below:

sqxt@sqxt-MS-7D22:~/jetson/orin355/xt/nvidia-jetson-optee-source$ ./optee_src_build.sh -p t234 -t
./optee_src_build.sh: illegal option – t
Usage: ./optee_src_build.sh [OPTIONS]
This script builds optee sources in this directory.
It supports following options.
OPTIONS:
-p Target platform. Possible values: t194|t234
-h Displays this help
sqxt@sqxt-MS-7D22:~/jetson/orin355/xt/nvidia-jetson-optee-source$

./optee_src_build.sh -p t234

Linux_for_Tegra/source/optee/atf_and_optee_README.txt

describes that and has other potentially helpful information.

Hi,

We suggest to flash in later release like jp5.1.5.
Or try to apply above patches to check whether the issue exists:
patch 1:

patch 2:

diff --git a/Silicon/NVIDIA/Drivers/FvbNorFlashDxe/VarIntCheck.c b/Silicon/NVIDIA/Drivers/FvbNorFlashDxe/VarIntCheck.c
index 11cd4d4..59b09e9 100644
--- a/Silicon/NVIDIA/Drivers/FvbNorFlashDxe/VarIntCheck.c
+++ b/Silicon/NVIDIA/Drivers/FvbNorFlashDxe/VarIntCheck.c
@@ -294,7 +294,7 @@
         *Offset     = BlockOffset;
         break;
       } else if (ReadBuf[0] == VAR_INT_VALID) {
-        ValidRecord = CurOffset;
+        ValidRecord = BlockOffset;
       }
 
       BlockOffset += This->MeasurementSize;
@@ -313,7 +313,7 @@
     if ((ValidRecord == 0) || (NumPartitionBlocks == 1)) {
       *Offset = This->PartitionByteOffset;
     } else {
-      CurBlock = (ValidRecord / This->PartitionByteOffset);
+      CurBlock = (ValidRecord / This->BlockSize);
       if (CurBlock == EndBlock) {
         *Offset = This->PartitionByteOffset;
       } else {

The steps to apply the change you could refer:

Thanks

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