How to update only DTB in r28.2

Have you replaced the following dtb with your dtb?
Linux_for_Tegra_64_tx2/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb

hello yahoo2016

I have replaced the following dtb.

kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb

hello r.tanaka,

we had test this command on R28.2/TX2 and confirm its functionality.

please also checking your modification under /proc/device-tree/
please read the sysnode to confirm your changes has updated.
thanks

I built dts and wrote it to TX 2 in the following procedure.

  1. Download the kernel source according to the R28.2 document “[Kernel Customization] → [Manually Downloading and Expanding Kernel Sources]”

  2. Modify the following dts file

    ./hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts

    I tried disabling hdmi.

181         sor1 {
182             status = "okay";
183             hdmi-display {
184                 status = "disabled";
185             };
  1. Build the kernel source according to the R28.2 document “[Kernel Customization] → [Building the NVIDIA Kernel]”

  2. Copy the following files generated by the build to “64_TX2/Linux_for_Tegra/kernel/dtb/” of Jetpack 3.2

outdir/arch/arm64/boot/dts/tegra186-quill-p3310-1000-a00-00-base.dtb
outdir/arch/arm64/boot/dts/tegra186-quill-p3310-1000-c03-00-base.dtb
  1. Write to TX 2 using flash.sh in “64 _ TX 2 / Linux_for_Tegra/”.
$ sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1
###############################################################################
# L4T BSP Information:
# R28 (release), REVISION: 2.0, GCID: 10567845, BOARD: t186ref, EABI: aarch64, 
# DATE: Fri Mar  2 04:57:01 UTC 2018
###############################################################################
# Target Board Information:
# Name: jetson-tx2, Board Family: t186ref, SoC: Tegra 186, 
# OpMode: production, Boot Authentication: , 
###############################################################################
./tegraflash.py --chip 0x18 --applet "/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin" --cmd "dump eeprom boardinfo cvm.bin" --skipuid 
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
 
[   0.0035 ] Generating RCM messages
[   0.0050 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin 0 0
[   0.0063 ] RCM 0 is saved as rcm_0.rcm
[   0.0069 ] RCM 1 is saved as rcm_1.rcm
[   0.0069 ] List of rcm files are saved in rcm_list.xml
[   0.0069 ] 
[   0.0070 ] Signing RCM messages
[   0.0082 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[   0.0093 ] Assuming zero filled SBK key
[   0.0190 ] 
[   0.0190 ] Copying signature to RCM mesages
[   0.0203 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[   0.0220 ] 
[   0.0221 ] Boot Rom communication
[   0.0233 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
[   0.0245 ] RCM version 0X180001
[   0.0258 ] Boot Rom communication completed
[   1.0350 ] 
[   1.0369 ] tegrarcm_v2 --isapplet
[   1.0387 ] Applet version 01.00.0000
[   1.0440 ] 
[   1.0457 ] Retrieving EEPROM data
[   1.0459 ] tegrarcm_v2 --oem platformdetails eeprom cvm /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/cvm.bin
[   1.0475 ] Applet version 01.00.0000
[   1.0523 ] Saved platform info in /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/cvm.bin
[   1.1328 ] 
copying bctfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg)... done.
copying misc_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-misc-si-l4t.cfg)... done.
copying pinmux_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg)... done.
copying pmic_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg)... done.
copying pmc_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg)... done.
copying prod_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg)... done.
copying scr_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/minimal_scr.cfg)... done.
copying scr_cold_boot_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/mobile_scr.cfg)... done.
copying bootrom_config(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg)... done.
copying dev_params(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/BCT/emmc.cfg)... done.
Existing bootloader(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/nvtboot_cpu.bin) reused.
	populating kernel to rootfs... done.
	populating initrd to rootfs... done.
	populating extlinux.conf.emmc to rootfs... done.
	populating /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb to rootfs... done.
done.
Making Boot image... done.
Existing sosfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin) reused.
copying tegraboot(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/nvtboot.bin)... done.
Existing mb2blfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/nvtboot_recovery.bin) reused.
Existing mtspreboot(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/preboot_d15_prod_cr.bin) reused.
Existing mts(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/mce_mts_d15_prod_cr.bin) reused.
Existing mb1file(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/mb1_prod.bin) reused.
Existing bpffile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/bpmp.bin) reused.
copying bpfdtbfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb)... done.
Existing scefile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/camera-rtcpu-sce.bin) reused.
Existing spefile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/spe.bin) reused.
copying wb0boot(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/warmboot.bin)... done.
Existing tosfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/tos.img) reused.
Existing eksfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/eks.img) reused.
copying dtbfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb)... done.
Reusing existing system.img... 
done.
Existing tbcfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/cboot.bin) reused.
copying tbcdtbfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/tegra186-quill-p3310-1000-c03-00-base.dtb)... done.
copying cfgfile(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/t186ref/cfg/flash_l4t_t186.xml) to flash.xml... done.
Existing flasher(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/nvtboot_recovery_cpu.bin) reused.
Existing flashapp(/home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/tegraflash.py) reused.
*** Updating [kernel-dtb] with tegra186-quill-p3310-1000-c03-00-base.dtb ***
./tegraflash.py --bl nvtboot_recovery_cpu.bin  --chip 0x18 --applet mb1_recovery_prod.bin  --cfg flash.xml  --sdram_config P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg --sdram_config P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg --misc_config tegra186-mb1-bct-misc-si-l4t.cfg --pinmux_config tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg --pmic_config tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg --pmc_config tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg --prod_config tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg --scr_config minimal_scr.cfg --scr_cold_boot_config mobile_scr.cfg --br_cmd_config tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg --dev_params emmc.cfg  --cfg  flash.xml --bins "mb2_bootloader nvtboot_recovery.bin; mts_preboot preboot_d15_prod_cr.bin; mts_bootpack mce_mts_d15_prod_cr.bin; bpmp_fw bpmp.bin; bpmp_fw_dtb tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb; tlk tos.img; eks eks.img; bootloader_dtb tegra186-quill-p3310-1000-c03-00-base.dtb"  --cmd "sign; write kernel-dtb ./signed/tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt; reboot"  
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
 
[   0.0146 ] tegrasign_v2 --key None --getmode mode.txt
[   0.0160 ] Assuming zero filled SBK key
[   0.0161 ] 
[   0.0162 ] Generating RCM messages
[   0.0175 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm mb1_recovery_prod.bin 0 0
[   0.0189 ] RCM 0 is saved as rcm_0.rcm
[   0.0196 ] RCM 1 is saved as rcm_1.rcm
[   0.0196 ] List of rcm files are saved in rcm_list.xml
[   0.0196 ] 
[   0.0196 ] Signing RCM messages
[   0.0210 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[   0.0224 ] Assuming zero filled SBK key
[   0.0289 ] 
[   0.0290 ] Copying signature to RCM mesages
[   0.0302 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[   0.0320 ] 
[   0.0320 ] Parsing partition layout
[   0.0332 ] tegraparser_v2 --pt flash.xml.tmp
[   0.0350 ] 
[   0.0350 ] Creating list of images to be signed
[   0.0362 ] tegrahost_v2 --chip 0x18 --partitionlayout flash.xml.bin --list images_list.xml zerosbk
[   0.1229 ] 
[   0.1229 ] Generating signatures
[   0.1244 ] tegrasign_v2 --key None --list images_list.xml --pubkeyhash pub_key.key
[   0.1257 ] Assuming zero filled SBK key
[   0.5022 ] 
[   0.5022 ] Generating br-bct
[   0.5040 ] Updating dev and MSS params in BR BCT
[   0.5041 ] tegrabct_v2 --dev_param emmc.cfg --sdram P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg --brbct br_bct.cfg --chip 0x18
[   0.5341 ] 
[   0.5342 ] Updating bl info
[   0.5359 ] tegrabct_v2 --brbct br_bct_BR.bct --chip 0x18 --updateblinfo flash.xml.bin --updatesig images_list_signed.xml
[   0.5396 ] 
[   0.5396 ] Updating smd info
[   0.5411 ] tegrabct_v2 --brbct br_bct_BR.bct --chip 0x18 --updatesmdinfo flash.xml.bin
[   0.5434 ] 
[   0.5434 ] Get Signed section bct
[   0.5446 ] tegrabct_v2 --brbct br_bct_BR.bct --chip 0x18 --listbct bct_list.xml
[   0.5462 ] 
[   0.5462 ] Signing BCT
[   0.5485 ] tegrasign_v2 --key None --list bct_list.xml --pubkeyhash pub_key.key
[   0.5496 ] Assuming zero filled SBK key
[   0.5500 ] 
[   0.5500 ] Updating BCT with signature
[   0.5514 ] tegrabct_v2 --brbct br_bct_BR.bct --chip 0x18 --updatesig bct_list_signed.xml
[   0.5531 ] 
[   0.5531 ] Generating coldboot mb1-bct
[   0.5544 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_cold_boot_bct.cfg --sdram P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg --misc tegra186-mb1-bct-misc-si-l4t.cfg --scr mobile_scr.cfg --pinmux tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg --pmc tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg --pmic tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg --brcommand tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg --prod tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg
[   0.5557 ] MB1-BCT version: 0xe
[   0.5561 ] Copying Sdram info from 2 to 3 set
[   0.5835 ] Packing sdram param for instance[0]
[   0.5839 ] Packing sdram param for instance[1]
[   0.5842 ] Packing sdram param for instance[2]
[   0.5845 ] Packing sdram param for instance[3]

[   0.5849 ] Parsing config file :tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg 
[   0.5855 ] Appending platform config data of size :- 2904

[   0.5860 ] Parsing config file :mobile_scr.cfg 
[   0.5863 ] Appending platform config data of size :- 12240

[   0.5874 ] Parsing config file :tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg 
[   0.5878 ] Appending platform config data of size :- 24
[   0.5878 ] 
[   0.5878 ] Parsing config file :tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg 
[   0.5878 ] Appending platform config data of size :- 708
[   0.5878 ] 
[   0.5878 ] Parsing config file :tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg 
[   0.5878 ] Appending platform config data of size :- 64
[   0.5878 ] 
[   0.5878 ] Parsing config file :tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg 
[   0.5878 ] Appending platform config data of size :- 1652
[   0.5878 ] 
[   0.5878 ] Updating mb1-bct with firmware information
[   0.5892 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_cold_boot_bct_MB1.bct --updatefwinfo flash.xml.bin
[   0.5905 ] MB1-BCT version: 0xe
[   0.5919 ] 
[   0.5920 ] Updating mb1-bct with storage information
[   0.5936 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_cold_boot_bct_MB1.bct --updatestorageinfo flash.xml.bin
[   0.5951 ] MB1-BCT version: 0xe
[   0.5963 ] 
[   0.5978 ] tegrahost_v2 --align mb1_cold_boot_bct_MB1.bct
[   0.5992 ] 
[   0.6006 ] tegrahost_v2 --appendsigheader mb1_cold_boot_bct_MB1.bct zerosbk
[   0.6020 ] 
[   0.6034 ] tegrasign_v2 --key None --list mb1_cold_boot_bct_MB1_sigheader.bct_list.xml
[   0.6044 ] Assuming zero filled SBK key
[   0.6073 ] 
[   0.6089 ] tegrahost_v2 --updatesigheader mb1_cold_boot_bct_MB1_sigheader.bct.encrypt mb1_cold_boot_bct_MB1_sigheader.bct.hash zerosbk
[   0.6103 ] 
[   0.6104 ] Generating recovery mb1-bct
[   0.6117 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_bct.cfg --sdram P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg --misc tegra186-mb1-bct-misc-si-l4t.cfg --scr minimal_scr.cfg --pinmux tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg --pmc tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg --pmic tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg --brcommand tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg --prod tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg
[   0.6130 ] MB1-BCT version: 0xe
[   0.6134 ] Copying Sdram info from 2 to 3 set
[   0.6417 ] Packing sdram param for instance[0]
[   0.6420 ] Packing sdram param for instance[1]
[   0.6424 ] Packing sdram param for instance[2]
[   0.6427 ] Packing sdram param for instance[3]

[   0.6430 ] Parsing config file :tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg 
[   0.6437 ] Appending platform config data of size :- 2904

[   0.6442 ] Parsing config file :minimal_scr.cfg 
[   0.6445 ] Appending platform config data of size :- 12240

[   0.6456 ] Parsing config file :tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg 
[   0.6459 ] Appending platform config data of size :- 24
[   0.6459 ] 
[   0.6459 ] Parsing config file :tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg 
[   0.6459 ] Appending platform config data of size :- 708
[   0.6459 ] 
[   0.6459 ] Parsing config file :tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg 
[   0.6459 ] Appending platform config data of size :- 64
[   0.6459 ] 
[   0.6460 ] Parsing config file :tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg 
[   0.6460 ] Appending platform config data of size :- 1652
[   0.6460 ] 
[   0.6460 ] Updating mb1-bct with firmware information
[   0.6473 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_bct_MB1.bct --updatefwinfo flash.xml.bin
[   0.6485 ] MB1-BCT version: 0xe
[   0.6494 ] 
[   0.6495 ] Updating mb1-bct with storage information
[   0.6508 ] tegrabct_v2 --chip 0x18 --mb1bct mb1_bct_MB1.bct --updatestorageinfo flash.xml.bin
[   0.6521 ] MB1-BCT version: 0xe
[   0.6533 ] 
[   0.6548 ] tegrahost_v2 --align mb1_bct_MB1.bct
[   0.6563 ] 
[   0.6577 ] tegrahost_v2 --appendsigheader mb1_bct_MB1.bct zerosbk
[   0.6596 ] 
[   0.6616 ] tegrasign_v2 --key None --list mb1_bct_MB1_sigheader.bct_list.xml
[   0.6630 ] Assuming zero filled SBK key
[   0.6669 ] 
[   0.6684 ] tegrahost_v2 --updatesigheader mb1_bct_MB1_sigheader.bct.encrypt mb1_bct_MB1_sigheader.bct.hash zerosbk
[   0.6700 ] 
[   0.6701 ] Copying signatures
[   0.6715 ] tegrahost_v2 --chip 0x18 --partitionlayout flash.xml.bin --updatesig images_list_signed.xml
[   0.8211 ] 
[   0.8228 ] tegrahost_v2 --align nvtboot_recovery.bin
[   0.8240 ] 
[   0.8250 ] tegrahost_v2 --appendsigheader nvtboot_recovery.bin zerosbk
[   0.8264 ] 
[   0.8277 ] tegrasign_v2 --key None --list nvtboot_recovery_sigheader.bin_list.xml
[   0.8288 ] Assuming zero filled SBK key
[   0.8336 ] 
[   0.8350 ] tegrahost_v2 --updatesigheader nvtboot_recovery_sigheader.bin.encrypt nvtboot_recovery_sigheader.bin.hash zerosbk
[   0.8368 ] 
[   0.8380 ] tegrahost_v2 --align preboot_d15_prod_cr.bin
[   0.8391 ] 
[   0.8401 ] tegrahost_v2 --appendsigheader preboot_d15_prod_cr.bin zerosbk
[   0.8418 ] 
[   0.8432 ] tegrasign_v2 --key None --list preboot_d15_prod_cr_sigheader.bin_list.xml
[   0.8443 ] Assuming zero filled SBK key
[   0.8479 ] 
[   0.8498 ] tegrahost_v2 --updatesigheader preboot_d15_prod_cr_sigheader.bin.encrypt preboot_d15_prod_cr_sigheader.bin.hash zerosbk
[   0.8516 ] 
[   0.8529 ] tegrahost_v2 --align mce_mts_d15_prod_cr.bin
[   0.8541 ] 
[   0.8552 ] tegrahost_v2 --appendsigheader mce_mts_d15_prod_cr.bin zerosbk
[   0.8625 ] 
[   0.8644 ] tegrasign_v2 --key None --list mce_mts_d15_prod_cr_sigheader.bin_list.xml
[   0.8655 ] Assuming zero filled SBK key
[   0.9483 ] 
[   0.9507 ] tegrahost_v2 --updatesigheader mce_mts_d15_prod_cr_sigheader.bin.encrypt mce_mts_d15_prod_cr_sigheader.bin.hash zerosbk
[   0.9938 ] 
[   0.9957 ] tegrahost_v2 --align bpmp.bin
[   0.9971 ] 
[   0.9984 ] tegrahost_v2 --appendsigheader bpmp.bin zerosbk
[   1.0014 ] 
[   1.0033 ] tegrasign_v2 --key None --list bpmp_sigheader.bin_list.xml
[   1.0044 ] Assuming zero filled SBK key
[   1.0288 ] 
[   1.0310 ] tegrahost_v2 --updatesigheader bpmp_sigheader.bin.encrypt bpmp_sigheader.bin.hash zerosbk
[   1.0431 ] 
[   1.0445 ] tegrahost_v2 --align tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb
[   1.0460 ] 
[   1.0474 ] tegrahost_v2 --appendsigheader tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb zerosbk
[   1.0498 ] 
[   1.0518 ] tegrasign_v2 --key None --list tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb_list.xml
[   1.0533 ] Assuming zero filled SBK key
[   1.0765 ] 
[   1.0790 ] tegrahost_v2 --updatesigheader tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.hash zerosbk
[   1.0817 ] 
[   1.0830 ] tegrahost_v2 --align tos.img
[   1.0842 ] 
[   1.0857 ] tegrahost_v2 --appendsigheader tos.img zerosbk
[   1.0871 ] 
[   1.0888 ] tegrasign_v2 --key None --list tos_sigheader.img_list.xml
[   1.0898 ] Assuming zero filled SBK key
[   1.0939 ] 
[   1.0957 ] tegrahost_v2 --updatesigheader tos_sigheader.img.encrypt tos_sigheader.img.hash zerosbk
[   1.0973 ] 
[   1.0985 ] tegrahost_v2 --align eks.img
[   1.0997 ] 
[   1.1012 ] tegrahost_v2 --appendsigheader eks.img zerosbk
[   1.1029 ] 
[   1.1048 ] tegrasign_v2 --key None --list eks_sigheader.img_list.xml
[   1.1059 ] Assuming zero filled SBK key
[   1.1063 ] 
[   1.1078 ] tegrahost_v2 --updatesigheader eks_sigheader.img.encrypt eks_sigheader.img.hash zerosbk
[   1.1092 ] 
[   1.1105 ] tegrahost_v2 --align tegra186-quill-p3310-1000-c03-00-base.dtb
[   1.1119 ] 
[   1.1131 ] tegrahost_v2 --appendsigheader tegra186-quill-p3310-1000-c03-00-base.dtb zerosbk
[   1.1154 ] 
[   1.1173 ] tegrasign_v2 --key None --list tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb_list.xml
[   1.1184 ] Assuming zero filled SBK key
[   1.1323 ] 
[   1.1345 ] tegrahost_v2 --updatesigheader tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.hash zerosbk
[   1.1365 ] 
[   1.1380 ] tegrahost_v2 --align nvtboot_recovery_cpu.bin
[   1.1395 ] 
[   1.1407 ] tegrahost_v2 --appendsigheader nvtboot_recovery_cpu.bin zerosbk
[   1.1423 ] 
[   1.1437 ] tegrasign_v2 --key None --list nvtboot_recovery_cpu_sigheader.bin_list.xml
[   1.1447 ] Assuming zero filled SBK key
[   1.1552 ] 
[   1.1569 ] tegrahost_v2 --updatesigheader nvtboot_recovery_cpu_sigheader.bin.encrypt nvtboot_recovery_cpu_sigheader.bin.hash zerosbk
[   1.1587 ] 
[   1.1588 ] Copying signed file in /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/signed
[   1.3818 ] Generating RCM messages
[   1.3836 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm mb1_recovery_prod.bin 0 0
[   1.3851 ] RCM 0 is saved as rcm_0.rcm
[   1.3858 ] RCM 1 is saved as rcm_1.rcm
[   1.3858 ] List of rcm files are saved in rcm_list.xml
[   1.3858 ] 
[   1.3859 ] Signing RCM messages
[   1.3873 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[   1.3887 ] Assuming zero filled SBK key
[   1.3963 ] 
[   1.3963 ] Copying signature to RCM mesages
[   1.3976 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[   1.4125 ] 
[   1.4125 ] Boot Rom communication
[   1.4137 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml
[   1.4151 ] BootRom is not running
[   2.4135 ] 
[   2.4154 ] tegrarcm_v2 --isapplet
[   2.4172 ] Applet version 01.00.0000
[   2.4218 ] 
[   2.4234 ] tegrasign_v2 --key None --getmode mode.txt
[   2.4249 ] Assuming zero filled SBK key
[   2.4253 ] 
[   2.4254 ] Parsing partition layout
[   2.4271 ] tegraparser_v2 --pt flash.xml.tmp
[   2.4301 ] 
[   2.4302 ] Creating list of images to be signed
[   2.4318 ] tegrahost_v2 --chip 0x18 --partitionlayout flash.xml.bin --list images_list.xml zerosbk
[   2.5709 ] 
[   2.5710 ] Generating signatures
[   2.5727 ] tegrasign_v2 --key None --list images_list.xml --pubkeyhash pub_key.key
[   2.5741 ] Assuming zero filled SBK key
[   2.9802 ] 
[   2.9803 ] Reading BCT from device for further operations
[   2.9803 ] Generating blob
[   2.9824 ] tegrahost_v2 --align blob_nvtboot_recovery_cpu.bin
[   2.9839 ] 
[   2.9854 ] tegrahost_v2 --appendsigheader blob_nvtboot_recovery_cpu.bin zerosbk
[   2.9872 ] 
[   2.9892 ] tegrasign_v2 --key None --list blob_nvtboot_recovery_cpu_sigheader.bin_list.xml
[   2.9906 ] Assuming zero filled SBK key
[   3.0003 ] 
[   3.0022 ] tegrahost_v2 --updatesigheader blob_nvtboot_recovery_cpu_sigheader.bin.encrypt blob_nvtboot_recovery_cpu_sigheader.bin.hash zerosbk
[   3.0042 ] 
[   3.0060 ] tegrahost_v2 --align blob_nvtboot_recovery.bin
[   3.0076 ] 
[   3.0092 ] tegrahost_v2 --appendsigheader blob_nvtboot_recovery.bin zerosbk
[   3.0112 ] 
[   3.0131 ] tegrasign_v2 --key None --list blob_nvtboot_recovery_sigheader.bin_list.xml
[   3.0144 ] Assuming zero filled SBK key
[   3.0197 ] 
[   3.0215 ] tegrahost_v2 --updatesigheader blob_nvtboot_recovery_sigheader.bin.encrypt blob_nvtboot_recovery_sigheader.bin.hash zerosbk
[   3.0233 ] 
[   3.0249 ] tegrahost_v2 --align blob_preboot_d15_prod_cr.bin
[   3.0261 ] 
[   3.0272 ] tegrahost_v2 --appendsigheader blob_preboot_d15_prod_cr.bin zerosbk
[   3.0286 ] 
[   3.0301 ] tegrasign_v2 --key None --list blob_preboot_d15_prod_cr_sigheader.bin_list.xml
[   3.0311 ] Assuming zero filled SBK key
[   3.0351 ] 
[   3.0367 ] tegrahost_v2 --updatesigheader blob_preboot_d15_prod_cr_sigheader.bin.encrypt blob_preboot_d15_prod_cr_sigheader.bin.hash zerosbk
[   3.0384 ] 
[   3.0400 ] tegrahost_v2 --align blob_mce_mts_d15_prod_cr.bin
[   3.0413 ] 
[   3.0426 ] tegrahost_v2 --appendsigheader blob_mce_mts_d15_prod_cr.bin zerosbk
[   3.0493 ] 
[   3.0511 ] tegrasign_v2 --key None --list blob_mce_mts_d15_prod_cr_sigheader.bin_list.xml
[   3.0522 ] Assuming zero filled SBK key
[   3.1352 ] 
[   3.1376 ] tegrahost_v2 --updatesigheader blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt blob_mce_mts_d15_prod_cr_sigheader.bin.hash zerosbk
[   3.1426 ] 
[   3.1446 ] tegrahost_v2 --align blob_bpmp.bin
[   3.1460 ] 
[   3.1473 ] tegrahost_v2 --appendsigheader blob_bpmp.bin zerosbk
[   3.1498 ] 
[   3.1516 ] tegrasign_v2 --key None --list blob_bpmp_sigheader.bin_list.xml
[   3.1526 ] Assuming zero filled SBK key
[   3.1771 ] 
[   3.1796 ] tegrahost_v2 --updatesigheader blob_bpmp_sigheader.bin.encrypt blob_bpmp_sigheader.bin.hash zerosbk
[   3.1832 ] 
[   3.1852 ] tegrahost_v2 --align blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb
[   3.1869 ] 
[   3.1886 ] tegrahost_v2 --appendsigheader blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb zerosbk
[   3.1919 ] 
[   3.1938 ] tegrasign_v2 --key None --list blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb_list.xml
[   3.1953 ] Assuming zero filled SBK key
[   3.2158 ] 
[   3.2177 ] tegrahost_v2 --updatesigheader blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.hash zerosbk
[   3.2212 ] 
[   3.2232 ] tegrahost_v2 --align blob_tos.img
[   3.2247 ] 
[   3.2262 ] tegrahost_v2 --appendsigheader blob_tos.img zerosbk
[   3.2280 ] 
[   3.2302 ] tegrasign_v2 --key None --list blob_tos_sigheader.img_list.xml
[   3.2315 ] Assuming zero filled SBK key
[   3.2348 ] 
[   3.2370 ] tegrahost_v2 --updatesigheader blob_tos_sigheader.img.encrypt blob_tos_sigheader.img.hash zerosbk
[   3.2388 ] 
[   3.2404 ] tegrahost_v2 --align blob_eks.img
[   3.2419 ] 
[   3.2431 ] tegrahost_v2 --appendsigheader blob_eks.img zerosbk
[   3.2445 ] 
[   3.2460 ] tegrasign_v2 --key None --list blob_eks_sigheader.img_list.xml
[   3.2472 ] Assuming zero filled SBK key
[   3.2476 ] 
[   3.2491 ] tegrahost_v2 --updatesigheader blob_eks_sigheader.img.encrypt blob_eks_sigheader.img.hash zerosbk
[   3.2505 ] 
[   3.2520 ] tegrahost_v2 --align blob_tegra186-quill-p3310-1000-c03-00-base.dtb
[   3.2532 ] 
[   3.2545 ] tegrahost_v2 --appendsigheader blob_tegra186-quill-p3310-1000-c03-00-base.dtb zerosbk
[   3.2564 ] 
[   3.2581 ] tegrasign_v2 --key None --list blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb_list.xml
[   3.2594 ] Assuming zero filled SBK key
[   3.2735 ] 
[   3.2752 ] tegrahost_v2 --updatesigheader blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.hash zerosbk
[   3.2777 ] 
[   3.2799 ] tegrahost_v2 --generateblob blob.xml blob.bin
[   3.2813 ] number of images in blob are 9
[   3.2823 ] blobsize is 3749000
[   3.2829 ] Added binary blob_nvtboot_recovery_cpu_sigheader.bin.encrypt of size 189824
[   3.3012 ] Added binary blob_nvtboot_recovery_sigheader.bin.encrypt of size 79440
[   3.3021 ] Added binary blob_preboot_d15_prod_cr_sigheader.bin.encrypt of size 63024
[   3.3029 ] Added binary blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt of size 2076832
[   3.3038 ] Added binary blob_bpmp_sigheader.bin.encrypt of size 529440
[   3.3045 ] Added binary blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt of size 466160
[   3.3057 ] Added binary blob_tos_sigheader.img.encrypt of size 62976
[   3.3064 ] Added binary blob_eks_sigheader.img.encrypt of size 1488
[   3.3070 ] Added binary blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt of size 279664
[   3.3085 ] 
[   3.3086 ] Sending bootloader and pre-requisite binaries
[   3.3105 ] tegrarcm_v2 --download blob blob.bin
[   3.3121 ] Applet version 01.00.0000
[   3.3169 ] Sending blob
[   3.3171 ] [.............                                   ] 027%
[   3.3171 ] [...........................                     ] 055%
[   3.3171 ] [.........................................       ] 083%
[   3.3171 ] [................................................] 100%
[   4.2842 ] 
[   4.2861 ] tegrarcm_v2 --boot recovery
[   4.2878 ] Applet version 01.00.0000
[   4.2940 ] 
[   4.2956 ] tegrarcm_v2 --isapplet
[   4.9800 ] 
[   4.9819 ] tegradevflash_v2 --iscpubl
[   4.9836 ] CPU Bootloader is not running on device.
[   4.9879 ] 
[   7.4196 ] Writing partition
[   7.4213 ] tegradevflash_v2 --write kernel-dtb /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/signed/tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt
[   7.4229 ] Bootloader version 01.00.0000
[   7.4279 ] Writing partition kernel-dtb with /home/user/jetpack_3_2/64_TX2/Linux_for_Tegra/bootloader/signed/tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt
[   7.4297 ] [................................................] 100%
[   7.4637 ] 
[   7.4638 ] Coldbooting the device
[   7.4656 ] tegradevflash_v2 --reboot coldboot
[   7.4671 ] Bootloader version 01.00.0000
[   7.4775 ] 
*** The [kernel-dtb] has been updated successfully. ***
  1. After restarting TX 2, I confirmed “cat/proc/device-tree/host1x/sor1/hdmi-display/status”, but it was “okay”.

Based on the above, I judged that updating the DTB has failed.

hello r.tanaka,

please share more details following below two actions.

  1. please execute below command to confirm which device tree you’re using.
dmesg | grep DTS
  1. please disassembler your own build dtb file into txt file to confirm sysnode description
dtc -I dtb -O dts -o temp.txt tegra186.dtb

hello JerryChang,

I have confirmed the DTB being used.

nvidia@tegra-ubuntu:~$ dmesg | grep DTS
[    0.046703] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.4/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts
[    0.169778] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.4/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts
nvidia@tegra-ubuntu:~$

I decompiled the two files that replaced the DTB of “64_TX2 / Linux_for_Tegra / kernel / dtb /”.

dtc -I dtb -O dts -o temp1.txt tegra186-quill-p3310-1000-c03-00-base.dtb
dtc -I dtb -O dts -o temp2.txt tegra186-quill-p3310-1000-a00-00-base.dtb

The modified part changed as expected.

The contents of temp2.txt are as follows.

hdmi-display {
				status = "disabled";
				compatible = "hdmi,display";
				generic-infoframe-type = <0x87>;

				disp-default-out {
					nvidia,out-type = <0x1>;
					nvidia,out-flags = <0x2>;
					nvidia,out-parent-clk = "plld2";
					nvidia,out-align = <0x0>;
					nvidia,out-order = <0x0>;
					nvidia,out-xres = <0x1000>;
					nvidia,out-yres = <0x870>;
				};
			};

hello r.tanaka,

since your board is using tegra186-quill-p3310-1000-c03-00-base.dts

although “tegra186-quill-p3310-1000-c03-00-base.dts” is including the “tegra186-quill-p3310-1000-a00-00-base.dts” file, there’s might be some overwrites.
you should determine the decompiled result of your temp1.txt as finalize device tree.
please try to change the statue of tegra186-quill-p3310-1000-c03-00-base.dts
thanks

hello JerryChang,

The decompiled result of tegra186-quill-p3310-1000-c03-00-base.dtb is as follows.

/dts-v1/;

/memreserve/	0x0000000080000000 0x0000000000010000;
/ {
	compatible = "nvidia,quill", "nvidia,tegra186";
	interrupt-parent = <0x1>;
	#address-cells = <0x2>;
	#size-cells = <0x2>;
	model = "quill";
	nvidia,dtsfilename = "/home/user/work_tx2/L4T_r28_2/public_release_merge/kernel/kernel-4.4/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts";
	nvidia,dtbbuildtime = "May 21 2018", "13:58:54";

“nvidia, dtbbuildtime” is “May 21 2018”, “13: 58: 54”.
“nvidia,dtsfilename” is “/home/user/work_tx2/L4T_r28_2/public_release_merge/kernel/kernel-4.4/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts”.

However, looking at “proc/device-tree” of TX2…

nvidia@tegra-ubuntu:~$ cat /proc/device-tree/nvidia,dtbbuildtime
Mar  1 201820:50:46nvidia@tegra-ubuntu:~$
nvidia@tegra-ubuntu:~$ cat /proc/device-tree/nvidia,dtsfilename
/dvs/git/dirty/git-master_linux/kernel/kernel-4.4/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dtsnvidia@tegra-ubuntu:~$
nvidia@tegra-ubuntu:~$

The flash script does not seem to be working properly.

Do I need to change any configuration file?

thanks

hello r.tanaka,

we verify this again with JetPack-3.2/TX2.
the testing results shows we’re able to update the device tree correctly.

[default DTB]
nvidia@tegra-ubuntu:~$ cat /proc/device-tree/nvidia,dtbbuildtime 
Mar  1 201820:50:46
 
[replace DTB of /kernel/dtb/]
nvidia@tegra-ubuntu:~$ cat /proc/device-tree/nvidia,dtbbuildtime 
May  8 201809:49:35

moreover, since the steps of DTB update for R28.2 is same as R28.1,
please also check this external wiki page, https://elinux.org/Jetson/TX2_DTB
thanks

FYI, t186 is the TX2, not a TX1. There are some parts of each generation of Tegra in common with previous generations, but I’m wondering if your files you’ve copied were from a TX1 sample and not applicable to TX2? Mostly I’d expect to see t210 (or t21x) rather than t186.

When you do the flash do you see the actual flash of any t186 dtb files? Preparation which copies into “bootloader/” or “kernel/” may not actually be flashed.