Hello, I am attempting to build a new UEFI with some unneeded features disabled as part of a process to decrease boot time of our Jetson Orin Nano. I followed the process from edk2-nvidia repo and wiki.
Specifically I was testing out first removing network libraries from the build. I tried to set relevant configs such as “CONFIG_NETWORKING=n” in order to disable but upon checking build logs this did not seem to have any effect.
What is the proper way to customize UEFI features?
Here is the build log after I removed some networking features and removed 5s delay etc. BUILDLOG_Jetson.txt (4.5 MB).
Here is UART debug log after I replaced uefi_jetson.bin in L4T with the uefi_Jetson_RELEASE.bin that was built: screen.log (99.5 KB)
Also here are the changes that I made to the UEFI configurations (I had to copy these over from a different device and later realized I forgot to remove a dependency or two but otherwise these are the changes I made, saved as txt so I can upload). NVIDIA.fvmain.fdf.txt (28.2 KB) NVIDIA.common.dsc.txt (103.9 KB)
Despite removing the delay, on testing with the Jetson Orin the delay appears to still be there, among other things that should have been removed.
I see, I will clone with correct version. I am confused as to how this would affect the end result that I see on the board with the new UEFI? Since I was still able to build, flash, and boot with using the most recent version.
The result would be affected since there might be newer commits for development and not for the current release like r36.4.3. main branch includes all uefi commits and it should not be used for any current release.
Please use the command I shared to clone the source and give it a try.
How would I verify that new UEFI is properly used when creating new image for flashing from the BSP after replacing uefi binaries? Do I need to modify any other files to make sure old versions are not used?
Okay from boot logs it looks like the version being used isJetson UEFI firmware (version 36.4.3-gcid-38968081 built on 2025-01-08T01:18:20+00:00). I am confused as to where this UEFI is from since I have replaced the uefi_jetson.bin that is default in the BSP with a different file?
Do you mean that you’ve replace <Linux_for_Tegra>/bootloader/uefi_jetson.bin with the one built from yourself but you see the build date/time is the same?
If so, please share the steps how do you flash the board to apply the change.
I am creating an image to flash to SD card, so: sudo ./jetson-disk-image-creator.sh -o new_image_name.img -b jetson-orin-nano-devkit -d SD
Then I flash it with Balena Etcher.