TX2 not booting after successful flashing

Hi,

I am trying to clone TX2 custom boards by flashing an image from my custom “original” board.
I’ve followed the instructions per https://elinux.org/Jetson/TX2_Cloning that is, on the host ubuntu PC by applying the following commands to prepare the image to be copied to the cloned units:

sudo ./flash.sh -r -k APP -G backup.img jetson-tx2 mmcblk0p1
sudo cp backup.img.raw bootloader/system.img

The size of the image is 30,064,771,072[B].

Then replacing the “original” cloned unit (=Jetson TX2 + Board) by new fresh units (directly from Factory) to be connected to the USB cable:

sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1

After a suceesful flashing I am getting the following looped log (which crashed ~200msec after kernel starting)

[0000.271] I> Welcome to MB2(TBoot-BPMP)(version: 01.00.160913-t186-M-00.00-mobile-03715cad)
[0000.279] I> Boot-device: eMMC
[0000.287] I> sdmmc bdev is already initialized
[0000.291] I> pmic: reset reason (nverc)	: 0x4

[0000.324] I> Found 19 partitions in SDMMC_BOOT (instance 3)
[0000.344] I> Found 33 partitions in SDMMC_USER (instance 3)
[0000.350] W> No valid slot number is found in scratch register
[0000.356] W> Return default slot: _a
[0000.359] I> A/B: bin_type (16) slot 0
[0000.363] I> Loading partition bpmp-fw at 0xd7800000
[0000.368] I> Reading two headers - addr:0xd7800000 blocks:1
[0000.373] I> Addr: 0xd7800000, start-block: 58777608, num_blocks: 1
[0000.398] I> Binary(16) of size 534416 is loaded @ 0xd7800000
[0000.404] W> No valid slot number is found in scratch register
[0000.409] W> Return default slot: _a
[0000.413] I> A/B: bin_type (17) slot 0
[0000.416] I> Loading partition bpmp-fw-dtb at 0xd79f0000
[0000.422] I> Reading two headers - addr:0xd79f0000 blocks:1
[0000.427] I> Addr: 0xd79f0000, start-block: 58780024, num_blocks: 1
[0000.453] I> Binary(17) of size 604720 is loaded @ 0xd796c400

[0000.683] I> Loading SCE-FW ...
[0000.686] W> No valid slot number is found in scratch register
[0000.692] W> Return default slot: _a
[0000.695] I> A/B: bin_type (12) slot 0
[0000.699] I> Loading partition sce-fw at 0xd7300000
[0000.704] I> Reading two headers - addr:0xd7300000 blocks:1
[0000.709] I> Addr: 0xd7300000, start-block: 58784120, num_blocks: 1
[0000.728] I> Binary(12) of size 125168 is loaded @ 0xd7300000
[0000.734] I> Init SCE
[0000.736] I> Loading APE-FW ...
[0000.739] W> No valid slot number is found in scratch register
[0000.745] W> Return default slot: _a
[0000.748] I> A/B: bin_type (11) slot 0
[0000.752] I> Loading partition adsp-fw at 0xd7400000
[0000.757] I> Reading two headers - addr:0xd7400000 blocks:1
[0000.762] I> Addr: 0xd7400000, start-block: 58761224, num_blocks: 1
[0000.781] I> Binary(11) of size 77216 is loaded @ 0xd7400000
[0000.787] I> Copy BTCM section
[0000.790] W> No valid slot number is found in scratch register
[0000.796] W> Return default slot: _a
[0000.799] I> A/B: bin_type (13) slot 0
[0000.803] I> Loading partition cpu-bootloader at 0x96000000
[0000.808] I> Reading two headers - addr:0x96000000 blocks:1
[0000.814] I> Addr: 0x96000000, start-block: 58740744, num_blocks: 1
[0000.834] I> Binary(13) of size 302064 is loaded @ 0x96000000
[0000.840] W> No valid slot number is found in scratch register
[0000.846] W> Return default slot: _a
[0000.849] I> A/B: bin_type (20) slot 0
[0000.853] I> Loading partition bootloader-dtb at 0x8520f400
[0000.858] I> Reading two headers - addr:0x8520f400 blocks:1
[0000.864] I> Addr: 0x8520f400, start-block: 58742792, num_blocks: 1
[0000.886] I> Binary(20) of size 374528 is loaded @ 0x8520f400
[0000.892] W> No valid slot number is found in scratch register
[0000.897] W> Return default slot: _a
[0000.901] I> A/B: bin_type (14) slot 0
[0000.904] I> Loading partition secure-os at 0x8530f600
[0000.909] I> Reading two headers - addr:0x8530f600 blocks:1
[0000.915] I> Addr: 0x8530f600, start-block: 58744840, num_blocks: 1
[0000.937] I> Binary(14) of size 394672 is loaded @ 0x8530f600
[0000.945] I> TOS boot-params @ 0x85000000
[0000.949] I> TOS params prepared
[0000.952] I> Loading EKS ...
[0000.954] I> A/B: bin_type (15) slot 0
[0000.958] I> Loading partition eks at 0x8590f800
[0000.963] I> Reading two headers - addr:0x8590f800 blocks:1
[0000.968] I> Addr: 0x8590f800, start-block: 58757128, num_blocks: 1
[0000.987] I> Binary(15) of size 1040 is loaded @ 0x8590f800
[0000.992] I> EKB detected (length: 0x400) @ 0x8590f800
[0000.997] I> Copied encrypted keys
[0001.001] I> boot profiler @ 0x275844000
[0001.005] I> boot profiler for TOS @ 0x275844000
[0001.010] I> Unhalting SCE
[0001.012] I> Primary Memory Start:80000000 Size:70000000
[0001.018] I> Extended Memory Start:f0110000 Size:1856f0000
[0001.024] I> MB2(TBoot-BPMP) done

NOTICE:  BL31: v1.3(release):5b49e7f80
NOTICE:  BL31: Built : 08:38:54, Feb 19 2021
ipc-unittest-main: 1519: Welcome to IPC unittest!!!
ipc-unittest-main: 1531: waiting forever
ipc-unittest-srv: 329: Init unittest services!!!
hwkey-agent: 40: hwkey-agent is running!!
hwkey-agent: 197: key_mgnt_processing .......
hwkey-agent: 189: Setting EKB key 0 to slot 14
hwkey-agent: 167: Init hweky-agent services!!
luks-srv: 40: luks-srv is running!!
luks-srv: 157: Init luks-srv IPC services!!
platform_bootstrap_epilog: trusty bootstrap complete

[0001.397] I> Welcome to Cboot
[0001.400] I> Cboot Version: t186-28749d1d
[0001.403] I> CPU-BL Params @ 0x275800000
[0001.407] I>  0) Base:0x00000000 Size:0x00000000
[0001.412] I>  1) Base:0x277f00000 Size:0x00100000
[0001.416] I>  2) Base:0x277e00000 Size:0x00100000
[0001.421] I>  3) Base:0x277d00000 Size:0x00100000
[0001.425] I>  4) Base:0x277c00000 Size:0x00100000
[0001.430] I>  5) Base:0x277b00000 Size:0x00100000
[0001.434] I>  6) Base:0x277800000 Size:0x00200000
[0001.439] I>  7) Base:0x277400000 Size:0x00400000
[0001.443] I>  8) Base:0x277a00000 Size:0x00100000
[0001.448] I>  9) Base:0x277300000 Size:0x00100000
[0001.452] I> 10) Base:0x276800000 Size:0x00800000
[0001.457] I> 11) Base:0x30000000 Size:0x00040000
[0001.461] I> 12) Base:0xf0000000 Size:0x00100000
[0001.466] I> 13) Base:0x30040000 Size:0x00001000
[0001.470] I> 14) Base:0x30048000 Size:0x00001000
[0001.474] I> 15) Base:0x30049000 Size:0x00001000
[0001.479] I> 16) Base:0x3004a000 Size:0x00001000
[0001.483] I> 17) Base:0x3004b000 Size:0x00001000
[0001.488] I> 18) Base:0x3004c000 Size:0x00001000
[0001.492] I> 19) Base:0x3004d000 Size:0x00001000
[0001.497] I> 20) Base:0x3004e000 Size:0x00001000
[0001.501] I> 21) Base:0x3004f000 Size:0x00001000
[0001.505] I> 22) Base:0x00000000 Size:0x00000000
[0001.510] I> 23) Base:0xf0100000 Size:0x00010000
[0001.514] I> 24) Base:0x00000000 Size:0x00000000
[0001.519] I> 25) Base:0x00000000 Size:0x00000000
[0001.523] I> 26) Base:0x00000000 Size:0x00000000
[0001.528] I> 27) Base:0x00000000 Size:0x00000000
[0001.532] I> 28) Base:0x84400000 Size:0x00400000
[0001.536] I> 29) Base:0x30000000 Size:0x00010000
[0001.541] I> 30) Base:0x278000000 Size:0x08000000
[0001.545] I> 31) Base:0x00000000 Size:0x00000000
[0001.550] I> 32) Base:0x276000000 Size:0x00600000
[0001.554] I> 33) Base:0x80000000 Size:0x70000000
[0001.559] I> 34) Base:0xf0110000 Size:0x1856f0000
[0001.563] I> 35) Base:0x00000000 Size:0x00000000
[0001.568] I> 36) Base:0x00000000 Size:0x00000000
[0001.572] I> 37) Base:0x2772e0000 Size:0x00020000
[0001.577] I> 38) Base:0x84000000 Size:0x00400000
[0001.581] I> 39) Base:0x96000000 Size:0x02000000
[0001.586] I> 40) Base:0x85000000 Size:0x01200000
[0001.590] I> 41) Base:0x275800000 Size:0x00500000
[0001.595] I> 42) Base:0x00000000 Size:0x00000000
[0001.599] I> 43) Base:0x00000000 Size:0x00000000
[0001.603] GIC-SPI Target CPU: 4

[0001.607] Interrupts Init done

[0001.610] calling constructors

[0001.613] initializing heap
[0001.616] initializing threads

[0001.619] initializing timers

[0001.622] creating bootstrap completion thread

[0001.627] top of bootstrap2()

[0001.630] CPU: ARM Cortex A57

[0001.633] CPU: MIDR: 0x411FD073, MPIDR: 0x80000100

[0001.638] initializing platform

[0001.641] I> Bl_dtb @0x8520f400
[0001.644] I> gpio framework initialized
[0001.651] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio' driver
[0001.661] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio-aon' driver
[0001.669] I> GPIO framework and drivers are initialized.
[0001.674] I> Boot-device: eMMC
[0001.681] I> sdmmc bdev is already initialized
[0001.712] I> Found 19 partitions in SDMMC_BOOT (instance 3)
[0001.729] I> Found 33 partitions in SDMMC_USER (instance 3)
[0001.735] W> opt-in fuse is not set, skip fuse_burning
[0001.740] I> Reserved memory at 0xfbe00000 for U-Boot relocation
[0001.745] W> No valid slot number is found in scratch register
[0001.751] W> Return default slot: _a
[0001.760] I> A/B: bin_type (21) slot 0
[0001.764] I> Loading kernel-dtb from partition
[0001.768] I> Loading partition kernel-dtb at 0x80000000 from device(0x1)
[0001.786] I> Kernel_dtb @0x80000000
[0001.789] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xee
[0001.799] I> tegrabl_gpio_driver_register: register 'tca9539_gpio_driver' driver
[0001.806] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xe8
[0001.815] I> tegrabl_gpio_driver_register: register 'tca9539_gpio_driver' driver
[0001.826] I> fixed regulator driver initialized

[0001.859] I> register 'maxim' power off handle
[0001.865] I> virtual i2c enabled
[0001.868] I> registered 'maxim,max77620' pmic
[0001.872] I> tegrabl_gpio_driver_register: register 'max77620-gpio' driver
[0001.886] I> Find /i2c@c250000's alias i2c7
[0001.890] I> Reading eeprom i2c=7 address=0x50

[0001.919] I> Device at /i2c@c250000:0x50
[0001.923] I> Reading eeprom i2c=7 address=0x57
[0001.927] E> I2C: slave not found in slaves.
[0001.931] E> I2C: Could not write 0 bytes to slave: 0x00ae with repeat start true.
[0001.939] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.945] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xae at 0x00000000 via instance 7.
[0001.954] E> eeprom: Failed to read I2C slave device
[0001.959] I> Eeprom read failed 0x3526070d
[0001.964] I> Find /i2c@c240000's alias i2c1
[0001.968] I> Reading eeprom i2c=1 address=0x51
[0001.973] E> I2C: slave not found in slaves.
[0001.977] E> I2C: Could not write 0 bytes to slave: 0x00a2 with repeat start true.
[0001.985] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.991] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa2 at 0x00000000 via instance 1.
[0002.000] E> eeprom: Retry to read I2C slave device.
[0002.005] E> I2C: slave not found in slaves.
[0002.009] E> I2C: Could not write 0 bytes to slave: 0x00a2 with repeat start true.
[0002.017] E> I2C_DEV: Failed to send register address 0x00000000.
[0002.023] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa2 at 0x00000000 via instance 1.
[0002.032] E> eeprom: Failed to read I2C slave device
[0002.037] I> Eeprom read failed 0x3526070d
[0002.042] I> Find /i2c@3160000's alias i2c0
[0002.046] I> Reading eeprom i2c=0 address=0x50
[0002.050] E> I2C: slave not found in slaves.
[0002.054] E> I2C: Could not write 0 bytes to slave: 0x00a0 with repeat start true.
[0002.062] E> I2C_DEV: Failed to send register address 0x00000000.
[0002.068] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa0 at 0x00000000 via instance 0.
[0002.077] E> eeprom: Failed to read I2C slave device
[0002.082] I> Eeprom read failed 0x3526070d
[0002.087] I> Find /i2c@3180000's alias i2c2
[0002.091] I> Reading eeprom i2c=2 address=0x54
[0002.095] I> Enabling gpio chip_id = 2, gpio pin = 9
[0002.101] E> I2C: slave not found in slaves.
[0002.105] E> I2C: Could not write 0 bytes to slave: 0x00a8 with repeat start true.
[0002.113] E> I2C_DEV: Failed to send register address 0x00000000.
[0002.119] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa8 at 0x00000000 via instance 2.
[0002.129] E> eeprom: Failed to read I2C slave device
[0002.133] I> Disabling gpio chip_id = 2, gpio pin = 9
[0002.138] I> Eeprom read failed 0x00000000
[0002.142] I> Reading eeprom i2c=2 address=0x57
[0002.147] I> Enabling gpio chip_id = 2, gpio pin = 9
[0002.152] E> I2C: slave not found in slaves.
[0002.156] E> I2C: Could not write 0 bytes to slave: 0x00ae with repeat start true.
[0002.164] E> I2C_DEV: Failed to send register address 0x00000000.
[0002.170] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xae at 0x00000000 via instance 2.
[0002.179] E> eeprom: Failed to read I2C slave device
[0002.184] I> Disabling gpio chip_id = 2, gpio pin = 9
[0002.189] I> Eeprom read failed 0x00000000
[0002.193] I> create_pm_ids: id: 3310-1000-D02-K, len: 15
[0002.198] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93

[0002.233] I> enabling 'vdd-hdmi' regulator
[0002.249] I> regulator 'vdd-hdmi' already enabled
[0002.253] I> hdmi cable connected
[0002.262] I> setting 'vdd-pex-1v00' regulator to 1000000 micro volts
[0002.274] I> setting 'vdd-1v8' regulator to 1800000 micro volts
[0002.283] E> cannot find any other nvdisp nodes
[0002.304] I> edid read success
[0002.319] I> edid read success
[0002.322] I> This is not a CEA-extension block!
[0002.326] I> width = 640, height = 480, frequency = 25174825
[0002.332] I> width = 640, height = 480, frequency = 25174825
[0002.337] I> width = 640, height = 480, frequency = 25174825
[0002.343] I> width = 640, height = 480, frequency = 25174825
[0002.348] I> width = 1920, height = 1080, frequency = 148500000
[0002.354] I> Best mode Width = 640, Height = 480, freq = 25174825
[0002.364] I> hdmi_enable, starting HDMI initialisation
[0002.372] I> hdmi_enable, HDMI initialisation complete
[0002.378] initializing target

[0002.381] calling apps_init()

[0002.384] starting app kernel_boot_app

[0002.406] I> found decompressor handler: lz4-legacy
[0002.411] I> decompressing BMP blob ...
[0002.423] I> Kernel type = Normal
[0002.426] I> Loading kernel-bootctrl from partition
[0002.431] I> Loading partition kernel-bootctrl at 0xa8000000 from device(0x1)
[0002.445] W> tegrabl_get_kernel_bootctrl: magic number(0x00000000) is invalid
[0002.452] W> tegrabl_get_kernel_bootctrl: use default dummy boot control data
[0002.459] I> ########## Fixed storage boot ##########
[0002.464] W> No valid slot number is found in scratch register
[0002.469] W> Return default slot: _a
[0002.473] I> A/B: bin_type (24) slot 0
[0002.489] I> Boot image size read from image header: 97de5
[0002.494] I> Boot image load address: 0x80400000
[0002.498] I> Loading kernel from partition
[0002.502] I> Loading partition kernel at 0x80400000 from device(0x1)

[0003.444] I> Validate kernel ...
[0003.447] I> T18x: Authenticate kernel (bin_type 24), max size 0x4000000
[0003.455] I> Checking boot.img header magic ... [0003.459] I> [OK]
[0003.461] I> kernel-dtb is already loaded
[0003.465] I> Validate kernel-dtb ...
[0003.468] I> T18x: Authenticate kernel-dtb (bin_type 21), max size 0x100000
[0003.476] I> Kernel hdr @0x80400000
[0003.479] I> Kernel dtb @0x80000000
[0003.483] I> decompressor handler not found
[0003.487] I> Copying kernel image (622053 bytes) from 0x80400800 to 0x80600000 ... [0003.494] I> Done
[0003.496] I> Move ramdisk (len: 0) from 0x80498800 to 0x947d0000
[0003.503] I> Updated bpmp info to DTB
[0003.509] I> Ramdisk: Base: 0x947d0000; Size: 0x0
[0003.514] I> Updated initrd info to DTB
[0003.518] W> WARN: Fail to override "console=none" in commandline
[0003.524] I> Active rootfs suffix: 
[0003.527] E> tegrabl_linuxboot_add_disp_param, du 1 failed to get display params
[0003.534] E> tegrabl_linuxboot_add_disp_param, du 1 failed to get display params
[0003.541] I> disabled_core_mask: 0xffffff0c
[0003.545] W> No valid slot number is found in scratch register
[0003.551] W> Return default slot: _a
[0003.554] I> Active slot suffix: 
[0003.557] I> add_boot_slot_suffix: slot_suffix = 
[0003.562] I> Linux Cmdline: console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2  video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x140000@0x96081000 lut_mem2=0x2008@0x9607e000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 
[0003.615] I> Updated bootarg info to DTB
[0003.618] I> eeprom_get_mac_addr: MAC (type: 0): 48:b0:2d:11:1f:37
[0003.625] I> eeprom_get_mac_addr: MAC (type: 1): 48:b0:2d:11:1f:38
[0003.631] I> eeprom_get_mac_addr: MAC (type: 2): 48:b0:2d:11:1f:39
[0003.637] E> Found no plugin manager ids in source DT
[0003.642] W> Add plugin manager ids from board info
[0003.647] W> "plugin-manager" doesn't exist, creating
[0003.652] W> "ids" doesn't exist, creating
[0003.656] W> "connection" doesn't exist, creating
[0003.660] W> "configs" doesn't exist, creating
[0003.665] I> create_pm_ids: id: 3310-1000-D02-K, len: 15
[0003.670] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0003.681] I> Adding plugin-manager/ids/3310-1000-D02=/i2c@c250000:module@0x50
[0003.688] W> "i2c@c250000" doesn't exist, creating
[0003.693] W> "module@0x50" doesn't exist, creating
[0003.699] I> Adding plugin-manager/ids/3310-1000-D02-K
[0003.707] I> Adding plugin-manager/configs/3310-mem-type 00
[0003.712] I> Adding plugin-manager/configs/3310-power-config 00
[0003.718] I> Adding plugin-manager/configs/3310-misc-config 00
[0003.724] I> Adding plugin-manager/configs/3310-modem-config 00
[0003.730] I> Adding plugin-manager/configs/3310-touch-config 00
[0003.736] I> Adding plugin-manager/configs/3310-display-config 00
[0003.742] I> Adding plugin-manager/cvm
[0003.746] W> "chip-id" doesn't exist, creating
[0003.750] I> Adding plugin-manager/chip-id/A02P
[0003.755] W> "odm-data" doesn't exist, creating
[0003.759] I> Adding /chosen/plugin-manager/odm-data
[0003.769] I> added [base:0x80000000, size:0x70000000] to /memory
[0003.775] I> added [base:0xf0200000, size:0x185600000] to /memory
[0003.781] I> added [base:0x275e00000, size:0x200000] to /memory
[0003.787] I> added [base:0x276600000, size:0x200000] to /memory
[0003.792] I> added [base:0x277000000, size:0x200000] to /memory
[0003.798] I> Updated memory info to DTB
[0003.803] E> add_disp_param: failed to get display params for du=1
[0003.811] W> "reset" doesn't exist, creating
[0003.815] W> "pmc-reset-reason" doesn't exist, creating
[0003.820] W> "pmic-reset-reason" d
oesn't exist, creating
[0003.827] I> Adding ecid(00000001646ca6c20000000005fb8180) to DT
[0003.833] I> disabled_core_mask: 0xffffff0c
[0003.845] I> Add serial number:1424420031169 as DT property
[0003.854] I> Plugin-manager override starting
[0003.860] I> node /plugin-manager/fragement@0 matches
[0003.870] I> node /plugin-manager/fragement@4 matches
[0003.883] I> node /plugin-manager/fragment-sdwake-p3310-1000-300 matches
[0003.903] I> node /plugin-manager/fragement-pmon-p3310-1000-300 matches
[0003.912] I> node /plugin-manager/fragement-pmon-p3310-1000-800 matches
[0003.921] I> node /plugin-manager/fragment-devslp@0 matches
[0003.934] I> node /plugin-manager/fragment-500-pcie-config matches
[0003.948] I> node /plugin-manager/fragment-500-xusb-config matches
[0003.971] I> node /plugin-manager/fragment-p3310-c00-comm matches
[0003.985] I> node /plugin-manager/fragment-p3310-c00-pmic matches
[0003.996] I> node /plugin-manager/fragment-p3310-c01 matches
[0004.009] I> node /plugin-manager/fragment-p3310-c03 matches

[0004.047] I> node /plugin-manager/fragment-p3310-c00-camera matches
[0004.074] I> Disable plugin-manager status in FDT
[0004.079] I> Plugin-manager override finished successfully
[0004.084] I> tegrabl_load_kernel_and_dtb: Done
[0004.094] I> Kernel EP: 0x80600000, DTB: 0x80000000



U-Boot 2020.04-g6b630d64fd (Feb 19 2021 - 08:38:59 -0800)

SoC: tegra186
Model: NVIDIA P2771-0000-500
Board: NVIDIA P2771-0000
DRAM:  
7.8 GiB

MMC:   sdhci@3400000: 1, sdhci@3460000: 0
Loading Environment from MMC... 
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   
Warning: ethernet@2490000 using MAC address from ROM
eth0: ethernet@2490000
Hit any key to stop autoboot:  2 
 1 
 0 
MMC: no card present

switch to partitions #0, OK
mmc0(part 0) is current device

Scanning mmc 0:1...

Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf

1203 bytes read in 34 ms (34.2 KiB/s)
L4T boot options
1:	primary kernel
2:	backup kernel
Enter choice: 
1:	primary kernel
Retrieving file: /boot/initrd

7236792 bytes read in 191 ms (36.1 MiB/s)
Retrieving file: /boot/Image

34527240 bytes read in 831 ms (39.6 MiB/s)
append: console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2  video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x140000@0x96081000 lut_mem2=0x2008@0x9607e000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1
Retrieving file: /boot/tegra186-quill-p3310-1000-c03-00-base.dtb

346120 bytes read in 38 ms (8.7 MiB/s)
## Flattened Device Tree blob at 88400000
   Booting using the fdt blob at 0x88400000
ERROR: reserving fdt memory region failed (addr=0 size=0)
ERROR: reserving fdt memory region failed (addr=0 size=0)
ERROR: reserving fdt memory region failed (addr=0 size=0)
   Using Device Tree in place at 0000000088400000, end 0000000088457807
copying carveout for /host1x@13e00000/display-hub@15200000/display@15200000...
copying carveout for /host1x@13e00000/display-hub@15200000/display@15210000...
copying carveout for /host1x@13e00000/display-hub@15200000/display@15220000...


Starting kernel ...


[    0.000000] Booting Linux on physical CPU 0x100
[    0.000000] Linux version 4.9.201-tegra (root@nvidia-desktop) (gcc version 7.5.0 (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) ) #235 SMP PREEMPT Fri Oct 8 08:21:25 IDT 2021
[    0.000000] Boot CPU: AArch64 Processor [411fd073]
[    0.000000] OF: fdt:memory scan node memory@80000000, reg size 80,
[    0.000000] OF: fdt: - 80000000 ,  70000000
[    0.000000] OF: fdt: - f0200000 ,  185600000
[    0.000000] OF: fdt: - 275e00000 ,  200000
[    0.000000] OF: fdt: - 276600000 ,  200000
[    0.000000] OF: fdt: - 277000000 ,  200000
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options '')
[    0.000000] bootconsole [uart8250] enabled
[    0.000000] Found tegra_fbmem2: 00140000@96081000
[    0.000000] Found lut_mem2: 00002008@9607e000
[    0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb2_carveout': base 0x0000000000000000, size 0 MiB
[    0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb2_carveout': base 0x0000000000000000, size 0 MiB
[    0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb0_carveout': base 0x0000000000000000, size 0 MiB
[    0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb0_carveout': base 0x0000000000000000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node vpr-carveout, compatible id nvidia,vpr-carveout
[    0.000000] OF: reserved mem: initialized node ramoops_carveout, compatible id nvidia,ramoops
[    0.000000] cma: Reserved 64 MiB at 0x00000000fc000000

[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] percpu: Embedded 24 pages/cpu s57560 r8192 d32552 u98304
[    0.000000] Speculative Store Bypass Disable mitigation not required
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 2022645
[    0.000000] Kernel command line: console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2  video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x140000@0x96081000 lut_mem2=0x2008@0x9607e000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1  
[    0.000000] log_buf_len individual max cpu contribution: 32768 bytes
[    0.000000] log_buf_len total cpu_extra contributions: 163840 bytes
[    0.000000] log_buf_len min size: 32768 bytes
[    0.000000] log_buf_len: 262144 bytes
[    0.000000] early log buf free: 29392(89%)
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
[    0.000000] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)

[    0.000000] Memory: 7276560K/8219380K available (15294K kernel code, 2934K rwdata, 6896K rodata, 8576K init, 609K bss, 189156K reserved, 753664K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000]     vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000   (   250 GB)
[    0.000000]       .text : 0xffffff8008080000 - 0xffffff8008f70000   ( 15296 KB)
[    0.000000]     .rodata : 0xffffff8008f70000 - 0xffffff8009630000   (  6912 KB)
[    0.000000]       .init : 0xffffff8009630000 - 0xffffff8009e90000   (  8576 KB)
[    0.000000]       .data : 0xffffff8009e90000 - 0xffffff800a16d808   (  2935 KB)
[    0.000000]        .bss : 0xffffff800a16d808 - 0xffffff800a205cbc   (   610 KB)
[    0.000000]     fixed   : 0xffffffbefe7fd000 - 0xffffffbefec00000   (  4108 KB)
[    0.000000]     PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000   (    16 MB)
[    0.000000]     vmemmap : 0xffffffbf00000000 - 0xffffffc000000000   (     4 GB maximum)
[    0.000000]               0xffffffbf00000000 - 0xffffffbf07dc8000   (   125 MB actual)
[    0.000000]     memory  : 0xffffffc000000000 - 0xffffffc1f7200000   (  8050 MB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=6, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 64.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=6.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=6
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 31.25MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xe6a171046, max_idle_ns: 881590405314 ns
[    0.000003] sched_clock: 56 bits at 31MHz, resolution 32ns, wraps every 4398046511088ns
[    0.009629] Console: colour dummy device 80x25
[    0.014291] console [tty0] enabled
[    0.017846] bootconsole [uart8250] disabled

[0000.176] I> Welcome to MB2(TBoot-BPMP)(version: 01.00.160913-t186-M-00.00-mobile-03715cad)
[0000.184] I> Boot-device: eMMC
[0000.191] I> sdmmc bdev is already initialized
[0000.196] I> pmic: reset reason (nverc)	: 0x0
[0000.229] I> Found 19 partitions in SDMMC_BOOT (instance 3)
[0000.249] I> Found 33 partitions in SDMMC_USER (instance 3)
[0000.255] W> No valid slot number is found in scratch register
[0000.261] W> Return default slot: _a
[0000.264] I> A/B: bin_type (16) slot 0
[0000.268] I> Loading partition bpmp-fw at 0xd7800000
......

The above terminal display loops forever.

Some more info:

Please advise what I’m doing wrong.

Regards.

The above size is wrong. The image should be from a filesystem which is an integer multiple of either 1024 twice (“1024x1024” MiB), or else 1024 three times (“1024x1024x1024” GiB). Perhaps there is some excess which could be trimmed and is not part of the filesystem? If I divide by 1024 just once I get “29360.1279296875” (KiB). Then during flash, if you have a non-default size, you would use the “-S size” option. Example if it is 28GiB:
sudo ./flash.sh -S 28GiB -r -k APP jetson-tx2 mmcblk0p1

My concern is that if the rootfs partition is actually 30,064,771,072 bytes, then the original flash had something strange going on.

Is this a TX2 commercial module, or is it from a dev kit?

FYI, cloning just the rootfs will not work. The other partition content must also be installed and is what gets boot to the point that it can mount a rootfs. That non-rootfs content must be a version compatible with the cloned rootfs.

What was your original procedure (including software versions being flashed) for the content on the source TX2 being cloned? That will offer a lot of information on what needs to be done with the destination module.

hi @linuxdev,

thanks for the prompt reply.

All TX2s are commercial modules.

I understand that cloning only the rootfs is not sufficient. BUT, I was under the impression that the following command is actually reading the whole eMMC (cloning):

sudo ./flash.sh -r -k APP -G backup.img jetson-tx2 mmcblk0p1

and then the following command is actually copying the whole image of the eMMC to the next TX2 unit

sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1

The procedure that I have applied to the original TX2 unit is as following:

  • I have utilized the SDK and installed JetPack 4.5.1
  • modified some video drivers
  • Read the the “whole” eMMC (or at least, thought I was doing it) - by flashing
  • Wrote the “whole” eMMC - by flashing

Regarding the size of the image - the peculiar size is the reason that I have wrote the exact size of the image. But I though that if the process was long and there were no errors, then the size must be correct.

Please advise.

Regards.

Hi,

There should be some hidden log in the kernel log but since the default mode in our BSP put kernel log in silence during uart print, it may not show.

I think we should clarify that is your board able to get flashed with pure jetpack? I mean nothing gets cloned from another board.

hi @WayneWWW,

The new boards can be flasghed with SDK and JP 4.5.1. and they work fine.

Are you asking to apply the following procedure:

  • getting an NVidia factory provided TX2 unit
  • flash it with SDK - JP 4.5.1 (this operation supposed to populate all partitions)
  • flash it with the image obtained from the original TX2 (this operation supposed to populate only the rootfs partition)
    Correct?

I just want to clarify does this issue only happen when you clone the image from another TX2 or even using original jetpack release to flash can also hit this issue or not.

As I wrote I have successfully JetPacked 4.5.1 from the SDK on a ubuntu host to a newly (NVidia factory) provided TX2 which is assembled on our custom board. This means that the custom board with the TX2 are OK.

Oh ok. Then the next thing to do is figure out which kernel panic do you hit.

You can try to add console=none keep_bootcon to your kernel command line and it will print out the rest of log.

Below one is put under board config file.
+CMDLINE_ADD=“fbcon=map:0 net.ifnames=0 rootfstype=ext4 console=none keep_bootcon”;

Just want to make sure that we’re on the same page:
On the ubuntu running host I edit the file /home/nvidia/HWImage/JetPack_4.5.1_Linux_JETSON_TX2/Linux_for_Tegra/jetson-tx2.conf and add at the end of the file the above mentioned line:

CMDLINE_ADD=“fbcon=map:0 net.ifnames=0 rootfstype=ext4 console=none keep_bootcon”;

and then I should flash the image again, and verify the log provided by the flashed unit upon boot.
correct?

I am not sure about the exact procedure to be done here since clone is getting involved.

Actually, I don’t care how you make it. The final result should be you need to see “console=none” and “keep_bootcon” shows up in your kernel command line. dmsg will show that.

I guess the process should require two flash process

  1. You flash both jetson TX2, first one on devkit while another one on your custom board. And you shall see both side have this console setting.

  2. Clone the image from devkit case to your custom board with the command you used. Boot up the device and make sure the kernel command line still has these properties. And you shall see the full log.

I do not have a devkit in my possesion, thus I cannot apply exactly what you request.

Though I was thinking that the following line is currently depicted while the unit boots, after Starting kernel …:

[ 0.000000] Kernel command line: console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x140000@0x96081000 lut_mem2=0x2008@0x9607e000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1

and actually your request is that the console will be output to none and the flag keep_bootcon will be added.
I guess that I could do it by the following procedure:

  • modify the /boot/extlinux/extlinux.conf on my original TX2
  • clone it (prepare/read the image)
  • write the image to another TX2 unit.
    Does it make sense?

I remember extlinux cannot set console status. Only flash can take effect.

@WayneWWW, hi,

it is great that Nvidia keeps track of all issues raised, per your reply TX2i can not boot on custom carrier board, but TX2 is ok. What's the difference between them? - #11 by WayneWWW
I shall modify the file
/home/nvidia/HWImage/JetPack_4.5.1_Linux_JETSON_TX2/Linux_for_Tegra/p2771-0000.conf.common:
modifying

ROOTFSSIZE=28GiB;
CMDLINE_ADD=“console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2”;
CMDLINE_ADD=“fbcon=map:0 net.ifnames=0 rootfstype=ext4 console=none keep_bootcon”;
target_board=“t186ref”;

Note: I do not know what isolcpus=1-2 does so I just add a new line and not replace the previous CMDLINE_ADD

Regards.

@WayneWWW, hi,

I have applied the changes to both:

  • on host p2771-0000.conf.common - no change in the boot command line
  • on unit to the /boot/extlinux/extlinux.conf file - no change in the boot command line

BTW, I have a backup image on the flashed unit, that is when the unit boots I can select another image to boot from (a backup image stored on the /boot directory) in this case the unit boots OK. This means that all other partitions are good while the kernel image is defected for some reason. The original unit boots OK, so the process of reading the image from this unit is not working OK.

I keep on searching what should I change in order to add the keep_bootcon to the boot command line. Now I’m going to replace the lines as following:

ROOTFSSIZE=28GiB;
# CMDLINE_ADD=“console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2”;
CMDLINE_ADD=“fbcon=map:0 net.ifnames=0 rootfstype=ext4 console=none keep_bootcon”;
target_board=“t186ref”;

Not quite sure what you tried to say here.

on host p2771-0000.conf.common - no change in the boot command line
on unit to the /boot/extlinux/extlinux.conf file - no change in the boot command line

If you are trying to say the kernel command line are not showing up…
I think you should share how you flashed the board and the boot up log so that other people can find out why something can work/cannot work…

BTW, I have a backup image on the flashed unit, that is when the unit boots I can select another image to boot from (a backup image stored on the /boot directory) in this case the unit boots OK. This means that all other partitions are good while the kernel image is defected for some reason. The original unit boots OK, so the process of reading the image from this unit is not working OK.

If the kernel image might be the cause of your issue, why not you just copy /boot/Image from your cloned board and to your custom board to verify your assumption?

@WayneWWW,

you’ve asked me to modify the boot command line, not stating how so I’m depicting the ways that I try to modify it:

  • modifying on host the file p2771-0000.conf.common
  • /boot/extlinux/extlinux.conf file
    in both cases during boot the serial terminal continue to display the same line

append: console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 isolcpus=1-2 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x140000@0x96081000 lut_mem2=0x2008@0x9607e000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1
Retrieving file: /boot/tegra186-quill-p3310-1000-c03-00-base.dtb

cannot see there the console=none keep_bootcon
The flashing operation was not changed during the whole discussion it is detailed here TX2 not booting after successful flashing :

sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1

I shall copy the image from my cloned unit to the cusotm, and keep the discussion posted.

BTW, during my searches where I can modify the boot command line to take affect, I found that the following flag sdhci_tegra.en_boot_part_access is only depicted in the flash.sh file for the Nano type:

>elif [ "${target_rootdev}" = "cloning_root" ]; then
	if [ "${tegraid}" = "0x21" ]; then
		# Nano
		CMDLINE_ADD="console=ttyS0,115200n8 sdhci_tegra.en_boot_part_access=1";
	elif [ "${tegraid}" = "0x18" ]; then
		# TX2
		CMDLINE_ADD="console=ttyS0,115200n8";
	elif [ "${tegraid}" = "0x19" ]; then
		# Xavier
		CMDLINE_ADD="console=ttyTCU0,115200n8";
	else
		echo "Unknown tegraid/board,exiting..";
		exit 1
	fi;

I’ve never used nano neither in the SDK nor on the unit, could you guess whats going on?

Regards.

Hi,

Just do the full flash first to see if it can take effect. Step 1 in my previous comment is full flash. Which means no -r -k APP in your command.

If you think flash.sh overwrites your setting again, then change that under 0x18 case for TX2.

So, should I read the image the same way (without -r -k APP):
read:

sudo ./flash.sh -G backup.img jetson-tx2 mmcblk0p1
sudo cp backup.img.raw bootloader/system.img

write:

sudo ./flash.sh jetson-tx2 mmcblk0p1

correct?

Regarding the settings:
I am not saying that flash.sh overwrites, all I say is, that the flag sdhci_tegra.en_boot_part_access is depicted in the flash script when programming a Nano type device.

The clone command is always same. Just do the full flash and make sure the kernel command line has the correct console setting we need for debug…

I am not saying that flash.sh overwrites, all I say is, that the flag sdhci_tegra.en_boot_part_access is depicted in the flash script when programming a Nano type device.

Not sure why you mentioned this. This is not related to your issue at all. What I am trying to ask you to do now is just one thing.
“Add that console setting and then reproduce the error again”. With such console setting, more log should get printed after “bootconsole [uart8250] disabled”.

I have activated the command to flash the unit with the image file on the host:

sudo ./flash.sh jetson-tx2 mmcblk0p1

and it started to overwrite the file bootloader/system.img. Makes sense?