Stuck on splash screen sometimes (L4T 32.4.3, Ubuntu 16.04.06)

We are flashing on our own image onto a Nano B01 w/ development board thru L4T tools. The flash is successful, but we’ve noticed that SOMETIMES it is stuck on the NVIDIA splash screen. But after rebooting the board a few times (i.e. disconnecting and reconnecting the power), then the system will move to the boot screen. But after rebooting again, then it is stuck on the splash screen again?

Can anyone please explain how we can debug/troubleshoot this?

You will want to post a serial console log from a time when it fails. See:
https://www.jetsonhacks.com/2019/04/19/jetson-nano-serial-console/

20200715_stuck_on_splash_screen_w_emmc.txt (18.0 KB)

Please look at attached .txt file for logs during bootup.
I should also mention this was with a board w/ emmc. This was not with an SD card.


Welcome to minicom 2.7

OPTIONS: I18n
Compiled on Nov 15 2018, 20:18:47.
Port /dev/ttyUSB0, 20:40:12

Press CTRL-A Z for help on special keys

T [0000.222] [L4T TegraBoot] (version 00.00.2018.01-l4t-80a468da)
[0000.228] Processing in cold boot mode Bootloader 2
[0000.232] A02 Bootrom Patch rev = 1023
[0000.236] Power-up reason: pmc por
[0000.239] No Battery Present
[0000.242] pmic max77620 reset reason
[0000.245] pmic max77620 NVERC : 0x40
[0000.249] RamCode = 0
[0000.251] Platform has DDR4 type RAM
[0000.254] max77620 disabling SD1 Remote Sense
[0000.258] Setting DDR voltage to 1125mv
[0000.262] Serial Number of Pmic Max77663: 0x1029f9
[0000.270] Entering ramdump check
[0000.273] Get RamDumpCarveOut = 0x0
[0000.276] RamDumpCarveOut=0x0, RamDumperFlag=0xe59ff3f8
[0000.281] Last reboot was clean, booting normally!
[0000.286] Sdram initialization is successful
[0000.290] SecureOs Carveout Base=0x00000000ff800000 Size=0x00800000
[0000.296] Lp0 Carveout Base=0x00000000ff780000 Size=0x00001000
[0000.302] BpmpFw Carveout Base=0x00000000ff700000 Size=0x00080000
[0000.308] GSC1 Carveout Base=0x00000000ff600000 Size=0x00100000
[0000.314] GSC2 Carveout Base=0x00000000ff500000 Size=0x00100000
[0000.320] GSC4 Carveout Base=0x00000000ff400000 Size=0x00100000
[0000.325] GSC5 Carveout Base=0x00000000ff300000 Size=0x00100000
[0000.331] GSC3 Carveout Base=0x000000017f300000 Size=0x00d00000
[0000.347] RamDump Carveout Base=0x00000000ff280000 Size=0x00080000
[0000.353] Platform-DebugCarveout: 0
[0000.357] Nck Carveout Base=0x00000000ff080000 Size=0x00200000
[0000.362] Non secure mode, and RB not enabled.
[0000.379] Csd NumOfBlocks=0
[0000.571] *** Booting BFS0.
[0000.573] Read PT from (0:3)
[0000.579] Using BFS PT to query partitions
[0000.584] PT: Partition LNX NOT found !
[0001.171] *** Booting KFS0.
[0001.174] Read GPT from (0:3)
[0001.178] Using GPT Primary to query partitions
[0001.183] Loading Tboot-CPU binary
[0001.190] Verifying TBC in OdmNonSecureSBK mode
[0001.200] Bootloader load address is 0xa0000000, entry address is 0xa0000258
[0001.207] Bootloader downloaded successfully.
[0001.211] Downloaded Tboot-CPU binary to 0xa0000258
[0001.216] MAX77620_GPIO5 configured
[0001.219] CPU power rail is up
[0001.222] CPU clock enabled
[0001.226] Performing RAM repair
[0001.229] Updating A64 Warmreset Address to 0xa00002e9
[0001.234] Loading NvTbootBootloaderDTB
[0001.251] Verifying NvTbootBootloaderDTB in OdmNonSecureSBK mode
[0001.317] Bootloader DTB Load Address: 0x83000000
[0001.321] Loading NvTbootKernelDTB
[0001.338] Verifying NvTbootKernelDTB in OdmNonSecureSBK mode
[0001.403] Kernel DTB Load Address: 0x83100000
[0001.409] Loading cboot binary
[0001.419] Verifying EBT in OdmNonSecureSBK mode
[0001.461] Bootloader load address is 0x92c00000, entry address is 0x92c00258
[0001.468] Bootloader downloaded successfully.
[0001.473] PT: Partition NCT NOT found !
[0001.476] Warning: Find Partition via PT Failed
[0001.481] Next binary entry address: 0x92c00258
[0001.485] BoardId: 3448
[0001.490] Overriding pmu board id with proc board id
[0001.494] Display board id is not available
[0001.506] Verifying SC7EntryFw in OdmNonSecureSBK mode
[0001.558] /bpmp deleted
[0001.560] SC7EntryFw header found loaded at 0xff700000
[0001.750] OVR2 PMIC
[0001.752] Bpmp FW successfully loaded
[0001.757] WB0 init successfully at 0xff780000
[0001.761] Set NvDecSticky Bits
[0001.765] GSC2 address ff53fffc value c0edbbcc
[0001.771] GSC MC Settings done
[0001.774] TOS Image length 53680
[0001.777] Monitor size 53680
[0001.780] OS size 0
[0001.785] Secure Os AES-CMAC Verification Success!
[0001.790] TOS image cipher info: plaintext
[0001.794] Loading and Validation of Secure OS Successful
[0001.810] SC7 Entry Firmware - 0xff700000, 0x4000
[0001.814] NvTbootPackSdramParams: start.
[0001.819] NvTbootPackSdramParams: done.
[0001.823] Tegraboot started after 151900 us
[0001.827] Basic modules init took 1383524 us
[0001.831] Sec Bootdevice Read Time = 546 ms, Read Size = 14459 KB
[0001.837] Sec Bootdevice Write Time = 0 ms, Write Size = 0 KB
[0001.843] Next stage binary read took 7367 us
[0001.847] Carveout took -19270 us
[0001.850] CPU initialization took 343834 us
[0001.854] Total time taken by TegraBoot 1715455 us

[0001.859] Starting CPU & Halting co-processor

64NOTICE: BL31: v1.3(release):41d46a9cf
NOTICE: BL31: Built : 21:18:12, Jun 25 2020
ERROR: Error initializing runtime service trusty_fast
[0001.981] RamCode = 0
[0001.986] LPDDR4 Training: Read DT: Number of tables = 2
[0001.991] EMC Training (SRC-freq: 204000; DST-freq: 1600000)
[0002.003] EMC Training Successful
[0002.006] 408000 not found in DVFS table
[0002.013] RamCode = 0
[0002.016] DT Write: emc-table@204000 succeeded
[0002.022] DT Write: emc-table@1600000 succeeded
[0002.026] LPDDR4 Training: Write DT: Number of tables = 2
[0002.084]
[0002.085] Debug Init done
[0002.087] Marked DTB cacheable
[0002.090] Bootloader DTB loaded at 0x83000000
[0002.095] Marked DTB cacheable
[0002.098] Kernel DTB loaded at 0x83100000
[0002.102] DeviceTree Init done
[0002.115] Pinmux applied successfully
[0002.119] gicd_base: 0x50041000
[0002.122] gicc_base: 0x50042000
[0002.125] Interrupts Init done
[0002.130] Using base:0x60005090 & irq:208 for tick-timer
[0002.135] Using base:0x60005098 for delay-timer
[0002.139] platform_init_timer: DONE
[0002.143] Timer(tick) Init done
[0002.146] osc freq = 38400 khz
[0002.151]
[0002.152] Welcome to L4T Cboot
[0002.155]
[0002.156] Cboot Version: 00.00.2018.01-t210-3a7ad565
[0002.161] calling constructors
[0002.164] initializing heap
[0002.166] initializing threads
[0002.169] initializing timers
[0002.172] creating bootstrap completion thread
[0002.177] top of bootstrap2()
[0002.179] CPU: ARM Cortex A57
[0002.182] CPU: MIDR: 0x411FD071, MPIDR: 0x80000000
[0002.187] initializing platform
[0002.241] Config for emmc ddr50 mode completed
[0002.245] sdmmc bdev is already initialized
[0002.249] Enable APE clock
[0002.252] Un-powergate APE partition
[0002.255] of_register: registering tegra_udc to of_hal
[0002.261] of_register: registering inv20628-driver to of_hal
[0002.266] of_register: registering ads1015-driver to of_hal
[0002.272] of_register: registering lp8557-bl-driver to of_hal
[0002.277] of_register: registering bq2419x_charger to of_hal
[0002.283] of_register: registering bq27441_fuel_gauge to of_hal
[0002.295] gpio framework initialized
[0002.298] of_register: registering tca9539_gpio to of_hal
[0002.303] of_register: registering tca9539_gpio to of_hal
[0002.309] of_register: registering i2c_bus_driver to of_hal
[0002.314] of_register: registering i2c_bus_driver to of_hal
[0002.320] of_register: registering i2c_bus_driver to of_hal
[0002.325] pmic framework initialized
[0002.329] of_register: registering max77620_pmic to of_hal
[0002.334] regulator framework initialized
[0002.338] of_register: registering tps65132_bl_driver to of_hal
[0002.344] initializing target
[0002.350] gpio_driver_register: register ‘tegra_gpio_driver’ driver
[0002.361] fixed regulator driver initialized
[0002.378] initializing OF layer
[0002.381] NCK carveout not present
[0002.385] Skipping dts_overrides
[0002.389] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.406] I2C Bus Init done
[0002.408] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.419] I2C Bus Init done
[0002.421] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.432] I2C Bus Init done
[0002.434] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.445] I2C Bus Init done
[0002.447] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.458] I2C Bus Init done
[0002.460] of_children_init: Ops found for compatible string maxim,max77620
[0002.471] max77620_init using irq 118
[0002.475] register ‘maxim,max77620’ pmic
[0002.480] gpio_driver_register: register ‘max77620-gpio’ driver
[0002.486] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0002.496] I2C Bus Init done
[0002.500] NCK carveout not present
[0002.510] Find /i2c@7000c000’s alias i2c0
[0002.514] get eeprom at 1-a0, size 256, type 0
[0002.523] Find /i2c@7000c500’s alias i2c2
[0002.527] get eeprom at 3-a0, size 256, type 0
[0002.531] get eeprom at 3-ae, size 256, type 0
[0002.535] pm_ids_update: Updating 1,a0, size 256, type 0
[0002.541] I2C slave not started
[0002.544] I2C write failed
[0002.546] Writing offset failed
[0002.549] eeprom_init: EEPROM read failed
[0002.553] pm_ids_update: eeprom init failed
[0002.557] pm_ids_update: Updating 3,a0, size 256, type 0
[0002.588] pm_ids_update: The pm board id is 3448-0002-400
[0002.594] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0002.602] pm_ids_update: pm id update successful
[0002.607] pm_ids_update: Updating 3,ae, size 256, type 0
[0002.637] pm_ids_update: The pm board id is 3449-0000-400
[0002.643] Adding plugin-manager/ids/3449-0000-400=/i2c@7000c500:module@0x57
[0002.651] pm_ids_update: pm id update successful
[0002.682] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.688] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0002.696] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.702] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0002.710] updating /chosen/nvidia,ethernet-mac node 00:04:4b:ea:34:98
[0002.717] Plugin Manager: Parse ODM data 0x00094000
[0002.727] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0002.742] Find /i2c@7000c000’s alias i2c0
[0002.745] get eeprom at 1-a0, size 256, type 0
[0002.754] Find /i2c@7000c500’s alias i2c2
[0002.758] get eeprom at 3-a0, size 256, type 0
[0002.763] get eeprom at 3-ae, size 256, type 0
[0002.767] pm_ids_update: Updating 1,a0, size 256, type 0
[0002.772] I2C slave not started
[0002.775] I2C write failed
[0002.778] Writing offset failed
[0002.781] eeprom_init: EEPROM read failed
[0002.785] pm_ids_update: eeprom init failed
[0002.789] pm_ids_update: Updating 3,a0, size 256, type 0
[0002.819] pm_ids_update: The pm board id is 3448-0002-400
[0002.826] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0002.833] pm_ids_update: pm id update successful
[0002.837] pm_ids_update: Updating 3,ae, size 256, type 0
[0002.867] pm_ids_update: The pm board id is 3449-0000-400
[0002.874] Adding plugin-manager/ids/3449-0000-400=/i2c@7000c500:module@0x57
[0002.881] pm_ids_update: pm id update successful
[0002.911] Add serial number:1423519040734 as DT property
[0002.919] Applying platform configs
[0002.926] platform-init is not present. Skipping
[0002.930] calling apps_init()
[0002.946] Found 17 GPT partitions in “sdmmc3_user”
[0002.951] Proceeding to Cold Boot
[0002.954] starting app android_boot_app
[0002.958] Device state: unlocked
[0002.961] display console init
[0002.970] could not find regulator
[0002.973] hdmi cable connected
[0002.988] edid read success
[0003.006] DT entry for leds-pwm not found
[0003.009] edid read success
[0003.012] width = 640, height = 480, frequency = 25174825
[0003.017] width = 2560, height = 1440, frequency = 241500000
[0003.023] width = 1920, height = 1080, frequency = 148500000
[0003.029] width = 1920, height = 1080, frequency = 148351648
[0003.034] width = 1920, height = 1080, frequency = 148351648
[0003.040] width = 1280, height = 720, frequency = 74175824
[0003.046] width = 1280, height = 720, frequency = 74175824
[0003.051] width = 720, height = 480, frequency = 26973026
[0003.056] width = 720, height = 576, frequency = 26973026
[0003.062] width = 720, height = 480, frequency = 26973026
[0003.067] width = 720, height = 576, frequency = 26973026
[0003.072] width = 640, height = 480, frequency = 25174825
[0003.078] Best mode Width = 1920, Height = 1080, freq = 148351648
[0003.086] tmds-config node not found
[0003.090] pmc_set_io_pad_voltage: Error -2 retrieving platform-io-pad-voltagepropsetting ‘avdd-io-hdmi-dp’ regulator to 1050000 micro volts
[0003.104] setting ‘vdd-1v8’ regulator to 1800000 micro volts
[0003.112] could not find regulator
[0003.115] could not find regulator
[0003.119] could not find regulator
[0003.147] using default cmu settings
[0003.151] dc_hdmi_enable, starting HDMI initialisation
[0003.157] dc_hdmi_enable, HDMI initialisation complete
[0003.162] list and configure display window
[0003.171] display console init completed
[0003.182] subnode volume_up is not found !
[0003.186] subnode back is not found !
[0003.189] subnode volume_down is not found !
[0003.193] subnode menu is not found !
[0003.197] Gpio keyboard init success
[0003.244] found decompressor handler: lz4-legacy
[0003.259] decompressing blob (type 1)…
[0003.294] load_bmp_blob: panelresolution=1080 type=3
[0003.344] decompressor handler not found
[0003.347] load_firmware_blob: Firmware blob loaded, entries=2
[0003.353] -------> se_aes_verify_sbk_clear: 747
[0003.358] se_aes_verify_sbk_clear: Error
[0003.361] bl_battery_charging: connected to external power supply
[0003.369] xusb is supported
[0003.375] error while finding nvidia,portmap
[0003.879] xusb blob version 0 size 124416
[0003.883] firmware size 124416
[0003.888] Firmware timestamp: 0x5da88fc3, Version: 50.25 release
[0003.902] xhci0: 64 bytes context size, 32-bit DMA
[0003.942] usbus0: 5.0Gbps Super Speed USB v3.0
[0003.962] uhub0: <Nvidia XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
[0004.612] uhub0: 9 ports with 9 removable, self powered
[0005.612] failed to get HID devices
[0005.616] failed to init xhci or no usb device attached
[0005.629] device_query_partition_size: failed to open partition sdmmc3_user:MSC !
[0005.637] MSC Partition not found
[0005.646] device_query_partition_size: failed to open partition sdmmc3_user:USP !
[0005.654] USP partition read failed!
[0005.657] blob_init: blob-partition USP header read failed
[0005.663] android_boot Unable to update recovery partition
[0005.668] kfs_getpartname: name = LNX
[0005.672] Loading kernel from LNX
[0005.736] load kernel from storage
[0005.746] decompressor handler not found
[0005.765] Successfully loaded kernel and ramdisk images
[0005.771] load_bmp_blob: panelresolution=1080 type=3
[0006.266] display bmp image done
[0006.269] NCK carveout not present
[0006.272] Skipping dts_overrides
[0006.275] NCK carveout not present
[0006.285] Find /i2c@7000c000’s alias i2c0
[0006.289] get eeprom at 1-a0, size 256, type 0
[0006.298] Find /i2c@7000c500’s alias i2c2
[0006.302] get eeprom at 3-a0, size 256, type 0
[0006.306] get eeprom at 3-ae, size 256, type 0
[0006.311] pm_ids_update: Updating 1,a0, size 256, type 0
[0006.316] I2C slave not started
[0006.319] I2C write failed
[0006.322] Writing offset failed
[0006.325] eeprom_init: EEPROM read failed
[0006.329] pm_ids_update: eeprom init failed
[0006.333] pm_ids_update: Updating 3,a0, size 256, type 0
[0006.363] pm_ids_update: The pm board id is 3448-0002-400
[0006.370] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0006.377] pm_ids_update: pm id update successful
[0006.382] pm_ids_update: Updating 3,ae, size 256, type 0
[0006.412] pm_ids_update: The pm board id is 3449-0000-400
[0006.418] Adding plugin-manager/ids/3449-0000-400=/i2c@7000c500:module@0x57
[0006.426] pm_ids_update: pm id update successful
[0006.457] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0006.463] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0006.471] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0006.477] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0006.485] updating /chosen/nvidia,ethernet-mac node 00:04:4b:ea:34:98
[0006.492] Plugin Manager: Parse ODM data 0x00094000
[0006.502] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0006.510] Add serial number:1423519040734 as DT property
[0006.519] “bpmp” doesn’t exist, creating
[0006.525] Updated bpmp info to DTB
[0006.530] Updated initrd info to DTB
[0006.533] “proc-board” doesn’t exist, creating
[0006.539] Updated board info to DTB
[0006.542] “pmu-board” doesn’t exist, creating
[0006.547] Updated board info to DTB
[0006.551] “display-board” doesn’t exist, creating
[0006.556] Updated board info to DTB
[0006.560] “reset” doesn’t exist, creating
[0006.564] Updated reset info to DTB
[0006.568] Cmdline: tegraid=21.1.2.0.0 ddr_die=4096M@2048M section=512M memtype=0 vpr_resize usb_port_owner_info=0 lane_owner_info=0 emc_max_dvfs=0 touch_id=0@63 video=tegrafb no_console_suspend=1 consol
[0006.607] DTB cmdline: earlycon=uart8250,mmio32,0x70006000
[0006.612] boot image cmdline: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 sdhci_tegra.en_boot_part_access=1
[0006.628] Updated bootarg info to DTB
[0006.632] Adding uuid 00000001644612841400000006fd0500 to DT
[0006.638] Adding eks info 0 to DT
[0006.643] WARNING: Failed to pass NS DRAM ranges to TOS, err: -7
[0006.649] Updated memory info to DTB
[0006.658] set vdd_core voltage to 1125 mv
[0006.662] setting ‘vdd-core’ regulator to 1125000 micro volts
[0006.682] Found secure-pmc; disable BPMP

U-Boot 2016.07-ge6da093be3 (Jun 25 2020 - 21:18:08 -0700)

TEGRA210
Model: NVIDIA P3450-Porg
Board: NVIDIA P3450-PORG
DRAM: 4 GiB
MMC: Tegra SD/MMC: 0, Tegra SD/MMC: 1
SF: Failed to get idcodes
*** Warning - spi_flash_probe() failed, using default environment

In: serial
Out: serial
Err: serial
Net: No ethernet found.
Card did not respond to voltage select!
** Bad device mmc 1 **
Hit any key to stop autoboot: 0
Card did not respond to voltage select!
switch to partitions #0, OK
mmc0(part 0) is current device
Failed to mount ext2 filesystem…
** Unrecognized filesystem type **
starting USB…
USB0: tegrausb: Invalid dr_mode 2 for host mode
probe failed, error -1
USB error: all controllers failed lowlevel init
PCI device eth_rtl8169: unknown chip version, assuming RTL-8169
PCI device: TxConfig = 0x4B100D00
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.0.14 (325 ms)
*** Warning: no boot file name; using ‘C0A8000E.img’
Using eth_rtl8169 device
TFTP from server 192.168.0.1; our IP address is 192.168.0.14
Filename ‘C0A8000E.img’.
Load address: 0x83280000
Loading: T T T T T T T
CTRL-A Z for help | 115200 8N1 | NOR | Minicom 2.7 | VT102 | Offline | ttyUSB0

Is this a an eMMC (production) model, or a microSD card (dev kit) model? Is this the dev kit carrier board, or is it another carrier board? This sticks out, and is related to not finding a filesystem (depending on model this would either be the eMMC or microSD not working):

Card did not respond to voltage select!
** Bad device mmc 1 **
Hit any key to stop autoboot:  0 
Card did not respond to voltage select!
switch to partitions #0, OK
mmc0(part 0) is current device
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **

The fact that the unit sometimes boots implies the filesystem is probably there, but it seems like on occasion the persistent memory is not readable. My initial thought is that if this is a microSD model, then it might be the particular microSD card which is at issue.

We are using an eMMC model (https://www.waveshare.com/jetson-nano-module.htm) connected to the dev kit carrier board. We have microSD models too, but we are trying to implement our solution with the eMMC model. The microSD models boot consistently; this is just with the eMMC model.

I don’t know enough about the eMMC to debug this, but basically I suspect something in eMMC (such as training or power delivery) is marginal. Having the unit able to boot sometimes with the image currently on the eMMC means the image itself must be capable of booting. Combine this with the bootloader sometimes not being able to use the eMMC for the rootfs partition and it points to hardware.

Unless there is something unusual about the rootfs partition (e.g., it is on microSD while the rest is on eMMC), then it is time to look closer at your eMMC training, power delivery, so on. Someone from NVIDIA may be able to comment on something more specific.

Hello @WayneWWW
We are using the carrier boards that come with NVIDIA’s developer kit (https://developer.nvidia.com/embedded/jetson-nano-developer-kit). We have the microSD boards that came with the developer kit, and we also bought the production modules separately.

From what I understand, the production module should work with the carrier board, right?

Development kit carriers are incompatible with eMMC modules.

We are using the 180-13449-DAAF-B01 carrier board. That isn’t compatible with the 180-13448-DAAA-B01 production module?

I do not know the numeric designation for carrier boards. There is an a02 revision for earlier Nano dev kits, and most became the b01 early on, but these are all SD card models. None of the carriers which work with SD card boot will work with a module using eMMC. If that board works with a dev kit module (regardless of being a02 or b01 revision), then it is unlikely to work with the eMMC model.

Amended, did not know eMMC and b01 had any compatibility.

Sorry that it was my fault. Deleted my previous comment.

If you are using b01 carrier board, then it should work with b01 module. No matter it is b01 emmc module or b01 sdcard module.

In your case, your devkit was a pair with another sdcard module but you connect a emmc module on it, right?

Could you tell us how you flash your board?

Card did not respond to voltage select!
** Bad device mmc 1 **
Hit any key to stop autoboot: 0
Card did not respond to voltage select!
switch to partitions #0, OK
mmc0(part 0) is current device

Hello @WayneWWW,

Yes, we ordered a B01 developer kit (carrier board + SD card module) from NVIDIA, and we are simply changing out the SD card module for an emmc module.

Please look at our img creation process below:

  1. [./flash.sh jetson-nano-qspi-sd mmcblk0p1] to flash a preexisting img onto an SD card module.
  2. Download our drivers, internal services, and other SW changes onto the Nano rootfs.
  3. [ROOTFS_DIR=<MODIFIED_ROOTFS_PATH> ./jetson-disk-image-creator.sh -o 20200715.img -b jetson-nano -r 300] to create a new img with our custom rootfs.
  4. [cp 20200715.img ~/Linux_for_Tegra/bootloader/system.img] to use the newly made img.
  5. [./flash.sh -r jetson-nano-devkit-emmc mmcblk0p1] to flash our emmc board.

So we basically take a preexisting SD card img, make our software changes to it, and attempt to flash that img to the emmc board.

Hi,

I think maybe you could firstly try to use fresh sdkmanager release driver package and see if this issue would still happen.

Need narrow down this issue step by step.

@kevin.choi you have flashed the sd-Image to an emmc model.

Pls try to add your customized drivers/software into the rootfs under ~/Linux_for_Tegra/ and try with ./flash.sh jetson-nano-devkit-emmc mmcblk0p1 again.

Hello @alanz
Do you think the rootfs for the sd card img would be so different from the emmc img?
I would think it’s just a simple change to the dtb, which the system should be able to identify.

During flash the content of the “rootfs/” has boot-related edits. Other than those edits the rootfs would be the same, but boot would fail. Device tree can cause boot failure. The rootfs edits depend on arguments passed to the flash software.

Hmmmm I see. Ok, we wanted to copy our SD img to the emmc img, but it looks like that is not possible.

I managed to recreate our img on the emmc board, so thank you so much for your help.

Something I’ve not tried (I only have an SD card version, a02), but you might consider (keep an unmodified copy in case this does not work) is to loopback mount a clone from an SD card image on the host PC’s “Linux_for_Tegra/rootfs/”, and then run normal flash. What this would do is edit the clone’s boot content and put the eMMC version on it (assuming you used eMMC flash commands and not SD card commands). Most of the rootfs image would be from the clone (instead of the sample rootfs), but some boot related files would change and perhaps the other content would “just work”. Maybe. Don’t know, but would be curious if this helps.

Reusing system.img (such as with a clone) is an absolute pure copy. Putting a clone on “rootfs/” is a “near” copy.