Hi Nathaniel7:
This is how I setup my env:
cd ~
mkdir jetsonUefi
cd jetsonUefi
mkdir uefiWorkspace
nano jp6UefiSetup.sh
source jp6UefiSetup.sh every time you start a new session
jp6UefiSetup.sh:
#!/bin/bash
# Point to the Ubuntu-22 dev image
export EDK2_DEV_IMAGE="ghcr.io/tianocore/containers/ubuntu-22-dev:latest"
# Required
export EDK2_USER_ARGS="-v \"${HOME}\":\"${HOME}\" -e EDK2_DOCKER_USER_HOME=\"${HOME}\""
# Required, unless you want to build in your home directory.
# Change "/build" to be a suitable build root on your system.
export EDK2_BUILD_ROOT=`pwd`/uefiWorkspace
export EDK2_BUILDROOT_ARGS="-v \"${EDK2_BUILD_ROOT}\":\"${EDK2_BUILD_ROOT}\""
# Create the alias
alias edk2_docker="docker run -it --rm -w \"\$(pwd)\" ${EDK2_BUILDROOT_ARGS} ${EDK2_USER_ARGS} \"${EDK2_DEV_IMAGE}\""
Apply the settings:
source jp6UefiSetup.sh
Add the repo and clone it:
edk2_docker init_edkrepo_conf
edk2_docker edkrepo manifest-repos add nvidia https://github.com/NVIDIA/edk2-edkrepo-manifest.git main nvidia
# Clone
edk2_docker edkrepo clone $EDK2_BUILD_ROOT NVIDIA-Platforms main
sudo chown -hR $USER ./*
Apply the diff patch:
cd $EDK2_BUILD_ROOT/edk2-nvidia
git apply <PATH_TO_DIFF_PATCH>
Build Jetson UEFI:
cd $EDK2_BUILD_ROOT
edk2_docker edk2-nvidia/Platform/NVIDIA/Jetson/build.sh
Replace the image in Jetpack UEFI, where $JETPACK is point to your Linux_for_Tegra folder:
sudo mv $JETPACK/bootloader/uefi_jetson.bin $JETPACK/bootloader/BACK_UP_uefi_jetson.bin
sudo cp $EDK2_BUILD_ROOT/images/uefi_Jetson_RELEASE.bin $JETPACK/bootloader/uefi_jetson.bin
Flash bootloader only without overwriting the APP partition:
sudo ./flash.sh -c bootloader/generic/cfg/flash_t234_qspi.xml jetson-agx-orin-devkit internal