JetPack 4.3 TX2 Boot from SATA SSD

Hi,

I’m upgrading to JP4.3. As per when I moved to JP4.2 I’m trying to use my 1TB SSD as the root drive.

I have tried as per https://devtalk.nvidia.com/default/topic/1060950/jetson-tx2/how-can-we-flash-everything-apart-bootloader-to-extern-sdcard-on-tx2-like-jetson-nano-with-no-intern-/post/5373638/#5373638

When I finish the 5 steps and boot the TX2 I see the NVIDIA image on the screen, then the boot sequence fails showing the errors as shown on the image below.

Might be missing the correct mount point? My drive is partitioned correctly and is at /dev/sda1.

Any thoughts?

Thank you,
Ben

Somehow I cannot see your image. Please share the error you hit from uart log instead of a picture.

Hi @WayneWWW,

I wasn’t sure if the image posted or not. Any idea how to get that to work?

How do I get that uart log? I’d have to replicate the issue again. I’ve just re-flashed.

Thanks,
Ben

Please check

Hi @WayneWWW,

[b]Sorry for the delay. I got GtkTerm connecteds while I tried to boot my TX2 from a 1TB SATA SSD.

I flashed it as per Carolyuu’s instructions[/b]

1). Create GPT and partition using gdisk on the external device
2). Get the UUID for the partition on the external device. For example, if the device partition is /dev/sda1, then execute ...
$ sudo blkid /dev/sda1
/dev/sda1: UUID="93A6-26BA" TYPE="vfat" PARTLABEL="Linux filesystem" PARTUUID="018eff62-2d07-4ca5-8619-c30c18b0a181"
3). Write the PARTUUID shown from the previous command to the following file ...
echo '018eff62-2d07-4ca5-8619-c30c18b0a181' > bootloader/l4t-rootfs-uuid.txt
4). Copy the rootfs folder to your sdcard (/dev/sda1)
5). Flash the board: (external is for sdcard, usb and sata)
$ sudo ./flash.sh jetson-tx2 external

That didn’t work. I tried editing on the emmc /boot/extlinux/extlinux.conf. I edited a line to look like this:

APPEND ${cbootargs} root=UUID=bb1e0ba5-e3b6-46d3-b4ce-dd9c75632ba4 rootwait rootfstype=ext4

That has also failed. The TX2 starts to boot, I see the NVIDIA emblem then a few lines of text and it tries to reboot.

Please find below the output of GtkTerm when I try to boot. I really hope it helps!

[0003.396] I> decompressor handler not found
[0003.400] I> Copying kernel image (477882 bytes) from 0x80400800 to 0x80800000 … [0003.408] I> Done
[0003.409] I> Move ramdisk (len: 0) from 0x80475800 to 0x94830000
[0003.417] I> Updated bpmp info to DTB
[0003.422] I> Ramdisk: Base: 0x94830000; Size: 0x0
[0003.427] I> Updated initrd info to DTB
[0003.431] W> WARN: Fail to override “console=none” in commandline
[0003.437] E> tegrabl_linuxboot_add_disp_param, du 1 failed to get display params
[0003.444] E> tegrabl_linuxboot_add_disp_param, du 1 failed to get display params
[0003.451] I> disabled_core_mask: 0xffffff0c
[0003.455] W> No valid slot number is found in scratch register
[0003.461] W> Return default slot: _a
[0003.464] I> Active slot suffix:
[0003.467] I> add_boot_slot_suffix: slot_suffix =
[0003.472] I> Linux Cmdline: root=PARTUUID=bb1e0ba5-e3b6-46d3-b4ce-dd9c75632ba4 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt tegra_fbmem2=0x800000@0x9607d000 lut_mem2=0x2008@0x9607a000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1
[0003.516] I> Updated bootarg info to DTB
[0003.520] I> eeprom_get_mac_addr: MAC (type: 0): 00:04:4b:a8:39:fa
[0003.526] I> eeprom_get_mac_addr: MAC (type: 1): 00:04:4b:a8:39:fb
[0003.532] I> eeprom_get_mac_addr: MAC (type: 2): 00:04:4b:a8:39:fc
[0003.539] E> Found no plugin manager ids in source DT
[0003.544] W> Add plugin manager ids from board info
[0003.548] E> “plugin-manager” doesn’t exist, creating
[0003.553] E> “ids” doesn’t exist, creating
[0003.557] E> “connection” doesn’t exist, creating
[0003.562] E> “configs” doesn’t exist, creating
[0003.566] I> create_pm_ids: id: 3310-1000-B02-D, len: 15
[0003.571] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00, len: 93
[0003.582] I> create_pm_ids: id: 2597-0000-501-C, len: 15
[0003.587] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00, len: 93
[0003.598] I> Adding plugin-manager/ids/3310-1000-B02=/i2c@c250000:module@0x50
[0003.605] E> “i2c@c250000” doesn’t exist, creating
[0003.610] E> “module@0x50” doesn’t exist, creating
[0003.615] I> Adding plugin-manager/ids/2597-0000-501=/i2c@c250000:module@0x57
[0003.622] E> “module@0x57” doesn’t exist, creating
[0003.629] I> Adding plugin-manager/ids/3310-1000-B02-D
[0003.636] I> Adding plugin-manager/configs/3310-mem-type 00
[0003.642] I> Adding plugin-manager/configs/3310-power-config 00
[0003.648] I> Adding plugin-manager/configs/3310-misc-config 00
[0003.654] I> Adding plugin-manager/configs/3310-modem-config 00
[0003.660] I> Adding plugin-manager/configs/3310-touch-config 00
[0003.666] I> Adding plugin-manager/configs/3310-display-config 00
[0003.672] I> Adding plugin-manager/cvm
[0003.676] E> “chip-id” doesn’t exist, creating
[0003.680] I> Adding plugin-manager/chip-id/A02P
[0003.684] E> “odm-data” doesn’t exist, creating
[0003.689] I> Adding /chosen/plugin-manager/odm-data
[0003.699] I> added [base:0x80000000, size:0x70000000] to /memory
[0003.705] I> added [base:0xf0200000, size:0x185600000] to /memory
[0003.711] I> added [base:0x275e00000, size:0x200000] to /memory
[0003.716] I> added [base:0x276600000, size:0x200000] to /memory
[0003.722] I> added [base:0x277000000, size:0x200000] to /memory
[0003.728] I> Updated memory info to DTB
[0003.732] E> add_disp_param: failed to get display params for du=1
[0003.740] E> “reset” doesn’t exist, creating
[0003.744] E> “pmc-reset-reason” doesn’t exist, creating
[0003.750] E> “pmic-reset-reason” doesn’t exist, creating
[0003.756] I> Adding ecid(00000001644036470c00000009028300) to DT
[0003.762] I> disabled_core_mask: 0xffffff0c
[0003.775] I> Add serial number:0320418051236 as DT property
[0003.784] I> Plugin-manager override starting
[0003.790] I> node /plugin-manager/fragement@0 matches
[0003.800] I> node /plugin-manager/fragement@4 matches
[0003.813] I> node /plugin-manager/fragment-sdwake-p3310-1000-300 matches
[0003.834] I> node /plugin-manager/fragement-pmon-p3310-1000-300 matches
[0003.843] I> node /plugin-manager/fragement-pmon-p3310-1000-800 matches
[0003.852] I> node /plugin-manager/fragment-devslp@0 matches
[0003.864] I> node /plugin-manager/fragment-500-pcie-config matches
[0003.879] I> node /plugin-manager/fragment-500-xusb-config matches
[0003.902] I> node /plugin-manager/fragment-p3310-c00-comm matches
[0003.915] I> node /plugin-manager/fragment-p3310-c00-pmic matches
[0003.926] I> node /plugin-manager/fragment-p3310-c01 matches
[0003.939] I> node /plugin-manager/fragment-p3310-c03 matches
[0003.977] I> node /plugin-manager/fragment-p3310-c00-camera matches
[0004.004] I> Disable plugin-manager status in FDT
[0004.008] I> Plugin-manager override finished successfully
[0004.014] I> tegrabl_load_kernel_and_dtb: Done
[0004.057] I> Kernel EP: 0x80800000, DTB: 0x80000000

U-Boot 2016.07-g0536cf2a27 (Dec 09 2019 - 22:43:10 -0800)

TEGRA186
Model: NVIDIA P2771-0000-500
DRAM: 7.8 GiB
MC: Tegra SD/MMC: 0, Tegra SD/MMC: 1
*** Warning - bad CRC, using default environment

In: serial
Out: serial
Err: serial
Net: eth0: ethernet@2490000
Hit any key to stop autoboot: 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
733 bytes read in 68 ms (9.8 KiB/s)
1: primary kernel
Retrieving file: /boot/initrd
5565140 bytes read in 187 ms (28.4 MiB/s)
Retrieving file: /boot/Image
34191368 bytes read in 858 ms (38 MiB/s)
append: root=PARTUUID=bb1e0ba5-e3b6-46d3-b4ce-dd9c75632ba4 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt tegra_fbmem2=0x800000@0x9607d000 lut_mem2=0x2008@0x9607a000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 quiet

Flattened Device Tree blob at 80000000

Booting using the fdt blob at 0x80000000
reserving fdt memory region: addr=80000000 size=10000
Using Device Tree in place at 0000000080000000, end 000000008005f9d7

Starting kernel …

[ 0.000000] Booting Linux on physical CPU 0x100
[ 0.000000] Linux version 4.9.140-tegra (buildbrain@mobile-u64-1935) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #1 SMP PREEMPT Mon Dec 9 22:52:02 PST 2019
[ 0.000000] Boot CPU: AArch64 Processor [411fd073]
[ 0.000000] OF: fdt:memory scan node memory@80000000, reg size 16416,
[ 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: 00800000@9607d000
[ 0.000000] Found lut_mem2: 00002008@9607a000

[ 4.275596] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00
[ 4.275596]
[ 4.284899] CPU: 2 PID: 1 Comm: chroot Not tainted 4.9.140-tegra #1
[ 4.291250] Hardware name: quill (DT)
[ 4.294963] Call trace:
[ 4.297485] [] dump_backtrace+0x0/0x198
[ 4.302948] [] show_stack+0x24/0x30
[ 4.308056] [] dump_stack+0x98/0xc0
[ 4.313160] [] panic+0x11c/0x298
[ 4.318011] [] do_exit+0xa04/0xa08
[ 4.323031] [] do_group_exit+0x40/0xa8
[ 4.328399] [] __wake_up_parent+0x0/0x40
[ 4.333941] [] el0_svc_naked+0x34/0x38
[ 4.339312] SMP: stopping secondary CPUs
[ 4.343289] Kernel Offset: disabled
[ 4.346827] Memory Limit: none
[ 4.349920] trusty-log panic notifier - trusty version Built: 22:43:54 Dec 9 2019 [ 4.365785] Rebooting in 5 seconds…

Thanks so much for any help!

Hi @WayneWWW

Never mind and my apologies for being a dopey bastard.

When I copied the rootfs directory, I copied that directory to the root of the external drive. I fixed that and it’s a goer. At least I learnt how to hook up a serial console!

Thanks
Ben