I need to apply some customisation code to the UEFI on our AGX Orin and Orin NX boards. I’d like to know the dependencies and how many binaries I need to produce.
UEFI is dependent on the carrier board, right?
Do the three AGX Orin modules (32G, 64G, Industrial) need different binaries? Do the four Orin NX/Nano modules (Nano 4G, Nano 8G, NX 8G, NX 16G) need different binaries?
Is UEFI dependent on the Jetpack version? Can I use the coming 7.2 or the most recent 6.2.2 UEFI source also for Jetpack 6 and Jetpack 5?
*** Please note that this reply is generated by LLM automatically ***
To answer your questions, I’ll break down the dependencies and requirements for customizing the UEFI on your AGX Orin and Orin NX boards.
Dependencies and Binaries:
Carrier Board Dependency: Yes, UEFI is dependent on the carrier board. The UEFI firmware is specific to the carrier board design and configuration. You’ll need to ensure that your custom UEFI code is compatible with the carrier board’s hardware and layout.
AGX Orin Modules: The three AGX Orin modules (32G, 64G, and Industrial) share the same UEFI binary. The differences between these modules are mainly related to the amount of RAM and the industrial features. Since the UEFI firmware is not dependent on the RAM size, you can use the same binary for all three modules.
Orin NX/Nano Modules: The four Orin NX/Nano modules (Nano 4G, Nano 8G, NX 8G, and NX 16G) also share the same UEFI binary. Similar to the AGX Orin modules, the differences between these modules are mainly related to the amount of RAM and the NX/Nano features. You can use the same binary for all four modules.
Jetpack Version and UEFI Source:
Jetpack Version: The UEFI source code is specific to the Jetpack version. You cannot use the UEFI source code from a newer Jetpack version (e.g., Jetpack 7.2) with an older Jetpack version (e.g., Jetpack 6.2 or Jetpack 5.x).
UEFI Source Compatibility: The UEFI source code is not backward compatible. If you want to use the UEFI source code from Jetpack 7.2, you’ll need to use it with Jetpack 7.2. You cannot use the UEFI source code from Jetpack 7.2 with Jetpack 6.2 or Jetpack 5.x.
Binary Production:
Based on the above information, you’ll need to produce:
1 binary for the AGX Orin modules (32G, 64G, and Industrial)
1 binary for the Orin NX/Nano modules (Nano 4G, Nano 8G, NX 8G, and NX 16G)
You’ll need to ensure that the UEFI source code is compatible with the Jetpack version you’re using. If you’re using Jetpack 6.2, you’ll need to use the UEFI source code from Jetpack 6.2. If you’re using Jetpack 5.x, you’ll need to use the UEFI source code from Jetpack 5.x.
Recommendation:
To minimize the number of binaries and simplify the development process, it’s recommended to use the same UEFI source code for all modules within a family (AGX Orin or Orin NX/Nano). This will allow you to maintain a single binary for each family, reducing the complexity and effort required for development and testing.
*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***