flash.sh -k EBT jetson-tx1 mmcblk0p1 and then TX1 can't bootup

My TX1 can not bootup after I use flash.sh to upgrade just uboot whose BINs is from the jetpack and has no modification. What’s more, the original system is all right.The serial log hang at “Starting kernel …”.The version information is as follow:
1.[TegraBoot] (version 00.00.2014.50-mobile-d44d4bf0)
2.U-Boot 2015.07-rc2-g78c8468 (Nov 09 2016 - 19:39:36 -0800)

The whole serial log is as follow:
[0000.170] [TegraBoot] (version 00.00.2014.50-mobile-d44d4bf0)
[0000.176] Processing in cold boot mode Bootloader 2
[0000.180] A02 Bootrom Patch rev = 63
[0000.184] Power-up reason: on button
[0000.187] No Battery Present
[0000.190] RamCode = 0
[0000.192] Platform has Ddr4 type ram
[0000.195] max77620 disabling SD1 Remote Sense
[0000.199] Setting Ddr voltage to 1125mv
[0000.203] Serial Number of Pmic Max77663: 0x70cb1
[0000.211] Entering ramdump check
[0000.214] Get RamDumpCarveOut = 0xff23f000
[0000.218] RamDumpCarveOut=0xff23f000, RamDumperFlag=0xffffffff
[0000.224] Last reboot was clean, booting normally!
[0000.228] Sdram initialization is successful
[0000.233] SecureOs Carveout Base=0xff800000 Size=0x00800000
[0000.238] GSC1 Carveout Base=0xff700000 Size=0x00100000
[0000.243] GSC2 Carveout Base=0xff600000 Size=0x00100000
[0000.248] GSC3 Carveout Base=0xff500000 Size=0x00100000
[0000.253] GSC4 Carveout Base=0xff400000 Size=0x00100000
[0000.259] GSC5 Carveout Base=0xff300000 Size=0x00100000
[0000.264] BpmpFw Carveout Base=0xff2c0000 Size=0x00040000
[0000.269] Lp0 Carveout Base=0xff2bf000 Size=0x00001000
[0000.284] RamDump Carveout Base=0xff23f000 Size=0x00080000
[0000.290] Platform-DebugCarveout: 0
[0000.293] Nck Carveout Base=0xff03f000 Size=0x00200000
[0000.298] Non secure mode, and RB not enabled.
[0000.348] Using GPT Primary to query partitions
[0000.353] Loading Tboot-CPU binary
[0000.402] Verifying bootloader in OdmNonSecureSBK mode
[0000.412] Bootloader load address is 0xa0000000, entry address is 0xa0000258
[0000.419] Bootloader downloaded successfully.
[0000.423] Downloaded Tboot-CPU binary to 0xa0000258
[0000.428] MAX77620_GPIO1 Configured.
[0000.432] MAX77620_GPIO5 Configured.
[0000.435] CPU power rail is up
[0000.438] CPU clock enabled
[0000.442] Performing RAM repair
[0000.445] Updating A64 Warmreset Address to 0xa00002e9
[0000.473] Bootloader DTB Load Address: 0x83000000
[0000.501] Kernel DTB Load Address: 0x83100000
[0000.506] Loading cboot binary
[0000.600] Verifying bootloader in OdmNonSecureSBK mode
[0000.694] Bootloader load address is 0x8010fda8, entry address is 0x80110000
[0000.701] Bootloader downloaded successfully.
[0000.706] GPT: Partition NOT found !
[0000.709] Find Partition via GPT Failed
[0000.713] Find Partition via PT Failed
[0000.716] function NvTbootGetBinaryOffsets: 0x1 error
[0000.721] Error in NvTbootLoadBinary: 0x1 !
[0000.725] Next binary entry address: 0x80110000
[0000.729] BoardId: 2180
[0000.734] dram memory type is 3
[0000.738] WB0 init successful
[0000.764] Bpmp FW successfully loaded
[0000.768] Set NvDecSticky Bits
[0000.771] GSC1 address : ff700000
[0000.775] GSC2 address ff63fffc value c0edbbcc
[0000.779] GSC2 address : ff600000
[0000.783] GSC3 address : ff500000
[0000.787] GSC4 address : ff400000
[0000.790] GSC5 address : ff300000
[0000.794] GSC MC Settings done
[0000.797] TOS plaintext Image length 28752
[0000.801] Monitor size 28752
[0000.804] OS size 0
[0000.807] *** Secure OS image signature not verified ***
[0000.812] Loading and Validation of Secure OS Successful
[0000.817] NvTbootPackSdramParams: start.
[0000.822] NvTbootPackSdramParams: done.
[0000.826] Tegraboot started after 149850 us
[0000.830] Basic modules init took 311533 us
[0000.834] Sec Bootdevice Read Time = 216 ms, Read Size = 9476 KB
[0000.840] Sec Bootdevice Write Time = -1940251271 ms, Write Size = -68719477 KB
[0000.847] Next stage binary read took 23830 us
[0000.851] Carveout took 264558 us
[0000.855] CPU initialization took 96731 us
[0000.859] Total time taken by TegraBoot 696652 us

[0000.863] Starting CPU & Halting co-processor

64NOTICE: BL31: v1.2(release):cc5fd7c
NOTICE: BL31: Built : 15:40:35, May 12 2017
NOTICE: Trusty image missing.
ERROR: Error initializing runtime service trusty_fast
[0001.002] RamCode = 0
[0001.023] LPDDR4 Training: Read DT: Number of tables = 10
[0001.028] EMC Training (SRC-freq: 204000; DST-freq: 40800)
[0001.033] EMC Training Skipped
[0001.036] EMC Training (SRC-freq: 204000; DST-freq: 68000)
[0001.041] EMC Training Skipped
[0001.044] EMC Training (SRC-freq: 204000; DST-freq: 102000)
[0001.049] EMC Training Skipped
[0001.052] EMC Training (SRC-freq: 204000; DST-freq: 204000)
[0001.057] EMC Training Skipped
[0001.060] EMC Training (SRC-freq: 204000; DST-freq: 408000)
[0001.066] EMC Training Successful
[0001.069] EMC Training (SRC-freq: 204000; DST-freq: 665600)
[0001.075] EMC Training Successful
[0001.078] EMC Training (SRC-freq: 204000; DST-freq: 800000)
[0001.090] EMC Training Successful
[0001.093] EMC Training (SRC-freq: 204000; DST-freq: 1065600)
[0001.115] EMC Training Successful
[0001.118] EMC Training (SRC-freq: 204000; DST-freq: 1331200)
[0001.140] EMC Training Successful
[0001.143] EMC Training (SRC-freq: 204000; DST-freq: 1600000)
[0001.163] EMC Training Successful
[0001.166] Switching to 800000 KHz Success
[0001.175] RamCode = 0
[0001.179] DT Write: emc-table@40800 succeeded
[0001.185] DT Write: emc-table@68000 succeeded
[0001.191] DT Write: emc-table@102000 succeeded
[0001.198] DT Write: emc-table@204000 succeeded
[0001.204] DT Write: emc-table@408000 succeeded
[0001.210] DT Write: emc-table@665600 succeeded
[0001.216] DT Write: emc-table@800000 succeeded
[0001.222] DT Write: emc-table@1065600 succeeded
[0001.228] DT Write: emc-table@1331200 succeeded
[0001.234] DT Write: emc-table@1600000 succeeded
[0001.238] LPDDR4 Training: Write DT: Number of tables = 10

U-Boot 2015.07-rc2-g78c8468 (Nov 09 2016 - 19:39:36 -0800)

Model: NVIDIA P2371-2180
MC: Tegra SD/MMC: 0, Tegra SD/MMC: 1
*** Warning - bad CRC, using default environment

tegra-pcie: PCI regions:
tegra-pcie: I/O: 0x0000000012000000-0x0000000012010000
tegra-pcie: non-prefetchable memory: 0x0000000013000000-0x0000000020000000
tegra-pcie: prefetchable memory: 0x0000000020000000-0x0000000040000000
tegra-pcie: 4x1, 1x1 configuration
tegra-pcie: probing port 0, using 4 lanes
tegra-pcie: link 0 down, retrying
tegra-pcie: link 0 down, retrying
tegra-pcie: link 0 down, retrying
tegra-pcie: link 0 down, ignoring
tegra-pcie: probing port 1, using 1 lanes
tegra-pcie: link 1 down, retrying
tegra-pcie: link 1 down, retrying
tegra-pcie: link 1 down, retrying
tegra-pcie: link 1 down, ignoring
In: serial
Out: serial
Err: serial
Net: No ethernet found.
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
223 bytes read in 86 ms (2 KiB/s)
p2371-2180 eMMC boot options
1: primary kernel
Enter choice: 1: primary kernel
Retrieving file: /boot/initrd
0 bytes read in 47 ms (0 Bytes/s)
Retrieving file: /boot/Image
20794168 bytes read in 527 ms (37.6 MiB/s)
append: root=/dev/mmcblk0p1 rw rootwait

Starting kernel …
******************************************************************log end
Please help me to solve this problem,I can’t reflash the whole system,because a lot of codes is there on my TX1 board and I need them.

hello lianghu,

may i have more details about your environment?

  1. what’s your JetPack version.

whose BINs is from the jetpack and has no modification

  1. which file did you used?

Jetpack version is 3.0.
The four upgrade BINs(u-boot,u-boot.bin,u-boot.dtb and u-boot-dtb.bin) are in 64_TX1/Linux_for_Tegra_64_tx1/bootloader/t210ref/p2371-2180

The version of uboot seems the same as the other board which can normally bootup.

Actually,I just want to check if flash.sh can rightly flash just uboot.So,I run “sudo ./flash.sh –k EBT jetson-tx1 mmcblk0p1” and then …

hello lianghu,

we had try to flash the EBT partition and it works normally.
since EBT command flash the u-boot-dtb.bin, could you please replace it only for another trying.

<partition name="EBT" id="8" type="bootloader">
            <allocation_policy> sequential </allocation_policy>
            <filesystem_type> basic </filesystem_type>
            <size> 4194304 </size>
            <file_system_attribute> 0 </file_system_attribute>
            <allocation_attribute> 8 </allocation_attribute>
            <percent_reserved> 0 </percent_reserved>
            <filename> u-boot-dtb.bin </filename>

Hi Jerry,
I tried to flash the EBT partition of another board in the same way and it can bootup normally.I compare the serial logs during bootup,and I find :
1.kernel cmd line is different
normal log is :
append: fbcon=map:0 console=tty0 console=ttyS0,115200n8 androidboot.modem=none androidboot.serialno=P2180A00P00940c003fd androidboot.security=non-secure tegraid= ddr_die=2048M@2048M ddr_die=2048M@4096M section=256M memtype=0 usb_port_owner_info=0 lane_owner_info=0 emc_max_dvfs=0 touch_id=0@63 video=tegrafb no_console_suspend=1 debug_uartport=lsport,0 earlyprintk=uart8250-32bit,0x70006000 maxcpus=4 usbcore.old_scheme_first=1 lp0_vec=0x1000@0xff2bf000 nvdumper_reserved=0xff23f000 core_edp_mv=1125 core_edp_ma=4000 gpt android.kerneltype=normal androidboot.touch_vendor_id=0 androidboot.touch_panel_id=63 androidboot.touch_feature=0 androidboot.bootreason=pmc:software_reset,pmic:0x0 net.ifnames=0 root=/dev/mmcblk0p1 rw rootwait
Retrieving file: /boot/tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb
423986 bytes read in 315 ms (1.3 MiB/s)

Flattened Device Tree blob at 82000000

Booting using the fdt blob at 0x82000000
reserving fdt memory region: addr=80000000 size=20000
Using Device Tree in place at 0000000082000000, end 000000008206a831

Starting kernel …

fail log is :append: root=/dev/mmcblk0p1 rw rootwait

Starting kernel …

2.version of tegraboot is different;
normal log is:[TegraBoot] (version 24.00.2015.42-mobile-ec3b827e)
fail log is:[TegraBoot] (version 00.00.2014.50-mobile-d44d4bf0)

It seems a lot of kernel cmd lines missed and this caused the fail.I don’t know why the cmd line missed.
Is there any method which can make this TX1 board bootup without destroying the user data?

As we discussed above,the reason for which TX1 can not bootup is that the size of initrd in /boot is 0.I want to copy a normal initrd to /boot from Udisk with UBOOT cmd such as fatload ,ext4write and so on.However,it can not find Udisk in Uboot when I use these cmds such as “usb start” and "usb dev"etc.

So,if there is some configs for using Udisk in uboot?

please help me.Thanks very much.

hello lianghu,

since we had release JetPack 3.1 recently.
could you please take a verification on it, thanks

Following up in https://devtalk.nvidia.com/default/topic/1020778/jetson-tx1/jetpack-3-1-falsh-sh-k-ebt-jetson-tx1-mmcblk0p1-/