Jetson-tx2, Change kernel without full flash

I’m studying Linux kernel based on arm arch, and i want to know how can i change kernel without full flash

I tried a lot of thing like

sudo ./flash.sh -k kernel -K /Image -R rootfs/ jetson-tx2 mmcblk0p1
sudo ./flash.sh -k kernel --image /Image jetson-tx2 mmcblk0p1
.
.
.

my machine is tx2, and crosscompiler’s version is 7, and kernel version is 4.9 and using R 32.1

Please replace the dtb file at …/Linux_for_Tegra/kernel/dtb/ and issue below command to update the device tree.

sudo ./flash.sh -r -k kerne-dtb jetson-tx2 mmcblk0p1

For the kernel image replace the Image at …/Linux_for_Tegra/kernel/ and …
sudo ./flash.sh -r -k kerne jetson-tx2 mmcblk0p1
or try to copy the Image to TX2 and replace the /boot/Image.

I already replace my Image at kernel/Image and dtb files at kernel/dtb/~ include c03-base,

I want to know what is necessary for changing kernel.

Please attached the flash log for checking.

sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1
###############################################################################

L4T BSP Information:

R32 (release), REVISION: 1.0, GCID: 14531094, BOARD: t186ref, EABI: aarch64,

DATE: Wed Mar 13 07:41:08 UTC 2019

###############################################################################

Target Board Information:

Name: jetson-tx2, Board Family: t186ref, SoC: Tegra 186,

OpMode: production, Boot Authentication: NS,

###############################################################################
./tegraflash.py --chip 0x18 --applet “/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin” --skipuid --cmd “dump eeprom boardinfo cvm.bin”
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.0048 ] Generating RCM messages
[ 0.0056 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 0 --download rcm /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin 0 0
[ 0.0063 ] RCM 0 is saved as rcm_0.rcm
[ 0.0067 ] RCM 1 is saved as rcm_1.rcm
[ 0.0067 ] List of rcm files are saved in rcm_list.xml
[ 0.0067 ]
[ 0.0067 ] Signing RCM messages
[ 0.0073 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0079 ] Assuming zero filled SBK key
[ 0.0108 ]
[ 0.0108 ] Copying signature to RCM mesages
[ 0.0114 ] tegrarcm_v2 --chip 0x18 0 --updatesig rcm_list_signed.xml
[ 0.0123 ]
[ 0.0123 ] Boot Rom communication
[ 0.0129 ] tegrarcm_v2 --chip 0x18 0 --rcm rcm_list_signed.xml --skipuid
[ 0.0135 ] RCM version 0X180001
[ 0.0144 ] Boot Rom communication completed
[ 1.0207 ]
[ 2.0245 ] tegrarcm_v2 --isapplet
[ 2.0268 ] Applet version 01.00.0000
[ 2.0451 ]
[ 2.0478 ] Retrieving EEPROM data
[ 2.0481 ] tegrarcm_v2 --oem platformdetails eeprom cvm /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/cvm.bin
[ 2.0487 ] Applet version 01.00.0000
[ 2.0805 ] Saved platform info in /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/cvm.bin
[ 2.1543 ]
Board ID(3310) version(D01) sku(1000) revision(B.0)
copying bctfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/P3310_A00_8GB_Samsung_8GB_lpddr4_204Mhz_A02_l4t.cfg)… done.
copying misc_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-misc-si-l4t.cfg)… done.
copying pinmux_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg)… done.
copying pmic_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pmic-quill-p3310-1000-c04.cfg)… done.
copying pmc_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-pad-quill-p3310-1000-c03.cfg)… done.
copying prod_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-prod-quill-p3310-1000-c03.cfg)… done.
copying scr_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/minimal_scr.cfg)… done.
copying scr_cold_boot_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/mobile_scr.cfg)… done.
copying bootrom_config(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/tegra186-mb1-bct-bootrom-quill-p3310-1000-c03.cfg)… done.
copying dev_params(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/BCT/emmc.cfg)… done.
Existing bootloader(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/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/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb to rootfs… done.
done.
Making Boot image… done.
Existing sosfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin) reused.
copying tegraboot(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/nvtboot.bin)… done.
Existing cpu_bootloader(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/nvtboot_cpu.bin) reused.
Existing mb2blfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/nvtboot_recovery.bin) reused.
Existing mtspreboot(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/preboot_d15_prod_cr.bin) reused.
Existing mts(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/mce_mts_d15_prod_cr.bin) reused.
Existing mb1file(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/mb1_prod.bin) reused.
Existing bpffile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/bpmp.bin) reused.
copying bpfdtbfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb)… done.
Existing scefile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/camera-rtcpu-sce.img) reused.
Existing spefile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/spe.bin) reused.
Existing drameccfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/dram-ecc.bin) reused.
Existing badpagefile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/badpage.bin) reused.
copying wb0boot(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/warmboot.bin)… done.
Existing tosfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/tos-mon-only.img) reused.
Existing eksfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/eks.img) reused.
copying dtbfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb)… done.
Reusing existing system.img…
done.
Existing tbcfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/cboot.bin) reused.
copying tbcdtbfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/kernel/dtb/tegra186-quill-p3310-1000-c03-00-base.dtb)… done.
copying cfgfile(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/t186ref/cfg/flash_l4t_t186.xml) to flash.xml… done.
Existing flasher(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/bootloader/nvtboot_recovery_cpu.bin) reused.
Existing flashapp(/home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/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 --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-mon-only.img; eks eks.img; bootloader_dtb tegra186-quill-p3310-1000-c03-00-base.dtb” --cmd “signwrite kernel-dtb tegra186-quill-p3310-1000-c03-00-base.dtb; 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.0110 ] tegrasign_v2 --key None --getmode mode.txt
[ 0.0116 ] Assuming zero filled SBK key
[ 0.0116 ]
[ 0.0117 ] sign_type : 909652321
[ 0.0117 ] header_magic: d00dfeed
[ 0.0123 ] tegrahost_v2 --chip 0x18 --align 1_tegra186-quill-p3310-1000-c03-00-base.dtb
[ 0.0129 ]
[ 0.0136 ] tegrahost_v2 --appendsigheader 1_tegra186-quill-p3310-1000-c03-00-base.dtb zerosbk
[ 0.0146 ]
[ 0.0153 ] tegrasign_v2 --key None --list 1_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb_list.xml
[ 0.0158 ] Assuming zero filled SBK key
[ 0.0224 ]
[ 0.0231 ] tegrahost_v2 --updatesigheader 1_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt 1_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.hash zerosbk
[ 0.0240 ]
[ 0.0240 ] Generating RCM messages
[ 0.0245 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 0 --download rcm mb1_recovery_prod.bin 0 0
[ 0.0249 ] RCM 0 is saved as rcm_0.rcm
[ 0.0251 ] RCM 1 is saved as rcm_1.rcm
[ 0.0251 ] List of rcm files are saved in rcm_list.xml
[ 0.0251 ]
[ 0.0251 ] Signing RCM messages
[ 0.0256 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0261 ] Assuming zero filled SBK key
[ 0.0281 ]
[ 0.0281 ] Copying signature to RCM mesages
[ 0.0286 ] tegrarcm_v2 --chip 0x18 0 --updatesig rcm_list_signed.xml
[ 0.0293 ]
[ 0.0293 ] Boot Rom communication
[ 0.0298 ] tegrarcm_v2 --chip 0x18 0 --rcm rcm_list_signed.xml
[ 0.0302 ] BootRom is not running
[ 5.1065 ]
[ 6.1104 ] tegrarcm_v2 --isapplet
[ 6.1126 ] Applet version 01.00.0000
[ 6.1292 ]
[ 6.1318 ] tegrasign_v2 --key None --getmode mode.txt
[ 6.1342 ] Assuming zero filled SBK key
[ 6.1345 ]
[ 6.1347 ] Parsing partition layout
[ 6.1371 ] tegraparser_v2 --pt flash.xml.tmp
[ 6.1409 ]
[ 6.1410 ] Creating list of images to be signed
[ 6.1438 ] tegrahost_v2 --chip 0x18 0 --partitionlayout flash.xml.bin --list images_list.xml zerosbk
[ 6.1837 ]
[ 6.1837 ] Generating signatures
[ 6.1847 ] tegrasign_v2 --key None --list images_list.xml --pubkeyhash pub_key.key
[ 6.1855 ] Assuming zero filled SBK key
[ 6.3733 ]
[ 6.3734 ] Reading BCT from device for further operations
[ 6.3734 ] Generating blob
[ 6.3744 ] tegrahost_v2 --chip 0x18 --align blob_nvtboot_recovery_cpu.bin
[ 6.3750 ]
[ 6.3756 ] tegrahost_v2 --appendsigheader blob_nvtboot_recovery_cpu.bin zerosbk
[ 6.3766 ]
[ 6.3773 ] tegrasign_v2 --key None --list blob_nvtboot_recovery_cpu_sigheader.bin_list.xml
[ 6.3778 ] Assuming zero filled SBK key
[ 6.3815 ]
[ 6.3823 ] tegrahost_v2 --updatesigheader blob_nvtboot_recovery_cpu_sigheader.bin.encrypt blob_nvtboot_recovery_cpu_sigheader.bin.hash zerosbk
[ 6.3830 ]
[ 6.3836 ] tegrahost_v2 --chip 0x18 --align blob_nvtboot_recovery.bin
[ 6.3840 ]
[ 6.3845 ] tegrahost_v2 --appendsigheader blob_nvtboot_recovery.bin zerosbk
[ 6.3851 ]
[ 6.3858 ] tegrasign_v2 --key None --list blob_nvtboot_recovery_sigheader.bin_list.xml
[ 6.3864 ] Assuming zero filled SBK key
[ 6.3880 ]
[ 6.3887 ] tegrahost_v2 --updatesigheader blob_nvtboot_recovery_sigheader.bin.encrypt blob_nvtboot_recovery_sigheader.bin.hash zerosbk
[ 6.3894 ]
[ 6.3900 ] tegrahost_v2 --chip 0x18 --align blob_preboot_d15_prod_cr.bin
[ 6.3907 ]
[ 6.3914 ] tegrahost_v2 --appendsigheader blob_preboot_d15_prod_cr.bin zerosbk
[ 6.3921 ]
[ 6.3927 ] tegrasign_v2 --key None --list blob_preboot_d15_prod_cr_sigheader.bin_list.xml
[ 6.3931 ] Assuming zero filled SBK key
[ 6.3944 ]
[ 6.3953 ] tegrahost_v2 --updatesigheader blob_preboot_d15_prod_cr_sigheader.bin.encrypt blob_preboot_d15_prod_cr_sigheader.bin.hash zerosbk
[ 6.3959 ]
[ 6.3964 ] tegrahost_v2 --chip 0x18 --align blob_mce_mts_d15_prod_cr.bin
[ 6.3969 ]
[ 6.3973 ] tegrahost_v2 --appendsigheader blob_mce_mts_d15_prod_cr.bin zerosbk
[ 6.3999 ]
[ 6.4007 ] tegrasign_v2 --key None --list blob_mce_mts_d15_prod_cr_sigheader.bin_list.xml
[ 6.4012 ] Assuming zero filled SBK key
[ 6.4368 ]
[ 6.4376 ] tegrahost_v2 --updatesigheader blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt blob_mce_mts_d15_prod_cr_sigheader.bin.hash zerosbk
[ 6.4397 ]
[ 6.4405 ] tegrahost_v2 --chip 0x18 --align blob_bpmp.bin
[ 6.4412 ]
[ 6.4418 ] tegrahost_v2 --appendsigheader blob_bpmp.bin zerosbk
[ 6.4428 ]
[ 6.4434 ] tegrasign_v2 --key None --list blob_bpmp_sigheader.bin_list.xml
[ 6.4439 ] Assuming zero filled SBK key
[ 6.4531 ]
[ 6.4539 ] tegrahost_v2 --updatesigheader blob_bpmp_sigheader.bin.encrypt blob_bpmp_sigheader.bin.hash zerosbk
[ 6.4548 ]
[ 6.4554 ] tegrahost_v2 --chip 0x18 --align blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb
[ 6.4559 ]
[ 6.4563 ] tegrahost_v2 --appendsigheader blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb zerosbk
[ 6.4574 ]
[ 6.4583 ] tegrasign_v2 --key None --list blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb_list.xml
[ 6.4588 ] Assuming zero filled SBK key
[ 6.4670 ]
[ 6.4679 ] 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
[ 6.4687 ]
[ 6.4692 ] tegrahost_v2 --chip 0x18 --align blob_tos-mon-only.img
[ 6.4697 ]
[ 6.4702 ] tegrahost_v2 --appendsigheader blob_tos-mon-only.img zerosbk
[ 6.4708 ]
[ 6.4714 ] tegrasign_v2 --key None --list blob_tos-mon-only_sigheader.img_list.xml
[ 6.4718 ] Assuming zero filled SBK key
[ 6.4733 ]
[ 6.4739 ] tegrahost_v2 --updatesigheader blob_tos-mon-only_sigheader.img.encrypt blob_tos-mon-only_sigheader.img.hash zerosbk
[ 6.4745 ]
[ 6.4751 ] tegrahost_v2 --chip 0x18 --align blob_eks.img
[ 6.4755 ]
[ 6.4760 ] tegrahost_v2 --appendsigheader blob_eks.img zerosbk
[ 6.4765 ]
[ 6.4770 ] tegrasign_v2 --key None --list blob_eks_sigheader.img_list.xml
[ 6.4775 ] Assuming zero filled SBK key
[ 6.4776 ]
[ 6.4782 ] tegrahost_v2 --updatesigheader blob_eks_sigheader.img.encrypt blob_eks_sigheader.img.hash zerosbk
[ 6.4787 ]
[ 6.4792 ] tegrahost_v2 --chip 0x18 --align blob_tegra186-quill-p3310-1000-c03-00-base.dtb
[ 6.4797 ]
[ 6.4801 ] tegrahost_v2 --appendsigheader blob_tegra186-quill-p3310-1000-c03-00-base.dtb zerosbk
[ 6.4809 ]
[ 6.4814 ] tegrasign_v2 --key None --list blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb_list.xml
[ 6.4819 ] Assuming zero filled SBK key
[ 6.4878 ]
[ 6.4885 ] 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
[ 6.4893 ]
[ 6.4899 ] tegrahost_v2 --chip 0x18 --generateblob blob.xml blob.bin
[ 6.4903 ] number of images in blob are 9
[ 6.4904 ] blobsize is 3866488
[ 6.4905 ] Added binary blob_nvtboot_recovery_cpu_sigheader.bin.encrypt of size 202832
[ 6.4914 ] Added binary blob_nvtboot_recovery_sigheader.bin.encrypt of size 89184
[ 6.4916 ] Added binary blob_preboot_d15_prod_cr_sigheader.bin.encrypt of size 63104
[ 6.4918 ] Added binary blob_mce_mts_d15_prod_cr_sigheader.bin.encrypt of size 2082144
[ 6.4922 ] Added binary blob_bpmp_sigheader.bin.encrypt of size 533056
[ 6.4925 ] Added binary blob_tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2_sigheader.dtb.encrypt of size 466240
[ 6.4929 ] Added binary blob_tos-mon-only_sigheader.img.encrypt of size 83760
[ 6.4931 ] Added binary blob_eks_sigheader.img.encrypt of size 1440
[ 6.4932 ] Added binary blob_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt of size 344576
[ 6.4943 ]
[ 6.4943 ] Sending bootloader and pre-requisite binaries
[ 6.4949 ] tegrarcm_v2 --download blob blob.bin
[ 6.4954 ] Applet version 01.00.0000
[ 6.5121 ] Sending blob
[ 6.5122 ] […] 100%
[ 6.9793 ]
[ 6.9819 ] tegrarcm_v2 --boot recovery
[ 6.9844 ] Applet version 01.00.0000
[ 7.0071 ]
[ 8.0109 ] tegrarcm_v2 --isapplet
[ 8.0356 ]
[ 8.0385 ] tegradevflash_v2 --iscpubl
[ 8.0410 ] CPU Bootloader is not running on device.
[ 8.0551 ]
[ 9.0590 ] tegrarcm_v2 --isapplet
[ 9.0810 ]
[ 9.0837 ] tegradevflash_v2 --iscpubl
[ 9.0860 ] Bootloader version 01.00.0000
[ 9.1051 ] Bootloader version 01.00.0000
[ 9.1061 ]
[ 9.1062 ] Writing partition
[ 9.1087 ] tegradevflash_v2 --write kernel-dtb 1_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt
[ 9.1111 ] Bootloader version 01.00.0000
[ 9.1332 ] Writing partition kernel-dtb with 1_tegra186-quill-p3310-1000-c03-00-base_sigheader.dtb.encrypt
[ 9.1347 ] […] 100%
[ 9.1550 ]
[ 9.1552 ] Coldbooting the device
[ 9.1578 ] tegradevflash_v2 --reboot coldboot
[ 9.1602 ] Bootloader version 01.00.0000
[ 9.1676 ]
*** The [kernel-dtb] has been updated successfully. ***

This log show the dtb has been updated.
What’s the dmesg | grep -i kernel shows?

[ 0.000000] Kernel command line: initcall_debug quiet root=/dev/mmcblk0p1 rw rootwait 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@0x9607b000 lut_mem2=0x2008@0x96078000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.983055.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4
[ 0.000000] Memory: 7981296K/8212468K available (9854K kernel code, 1376K rwdata, 4452K rodata, 3008K init, 428K bss, 165636K reserved, 65536K cma-reserved)
[ 0.000000] Virtual kernel memory layout:
[ 0.037673] DTS File Name: /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/sources/kernel/kernel-4.9/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts
[ 0.213632] alternatives: patching kernel code
[ 0.291416] DTS File Name: /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/sources/kernel/kernel-4.9/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts
[ 0.367622] eventlib_kernel: keventlib is initialized, test id: 0
[ 0.487247] calling register_kernel_offset_dumper+0x0/0x28 @ 1
[ 0.487255] initcall register_kernel_offset_dumper+0x0/0x28 returned 0 after 1 usecs
[ 3.724204] Freeing unused kernel memory: 3008K
[ 4.353727] systemd[1]: Listening on udev Kernel Socket.

You can see the dtb file is updated to yours.

DTS File Name: /home/bear/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/sources/kernel/kernel-4.9/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts

But kernel is not changed,
I use localversion to identify whether it is changed and local_version is not changed
after updating kernel-dtb

kernel-dtb only update the dtb, you need replace the Image and update by sudo ./flash.sh -r -k kernel jetson-tx2 mmcblk0p1 to update the kernel. Or try to copy your Image to tegra device and replace the /boot/Image then reboot the device.

Well…I tried
sudo ./flash.sh -k kernel jetson-tx2 mmcblk0p1, but it doesn’t work.
I’ll try second one and reply how it works.

Thanks for your help

I tried second one, and i faced a error “Started User Manager for UID 120”

i faced this a lot of time. Do you know why this error occurs?

I found something interesting on that. See:
https://askubuntu.com/questions/1037922/ubuntu-18-04-hangs-on-booting-with-message-started-user-manager-for-uid-120-on

That URL mentions editing “/etc/gdm3/custom.conf”. That particular fix involves uncommenting a line to disable Wayland. I see in my system this is already uncommented. Have you done anything with Wayland? On the system with the issue, can you check if “WaylandEnable=false” is uncommented (it should be uncommented)?

Note that wherever you flash from will have a “rootfs/etc/gdm3/custom.conf”, and if you don’t have direct access to the Jetson to check its file for that change, then you can use this file on the host side as an alternate check.

FYI, UID 120 is the user “gdm”, which the display manager used for GUI login.

Even if things seem to stop at that error message you might try CTRL-ALT-F2 or CTRL-ALT-F3 and see if a text-only console can be reached.

Hi All
R32.1 looks like need to copy the Image to the tegra at /boot/Image to apply customize kernel image.

Hi all,

Is this “Started User Manager for UID 120” prolem solved? I’m facing same problem on Jetson Xavier.
I tried to recompile the kernel with “tegra_defconfig” default configuration.
Then even I updated kernel by coping to /boot/Image or by command as below

sudo ./flash.sh -r -k kernel -K YOUR_KERNEL_ZIMAGE jetson-xavier mmcblk0p

“Started User Manager for UID 120” problem still remained.

Any help would be appreciated.

Update:

If I use kernel that come with “JAX-TX2-Jetson_Linux_R32.1.0_aarch64” package, HDMI could display as well.
“Started User Manager for UID 120” only happen with my re_compile kernel even with default configuration.

Did you follow the edit here?
https://devtalk.nvidia.com/default/topic/1051147/jetson-tx2/jetson-tx2-change-kernel-without-full-flash/post/5335140/#5335140

Also, when you run the command “uname -r”, what does the new kernel show? Do you have kernel modules present at “/lib/modules/$(uname -r)/”? Does the suffix of “uname -r” reflect the kernel config “CONFIG_LOCALVERSION”?