You may see rel-28.4 fail to flash either
I do see this fail to flash as well.
Actually PCN204840 should be already existed since 2018/7 so rel-32.3.1 and rel-32.4.3 both have this change.
Understood, I was trying to understand the difference between rev B and rev D SOM from a hardware perspective.
Have you tried to replace this file only (not whole bootloader) to rel-32.4.3 and see if it can work?
I just tried:
cd JetPack_4.4_Linux_JETSON_TX2/Linux_for_Tegra
cp ../../JetPack_4.3_Linux_JETSON_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg bootloader/t186ref/BCT/P3310_A00_8GB_lpddr4_A02_l4t.cfg
sudo ./flash.sh jetson-tx2-devkit mmcblk0p1
It failed/hung up at the same place:
[ 8.1919 ] tegrahost_v2 --chip 0x18 --generateblob blob.xml blob.bin
[ 8.1939 ] number of images in blob are 9
[ 8.1947 ] blobsize is 4335416
[ 8.1950 ] Added binary blob_nvtboot_recovery_cpu_sigheader.bin.encrypt of size 221312
[ 8.2006 ] Added binary blob_nvtboot_recovery_sigheader.bin.encrypt of size 90016
[ 8.2020 ] Added binary blob_preboot_d15_prod_cr_sigheader.bin.encrypt of size 63104
[ 8.2036 ] Added binary blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt of size 2082144
[ 8.2051 ] Added binary blob_bpmp_sigheader.bin.encrypt of size 533904
[ 8.2068 ] Added binary blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt of size 605120
[ 8.2092 ] Added binary blob_tos-trusty_sigheader.img.encrypt of size 366400
[ 8.2106 ] Added binary blob_eks_sigheader.img.encrypt of size 1440
[ 8.2116 ] Added binary blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt of size 371824
[ 8.2171 ]
[ 8.2172 ] Sending bootloader and pre-requisite binaries
[ 8.2197 ] tegrarcm_v2 --download blob blob.bin
[ 8.2217 ] Applet version 01.00.0000
[ 8.2424 ] Sending blob
[ 8.2427 ] [................................................] 100%
[ 8.7538 ]
[ 8.7585 ] tegrarcm_v2 --boot recovery
[ 8.7624 ] Applet version 01.00.0000
[ 8.7846 ]
[ 9.7949 ] tegrarcm_v2 --isapplet
However the serial port prints look different:
NOTICE: BL31: v1.3(release):41d46a9cf
NOTICE: BL31: Built : 21:14:44, Jun 25 2020
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: 182: key_mgnt_processing .......
hwkey-agent: 157: Init hweky-agent services!!
platform_bootstrap_epilog: trusty bootstrap complete
You can also replace the bpmp-dtb file (tegra186-bpmp-quill-p3310-1000-a00-00.dtb). Because pcn 206440 also has change in this file.
Starting with the bootloader directory above with modified P3310_A00_8GB_lpddr4_A02_l4t.cfg I tried:
cp ../../JetPack_4.3_Linux_JETSON_TX2/Linux_for_Tegra/bootloader/t186ref/tegra186-a02-bpmp-quill-p3310-1000-a00-00.dtb bootloader/t186ref/
sudo ./flash.sh jetson-tx2-devkit mmcblk0p1
This also fails at
[ 8.1852 ] Added binary blob_nvtboot_recovery_cpu_sigheader.bin.encrypt of size 221312
[ 8.1914 ] Added binary blob_nvtboot_recovery_sigheader.bin.encrypt of size 90016
[ 8.1930 ] Added binary blob_preboot_d15_prod_cr_sigheader.bin.encrypt of size 63104
[ 8.1942 ] Added binary blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt of size 2082144
[ 8.1957 ] Added binary blob_bpmp_sigheader.bin.encrypt of size 533904
[ 8.1973 ] Added binary blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt of size 605120
[ 8.1996 ] Added binary blob_tos-trusty_sigheader.img.encrypt of size 366400
[ 8.2007 ] Added binary blob_eks_sigheader.img.encrypt of size 1440
[ 8.2017 ] Added binary blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt of size 371824
[ 8.2073 ]
[ 8.2074 ] Sending bootloader and pre-requisite binaries
[ 8.2099 ] tegrarcm_v2 --download blob blob.bin
[ 8.2118 ] Applet version 01.00.0000
[ 8.2312 ] Sending blob
[ 8.2316 ] [................................................] 100%
[ 8.7317 ]
[ 8.7358 ] tegrarcm_v2 --boot recovery
[ 8.7395 ] Applet version 01.00.0000
[ 8.7598 ]
[ 9.7704 ] tegrarcm_v2 --isapplet
with a similar serial port message above:
[0142.160] I> Welcome to MB2(TBoot-BPMP) Recovery(version: 01.00.160913-t186-M-00.00-mobile-82dac681)
[0142.169] I> bit @ 0xd480000
[0142.172] I> Boot-device: eMMC
[0142.294] I> sdmmc DDR50 mode
[0142.299] I> sdmmc bdev is already initialized
[0142.304] I> pmic: reset reason (nverc) : 0x50
[0142.310] I> Found 18 partitions in SDMMC_BOOT (instance 3)
[0142.318] I> Found 33 partitions in SDMMC_USER (instance 3)
[0142.326] I> Binary(16) of size 533504 is loaded @ 0xd7800000
[0142.335] I> Binary(17) of size 604720 is loaded @ 0xd796c5c0
[0142.565] I> Copy BTCM section
[0142.570] I> Binary(13) of size 220912 is loaded @ 0x96000000
[0142.577] I> Binary(20) of size 371424 is loaded @ 0x8520f400
[0142.585] I> Binary(14) of size 366000 is loaded @ 0x8530f600
[0142.593] I> TOS boot-params @ 0x85000000
[0142.596] I> TOS params prepared
[0142.600] I> Loading EKS ...
[0142.603] I> Binary(15) of size 1040 is loaded @ 0x8590f800
[0142.608] I> EKB detected (length: 0x400) @ 0x8590f800
[0142.613] I> Copied encrypted keys
[0142.617] I> boot profiler @ 0x275844000
[0142.621] I> boot profiler for TOS @ 0x275844000
[0142.626] I> Unhalting SCE
[0142.628] I> Primary Memory Start:80000000 Size:70000000
[0142.634] I> Extended Memory Start:f0110000 Size:1856f0000
[0142.640] I> MB2(TBoot-BPMP) Recovery done
NOTICE: BL31: v1.3(release):41d46a9cf
NOTICE: BL31: Built : 21:14:44, Jun 25 2020
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: 182: key_mgnt_processing .......
hwkey-agent: 157: Init hweky-agent services!!
platform_bootstrap_epilog: trusty bootstrap complete