How to Increase ROOTFSSIZE Beyond 55GiB on Nvidia Jetson Orin Nano/NX
Issue Overview
Users of Nvidia Jetson Orin Nano and Orin NX devices are experiencing difficulties when attempting to increase the ROOTFSSIZE beyond 55GiB. Specifically, when modifying the ROOTFSSIZE from 55GiB to 88GiB in the Linux_for_Tegra\p3767.conf.common file, errors occur during the execution of the l4t_initrd_flash.sh script. The issue appears to be related to limitations in the tegrahost_v2 tool, which restricts the APP size to 55GiB.
The problem manifests with the following error message:
[ 4.2188 ] tegraparser_v2 --generategpt --pt flash.xml.bin
[ 4.2194 ] End sector for APP, expected at: 119537630, actual: 0
Error: Return value 4
Command tegraparser_v2 --generategpt --pt flash.xml.bin
cp: cannot stat 'signed/*': No such file or directory
cp: cannot stat 'signed/flash.xml.tmp': No such file or directory
Additionally, after running l4t_initrd_flash.sh, the start location of secondary_gpt remains fixed at 61203267072, effectively limiting the ROOTFSSIZE.
Possible Causes
-
Software Limitation: The tegrahost_v2 tool appears to have a built-in limitation that restricts the APP size to 55GiB, preventing users from expanding the ROOTFSSIZE beyond this threshold.
-
Configuration File Constraints: The Linux_for_Tegra\p3767.conf.common file may not be the only configuration file that needs modification to increase the ROOTFSSIZE.
-
Partitioning Issues: The error message suggests problems with generating the GPT (GUID Partition Table), which could be related to how the partitions are defined or calculated.
-
Firmware Restrictions: There might be firmware-level restrictions on the Jetson Orin Nano/NX that prevent expanding the root filesystem beyond certain limits.
-
Script Logic: The l4t_initrd_flash.sh script may have hard-coded values or logic that doesn’t account for ROOTFSSIZE values larger than 55GiB.
Troubleshooting Steps, Solutions & Fixes
-
Verify Configuration Files:
- Double-check that you’ve modified the correct configuration file (Linux_for_Tegra\p3767.conf.common).
- Look for other configuration files that might need to be updated to reflect the desired ROOTFSSIZE.
-
Examine Partition Layout:
- Review the flash.xml file to ensure that the partition layout is correct and accommodates the larger ROOTFSSIZE.
- Use the following command to view the current partition layout:
sudo ./flash.sh --print-partition-layout jetson-orin-nano-devkit mmcblk0p1
-
Update Tegra Host Tools:
- Check for updates to the Tegra host tools, particularly tegrahost_v2 and tegraparser_v2.
- Download and install the latest version of the L4T (Linux for Tegra) package from the NVIDIA Developer website.
-
Modify Flashing Scripts:
- Examine the l4t_initrd_flash.sh script for any hard-coded values related to partition sizes or APP size limitations.
- If found, carefully modify these values to allow for larger ROOTFSSIZE.
-
Custom Partition Table:
- Create a custom partition table that includes the desired ROOTFSSIZE.
- Use the following command to apply the custom partition table:
sudo ./flash.sh --cfg flash.xml --flash-only jetson-orin-nano-devkit mmcblk0p1
-
Consult NVIDIA Documentation:
- Review the latest Jetson Linux Developer Guide for any official methods to increase ROOTFSSIZE.
- Check for any known limitations or workarounds in the release notes.
-
Community Workarounds:
- Search for community-developed patches or scripts that may address this limitation.
- Be cautious when applying unofficial modifications and always backup your data.
-
Contact NVIDIA Support:
- If the issue persists, consider opening a support ticket with NVIDIA to report the problem and request assistance.
- Provide detailed information about your setup, the steps you’ve taken, and the exact error messages encountered.
-
Alternative Approach:
- If increasing ROOTFSSIZE is not possible, consider using external storage or network-attached storage to expand available space for your applications.
-
Monitor for Updates:
- Keep an eye on NVIDIA forums and release notes for potential future updates that may address this limitation.
Remember to backup all important data before attempting any modifications to your Jetson Orin Nano/NX device. If you’re not comfortable with these advanced modifications, consider seeking assistance from experienced developers or NVIDIA support professionals.