Boot Jetson AGX Xavier from SD card

I tried to follow the instructions from the Is L4T 32.5 With Jetson Xavier Supported SD Boot? - #19 by WayneWWW to boot from SD card, but facing issues after the line “sudo mount /dev/sdb1 …/…/sdmountpoint/”

Error: mount: …/…/sdmountpoint/: mount point does not exist.

Would anyone share the experience of setting up Jetson AGX xavier boot from SD card? This is to create baseline while development process. If there are other ways to create baselines, please guide.

Thank you for any advice.

Solved using this error using “mkdir …/…/sdmountpoint/” before the “sudo mount /dev/sdb1 …/…/sdmountpoint/”.

The first SD flashing was verified after power-off and power-on cycles, Multiple times. Worked file.

But when a new SD was flashed with the different version of development SW with Jetson pack. The new SW did not work as planned. It would be great help if one can explain if there is any changes in EMMC while flashing the SD cards or what happens to the EMMC while flashing the SD card (including the kernal, kernal-dtb or others).

You can try to dump the uart log so it will tel the reason.

for the new SD card, I am able to boot from new SD card. but the SW changes did not work as planned.

The main concern is when we try to reinsert the 1st SD which worked good multiple trials, does not work after the new SD card trials. (Following the same steps for the 1st SD and new SD flashing procedure). I think there is some changes that happens in EMMC while flashing the SD card which makes the problem.

Please guide us to get create baseline for the SW development using SD card, so that each time we dont need to flash once the baselines are created, using the SD card.

Note:
I am using the ‘sudo ./flash.sh jetson-xavier internal’ and ‘sudo ./flash.sh -k kernel-dtb jetson-xavier internal’. for both the SD cards while creating the baseline, and the /boot/Images are different for each baseline (Image files are copied to the respective /boot/ folder and reboot the jetson xavier for the trials). Both the SW versions were tested using the EMMC flashing, before proceeding with the SD card’s.

We don’t have a method to flash any kind of sdcard on “AGX”.

I mean what you are doing below doesn’t really flash a sdcard.

am using the ‘sudo ./flash.sh jetson-xavier internal’ and ‘sudo ./flash.sh -k kernel-dtb jetson-xavier internal’. for both the SD cards while creating the baseline, and the /boot/Images are different for each baseline (Image files are copied to the respective /boot/ folder and reboot the jetson xavier for the trials). Both the SW versions were tested using the EMMC flashing, before proceeding with the SD card’s.

The only platforms that have “sdcard image” to work are only NX and Nano.

The other platforms do not support sdcard image.

Point 1: Please clarify by following the method in Is L4T 32.5 With Jetson Xavier Supported SD Boot? - #19 by WayneWWW. where is the real flashing happening and it would be a great help if you can explain.

Point 2:
If SD card is not a good method for Jetson Xavier AGX, please guide us to create baseline while developing the SW without reflashing, since the reflashing takes a long time.
The intention of this baselines are to have quick functional check, for example if SD card was a method, insert various SD cards as per the baseline SW stages and test the functionalities or demonstrate the SW functionalities as per that specific baseline.

It would be a great help to propose a correct method for creating the baseline for Jetson Xavier AGX SW development.
Thank you

You can refer to my post here first.

What you can do on AGX is just “mount file system” from sd. Not able to boot from it. (for sd only. USB and NVMe could be totally booted from)

And no matter what case, you need to flash the emmc before letting external device work. And flash.sh can only flash emmc for AGX. You need to prepare the file system on the sdcard in other machine (e.g. x86 host) before you plug it into AGX.

But flash step won’t need to be repeated again if you just switch between same interface. For example, from Sdcard A to Sdcard B.

Thank you for your kind support.

The steps that I currently follow to flash and test the SW using the EMMC in Jetson AGX Xavier is shared below. It would be a great help if you can streamline the below procedure to have one flashing and 2 SD cards (Baseline) with different SW functionalities. (note that the SW functionaries are not detailed)

1st SW version

Steps followed for flashing the Jetson Xavier AGX EMMC.

  1. Download the Jetpack OS-image to the Ubuntu host PC * (below steps with ‘xxxxxxxx’ shows the option for the specific jetpack version)*
  2. sudo tar xpf Tegra186_Linux_R3xxxxxxxx.tbz2
  3. cd Linux_for_Tegra/rootfs/
  4. sudo tar xpf …/…/Tegra_Linux_Sample-Root-Filesystem_R3xxxxxxxx_aarch64.tbz2
  5. cd …
  6. sudo ./apply_binaries.sh
  7. Put your Jetson Developer Kit into “USB Recovery Mode” (RCM) for flashing
  8. sudo ./flash.sh jetson-xavier mmcblk0p1
  9. Jetson Xavier AGX restarts after flashing and now configure the Jetson desktop (including the login details)

  1. The modified tegra194-p2888-0001-p2822-0000.dtb as per the 1st SW requirement is copied and pasted under ‘Xavier/Linux_for_Tegra/kernel/dtb’ on Ubuntu host PC
  2. Again, Put your Jetson Developer Kit into “USB Recovery Mode” (RCM)
  3. sudo ./flash.sh -k kernel-dtb jetson-xavier mmcblk0p1
  4. Jetson Xavier AGX restarts after flashing and then login to the Jetson

  1. The modified ‘Image’ as per the 1st SW requirement is copied and pasted under the ‘/boot/’ folder on the Jetson
  2. Restart the Jetson Xavier AGX and ready to test 1st SW version for the respective Jetpack version.

2nd SW version
The steps 1 to 9 are followed for the respective jetpack version
The steps 10 to 15 are followed with the modified ‘modified tegra194-p2888-0001-p2822-0000.dtb’ and ‘Image’ file respective to the SW requirements.

Note: The above steps works good and for both the SW versions the functionalities are completely tested on the same Jetson Xavier AGX.

Support request
Since the SW versions are increasing. Now we would need to create baselines and reduce the time taken for the flashing using the complete steps for each SW version.
If SD card is a solution for this baseline, then Insert the SD cards and the respective SW functionality should be functional for testing/demo, after restart.

I request your support to guide us to create baseline and to reduce time either using the USB-drive/NVME/other method. Please explain the steps and help to streamline the procedure.

Please inform if this is same for the Jetson Orin, if there the approach is different, please inform the details.
Thank you

please refer to the document in below link for the steps.

https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3261/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/flashing.html#wwpID0E01O0HA

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