We are going through the bring-up process on a custom carrier board for the Nvidia Jetson Nano 4GB module. We are using a module from the Dev Kit so it has an SD card for memory instead of eMMC.
Following the instructions listed under “Update Bootloader Pinmux” here: https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/adaptation_and_bringup_nano.html#wwpID0E0EQ0HA we have faced an issue where there were rootfs folders missing from the source files. We then tried using the folders from a Linux_for_Tegra folder generated by SDKManager get it working, but the flash script hangs and fails here:
door@door-desktop:~/Downloads/Linux_for_Tegra$ sudo ./flash.sh jetson-nano-devkit mmcblk0p1
###############################################################################
L4T BSP Information:
R32 , REVISION: 5.1
###############################################################################
Target Board Information:
Name: jetson-nano-devkit, Board Family: t210ref, SoC: Tegra 210,
OpMode: production, Boot Authentication: ,
Disk encryption: disabled ,
###############################################################################
./tegraflash.py --chip 0x21 --applet “/home/door/Downloads/Linux_for_Tegra/bootloader/nvtboot_recovery.bin” --skipuid --cmd “dump eeprom boardinfo cvm.bin”
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
[ 0.0016 ] Generating RCM messages
[ 0.0024 ] tegrarcm --listrcm rcm_list.xml --chip 0x21 0 --download rcm /home/door/Downloads/Linux_for_Tegra/bootloader/nvtboot_recovery.bin 0 0
[ 0.0030 ] RCM 0 is saved as rcm_0.rcm
[ 0.0034 ] RCM 1 is saved as rcm_1.rcm
[ 0.0034 ] List of rcm files are saved in rcm_list.xml
[ 0.0034 ]
[ 0.0034 ] Signing RCM messages
[ 0.0041 ] tegrasign --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0047 ] Assuming zero filled SBK key
[ 0.0099 ]
[ 0.0099 ] Copying signature to RCM mesages
[ 0.0107 ] tegrarcm --chip 0x21 0 --updatesig rcm_list_signed.xml
[ 0.0117 ]
[ 0.0118 ] Boot Rom communication
[ 0.0124 ] tegrarcm --chip 0x21 0 --rcm rcm_list_signed.xml --skipuid
[ 0.0132 ] RCM version 0X210001
[ 0.0587 ] Boot Rom communication completed
[ 1.0656 ]
[ 1.0658 ] dump EEPROM info
[ 1.0677 ] tegrarcm --oem platformdetails eeprom /home/door/Downloads/Linux_for_Tegra/bootloader/cvm.bin
[ 1.0689 ] Applet version 00.01.0000
[ 1.0850 ] Saved platform info in /home/door/Downloads/Linux_for_Tegra/bootloader/cvm.bin
[ 1.1614 ]
[ 1.1622 ] tegrarcm --reboot recovery
[ 1.1629 ] Applet version 00.01.0000
[ 1.1653 ]
Board ID(3448) version(400)
copying bctfile(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/BCT/P3448_A00_lpddr4_204Mhz_P987.cfg)… done.
copying bootloader(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/cboot.bin)… done.
copying initrd(/home/door/Downloads/Linux_for_Tegra/bootloader/l4t_initrd.img)… done.
populating kernel to rootfs… done.
populating initrd to rootfs… done.
populating /home/door/Downloads/Linux_for_Tegra/kernel/dtb/tegra210-p3448-0000-p3449-0000-b00.dtb to rootfs… done.
Making Boot image… done.
Existing sosfile(/home/door/Downloads/Linux_for_Tegra/bootloader/nvtboot_recovery.bin) reused.
copying tegraboot(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/nvtboot.bin)… done.
copying cpu_bootloader(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/cboot.bin)… done.
copying bpffile(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/sc7entry-firmware.bin)… done.
Existing badpagefile(/home/door/Downloads/Linux_for_Tegra/bootloader/badpage.bin) reused.
copying wb0boot(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/warmboot.bin)… done.
Existing tosfile(/home/door/Downloads/Linux_for_Tegra/bootloader/tos-mon-only.img) reused.
Existing eksfile(/home/door/Downloads/Linux_for_Tegra/bootloader/eks.img) reused.
copying dtbfile(/home/door/Downloads/Linux_for_Tegra/kernel/dtb/tegra210-p3448-0000-p3449-0000-b00.dtb)… done.
Copying nv_boot_control.conf to rootfs
Making system.img…
populating rootfs from /home/door/Downloads/Linux_for_Tegra/rootfs … done.
populating /boot/extlinux/extlinux.conf … done.
Sync’ing system.img … done.
Converting RAW image to Sparse image… done.
system.img built successfully.
Existing tbcfile(/home/door/Downloads/Linux_for_Tegra/bootloader/nvtboot_cpu.bin) reused.
copying tbcdtbfile(/home/door/Downloads/Linux_for_Tegra/kernel/dtb/tegra210-p3448-0000-p3449-0000-b00.dtb)… done.
copying cfgfile(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/cfg/flash_l4t_t210_max-spi_sd_p3448.xml) to flash.xml… done.
copying flasher(/home/door/Downloads/Linux_for_Tegra/bootloader/t210ref/cboot.bin)… done.
Existing flashapp(/home/door/Downloads/Linux_for_Tegra/bootloader/tegraflash.py) reused.
./tegraflash.py --bl cboot.bin --bct P3448_A00_lpddr4_204Mhz_P987.cfg --odmdata 0xa4000 --bldtb kernel_tegra210-p3448-0000-p3449-0000-b00.dtb --applet nvtboot_recovery.bin --cmd “flash; reboot” --cfg flash.xml --chip 0x21 --bins “EBT cboot.bin; DTB tegra210-p3448-0000-p3449-0000-b00.dtb”
saving flash command in /home/door/Downloads/Linux_for_Tegra/bootloader/flashcmd.txt
saving Windows flash command to /home/door/Downloads/Linux_for_Tegra/bootloader/flash_win.bat
*** Flashing target device started. ***
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
[ 0.0088 ] tegrasign --key None --getmode mode.txt
[ 0.0097 ] Assuming zero filled SBK key
[ 0.0127 ]
[ 0.0128 ] Generating RCM messages
[ 0.0147 ] tegrarcm --listrcm rcm_list.xml --chip 0x21 0 --download rcm nvtboot_recovery.bin 0 0
[ 0.0162 ] RCM 0 is saved as rcm_0.rcm
[ 0.0182 ] RCM 1 is saved as rcm_1.rcm
[ 0.0182 ] List of rcm files are saved in rcm_list.xml
[ 0.0182 ]
[ 0.0183 ] Signing RCM messages
[ 0.0197 ] tegrasign --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0211 ] Assuming zero filled SBK key
[ 0.0263 ]
[ 0.0263 ] Copying signature to RCM mesages
[ 0.0279 ] tegrarcm --chip 0x21 0 --updatesig rcm_list_signed.xml
[ 0.0293 ]
[ 0.0294 ] Parsing partition layout
[ 0.0387 ] tegraparser --pt flash.xml.tmp
[ 0.0412 ]
[ 0.0413 ] Creating list of images to be signed
[ 0.0430 ] tegrahost --chip 0x21 0 --partitionlayout flash.xml.bin --list images_list.xml
[ 0.0726 ]
[ 0.0726 ] Generating signatures
[ 0.0743 ] tegrasign --key None --list images_list.xml --pubkeyhash pub_key.key
[ 0.0760 ] Assuming zero filled SBK key
[ 0.1600 ]
[ 0.1601 ] Generating br-bct
[ 0.1744 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.cfg --chip 0x21 0
[ 0.1762 ] Copying Sdram info from 2 to 3 set
[ 0.1798 ]
[ 0.1799 ] Updating boot device parameters
[ 0.1808 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatedevparam flash.xml.bin
[ 0.1814 ] Warning: No sdram params
[ 0.1817 ]
[ 0.1817 ] Updating bl info
[ 0.1828 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updateblinfo flash.xml.bin --updatesig images_list_signed.xml
[ 0.1842 ]
[ 0.1843 ] Updating secondary storage information into bct
[ 0.1850 ] tegraparser --pt flash.xml.bin --chip 0x21 0 --updatecustinfo P3448_A00_lpddr4_204Mhz_P987.bct
[ 0.1858 ]
[ 0.1858 ] Updating Odmdata
[ 0.1866 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatefields Odmdata =0xa4000
[ 0.1878 ] Warning: No sdram params
[ 0.1879 ]
[ 0.1879 ] Get Signed section of bct
[ 0.1889 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --listbct bct_list.xml
[ 0.1936 ]
[ 0.1937 ] Signing BCT
[ 0.1987 ] tegrasign --key None --list bct_list.xml --pubkeyhash pub_key.key
[ 0.2000 ] Assuming zero filled SBK key
[ 0.2000 ]
[ 0.2001 ] Updating BCT with signature
[ 0.2021 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatesig bct_list_signed.xml
[ 0.2043 ]
[ 0.2043 ] Copying signatures
[ 0.2051 ] tegrahost --chip 0x21 0 --partitionlayout flash.xml.bin --updatesig images_list_signed.xml
[ 0.2085 ]
[ 0.2086 ] Updating BFS information on BCT
[ 0.2094 ] tegrabct --bct P3448_A00_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatebfsinfo flash.xml.bin
[ 0.2102 ]
[ 0.2103 ] Boot Rom communication
[ 0.2110 ] tegrarcm --chip 0x21 0 --rcm rcm_list_signed.xml
[ 0.2116 ] BR_CID: 0x321010016445778410000000020284c0
[ 0.2126 ] RCM version 0X210001
[ 0.2287 ] Boot Rom communication completed
[ 1.2381 ]
[ 1.2382 ] Sending BCTs
[ 1.2401 ] tegrarcm --download bct P3448_A00_lpddr4_204Mhz_P987.bct
[ 1.2415 ] Applet version 00.01.0000
[ 1.2599 ] Sending bct
[ 1.2600 ] […] 100%
[ 1.4843 ]
[ 1.4867 ] tegrahost --chip 0x21 --align cboot.bin
[ 1.4888 ]
[ 1.4905 ] tegrahost --magicid EBT --appendsigheader cboot.bin cboot.bin_blheader
[ 1.4929 ]
[ 1.4944 ] tegrasign --key None --list cboot.bin_list.xml
[ 1.4950 ] Assuming zero filled SBK key
[ 1.5091 ]
[ 1.5102 ] tegrahost --updatesigheader cboot.bin_blheader.encrypt cboot.bin_blheader.hash zerosbk
[ 1.5116 ]
[ 1.5136 ] tegrahost --chip 0x21 --align tegra210-p3448-0000-p3449-0000-b00.dtb
[ 1.5144 ]
[ 1.5152 ] tegrahost --magicid DTB --appendsigheader tegra210-p3448-0000-p3449-0000-b00.dtb tegra210-p3448-0000-p3449-0000-b00.dtb_blheader
[ 1.5172 ]
[ 1.5191 ] tegrasign --key None --list tegra210-p3448-0000-p3449-0000-b00.dtb_list.xml
[ 1.5205 ] Assuming zero filled SBK key
[ 1.5272 ]
[ 1.5283 ] tegrahost --updatesigheader tegra210-p3448-0000-p3449-0000-b00.dtb_blheader.encrypt tegra210-p3448-0000-p3449-0000-b00.dtb_blheader.hash zerosbk
[ 1.5293 ]
[ 1.5296 ] Sending bootloader and pre-requisite binaries
[ 1.5303 ] tegrarcm --download ebt cboot.bin.encrypt 0 0 --download rp1 tegra210-p3448-0000-p3449-0000-b00.dtb.encrypt 0
[ 1.5315 ] Applet version 00.01.0000
[ 1.5477 ] Sending ebt
[ 1.5479 ] […] 100%
[ 1.6553 ] Sending rp1
[ 1.6599 ] […] 100%
[ 1.7163 ]
[ 1.7181 ] tegrarcm --boot recovery
[ 1.7203 ] Applet version 00.01.0000
[ 1.7253 ]
[ 1.7253 ] Retrieving storage infomation
[ 1.7264 ] tegrarcm --oem platformdetails storage storage_info.bin
Any suggestions?