Looking through the public t194 cboot source and tegraflash scripts, it seems there is some level of ability to flash directly to nvme drives and boot directly to them. I know this isn’t what is described in the current documentation, but I figured I’d try anyways. I took a xavier nx devkit with the dev module and attached a Samsung 970 evo. Linux is able to read the drive. I then went into the r32.5.0 driver flash package and modified flash_l4t_t194_spi_sd_p3668.xml, changing
<device type="sdcard" instance="0" sector_size="512" num_sectors="33554432">
to
<device type="nvme" instance="0" sector_size="512" num_sectors="33554432">
then I ran
./flash.sh jetson-xavier-nx-devkit nvme0p1
Eventually, the final flash stage failed in tegrabct_v2 with:
[ 4.0875 ] Updating mb1-bct with storage information
[ 4.0885 ] tegrabct_v2 --chip 0x19 --mb1bct mb1_cold_boot_bct_MB1.bct --updatestorageinfo flash.xml.bin
[ 4.0894 ] MB1-BCT version: 0x1
[ 4.0897 ] There is no MB1-BCT device type corresponding to pt type: 9
[ 4.0897 ]
Error: Return value 2
Command tegrabct_v2 --chip 0x19 --mb1bct mb1_cold_boot_bct_MB1.bct --updatestorageinfo flash.xml.bin
My question is: Am I missing a bct config to support nvme or do the tegra*_v2 tools not entirely support nvme yet? I would like to flash everything to qspi and nvme directly with no sd card and no intermediary steps on the nx dev module.