Boot Order Priority jetson xavier nx 5.1.3

I’m trying to set the boot priority on my Jetson Xavier device to boot from emmc as a first priority for jp 5.1.3 and it still picks up an nvme drive I have installed with an existing image installed. I followed this tutorial located here: UEFI Adaptation — Jetson Linux Developer Guide documentation

I did try and delete the nvme.dtbo in kernel/dtb and that fixed my issue but I don’t think that’s the proper solution… Thoughts?

Hi anthonyseymour575,

For the boot-order, we would suggest configuring it through UEFI menu as following:
Boot Maintenance Manager → Boot Options → Change Boot Order

I did that and It worked but is there any way to change this during the flashing process?? I want to make it permanently like this.

Jetson UEFI firmware (version v35.5.0 built on 2024-02-26T13:44:31+00:00)
ESC to enter Setup.
F11 to enter Boot Manager Menu.
Enter to continue boot.
** WARNING: Test Key is used. **

L4TLauncher: Attempting Direct Boot
OpenAndReadUntrustedFileToBuffer: Failed to open boot\extlinux\extlinux.conf: No
t Found
ProcessExtLinuxConfig:sds Failed to Authenticate boot\extlinux\extlinux.conf (No
t Found)
L4TLauncher: Unable to process extlinux config: Not Found
L4TLauncher: Attempting Kernel Boot
EFI stub: Booting Linux Kernel…
EFI stub: Using DTB from configuration table
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Exiting boot services and installing virtual address map…
��ERROR: MPIDR 0x80000000: exception reason=0 syndrome=0xbe000000
ERROR: **************************************
ERROR: RAS Error in L2, ERRSELR_EL1=0x200:
ERROR: Status = 0xfc00640d
ERROR: IERR = SCF to L2 Decode Error Read: 0x64
ERROR: SERR = Illegal address (software fault): 0xd
ERROR: Overflow (there may be more errors) - Uncorrectable
ERROR: Uncorrectable (this is fatal)
ERROR: MISC0 = 0x80000000100000
ERROR: MISC1 = 0x20240000002
ERROR: ADDR = 0x800000000f40ffe8
ERROR: **************************************
ERROR: **************************************
ERROR: RAS Error in SCF_IOB, ERRSELR_EL1=0x401:
ERROR: Status = 0xf4009604
ERROR: IERR = CBB Interface Error: 0x96
ERROR: SERR = Assertion failure: 0x4
ERROR: Uncorrectable (this is fatal)
ERROR: MISC0 = 0x40
ERROR: MISC1 = 0xa64a6445a1
ERROR: ADDR = 0x800000000f40ffe8
ERROR: **************************************
ERROR: RAS error handled!
ERROR: sdei_dispatch_event returned -1

Please refer to Customizing the Default Boot Order in the Configuration File for this use case.
and note that new boot device will be added to the TOP of boot-order by default.

I tried this originally from my first message and it did not work. The log that I sent above was a result from this is there anything else I can try?

Please also modify the following line in L4TConfiguration.dts to make the new added device to the bottom of boot-order to prevent it affecting your current boot-device.

							NewDeviceHierarchy {
- 								data = [01];
+ 								data = [00];
 								runtime;
 								non-volatile;
 							};

This is my dts file linked below does this match what is required? I got the same error on my side from the changes. I’m at a bit of a loss.
L4TConfiguration.zip (603 Bytes)

Yes, LGTM.

Do you mean the RAS error?

Are you using the devkit or custom board for Xavier NX?

Yes to the RAS error. Im using a official Nvidia devkit with an nvme connected to pcie1 which is the key e-lane. I have a converter that makes it a m.2 connector which I have my nvme drive connected to.

I should mention that the NVME drive does have a build of 5.1.3 ORIN on it but I don’t think it should make a difference since the system should not boot from it in the first place.

The reason for the ORIN build on the drive is simply because I only have 1 nvme on me and I wanted to test the scenario if an nvme drive was in the system, could I change the boot priority

I’m confused with your setup…

Do you mean that you are connecting “a NVMe SSD with the build of Orin” on Xavier NX devkit?
You want it boot from internal eMMC, but it tries to boot from NVMe SSD and you hit RAS error?

Could you just remove the NVMe SSD and use the L4TConfiguration.dts you shared to check if it could boot as expected?
If you can boot it successfully, then put NVMe SSD back and boot it up again.

Yes and yes. I did remove the nvme drive from pcie1 and upload the L4TConfiguration.dts and it booted fine. When I reinstalled the drive it made the same behavior.

The reason for using the Orin drive in the first question is to tell if the system would try and boot from the nvme if I changed the L4T file. Seems like that file did not change my boot sequence. Is there something I’m missing?

I would not suggest using the “NVMe SSD with the build of Orin” on Xavier NX devkit.
I’m not sure if RAS error is caused from this since they are different module and capability.

Normally, the Jetson device will add the new added device to the TOP of boot-order. (i.e. NVMe drive)
If you’ve made the change as I suggested before, then I would configured the new added device to the Bottom of boot-order. In this way, you should still boot from internal eMMC as expected.

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