SD card boot on Jetson Nano


I use a customized Carrier board(FLOYD Carrier for NVIDIA Jetson Nano & Xavier NX) for Jetson nano, which uses emmc image(BSP) to boot. is it possible to make it to boot from SD card?

I have this module : model : P3448
180-13448 - DAAA - B01

does it needs any HW support? this carrier board support an SD card slot, wich uses SDMMC_DAT0/1/2/3, SDMMC_CMD, SDMMC_CLK signals. Can I boot from it?

Or Can I make an image to boot from this external SD card which is on carrier board?

If I need to create and SD card bootable Image can you please guide me?

It is not possible for emmc module to use same “sdcard image” as the sdcard module.

But you can boot the rootfs or kernel from external sdcard.

Before those “booting” issue, is your sdcard slot already working when you plug a sdcard in? This is needed to get ready first.


my SD card on Carrier board is working when I plug it on to the SD card slot. can you route me further on this?

Which way do you prefer to boot?

  1. only boot rootfs from sdcard

  2. Boot both kernel + rootfs from sdcard

Or you have no idea what is difference between these two?

Actually, I do not have any idea about the difference. but I prefer to boot both kernel and rootfs from SD card. please sugget me,

can you also let me know the details on option 1

Jetson nano is not able to totally boot from external storage. The emmc inside the module is still required.

The boot flow is as below:

nvtboot → cboot → uboot → kernel → kernel to mount the file system (rootfs).

Where you can have options are in bold.

nvtboot (emmc) → cboot (emmc) → uboot (emmc) → kernel → kernel to mount the file system (rootfs).

The option means you can select to boot kernel from any external devices, unless the uboot does not support that device. And same to rootfs.

Thus, there are lots of combinations could be used. For example, have sdcard and usb drive both connected on device, I can ask uboot to use kernel from sdcard and then use that kernel to mount the rootfs from usb drive. Of course common people will not do such things. Just an example to explain.

Thus, for case (1), you can follow this page.

As for case(2), the only difference is let uboot choose to search kernel on sdcard instead of emmc. Thus, doing the same page as above page, but stop the uboot boot process and change the boot order with following command.

printenv boot_targets
setenv boot_targets usb0 mmc1 mmc0 nvme0 pxe dhcp

So which option you suggest will be easy for user? Also If I want to build BSP from source for SD card boot, what is the procedure? same as emmc?

Boot rootfs only would be easier.

But please note that both methods don’t guarantee the OTA update functionality.

please confirm on this as well

I shared that method in previous comment. Maybe you can read that first.

sure, thank you