I want to check if A/B System Update is available

JetsonAGX XAVIER
L4T 32.7.1

I want to check if A/B System Update is available.

OTA was performed with A/B System Update enabled while the system was running in slot 0.
The OTA was successful, and it was confirmed that the device was running in slot 1.

The next thing I want to try is to fail the OTA while booted in slot0 and recover in slot0 by A/B System Update.
What steps can I take to prove that A/B System Update is useful?

I read the following link but it didn’t say how to experiment.
https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/bootloader_update_agx_tx2.html#wwpID0E0HL0HA

Also, I think there was a retry count bug in L4T 32.6.1, has it been fixed?

hello user-man,

you should have rootfs redundancy enabled; Image-Based Over-the-Air Update is a failsafe way to update BSP.
so, the most straightforward way to fail the OTA is interrupt the update process, such as unplug the power-supply, or issue a power-command to force-stop it.

How does the behavior change between OTA failure with rootfs redundancy enabled and OTA failure with rootfs redundancy disabled?

hello user-man,

please have rootfs redundancy enabled for testing it. otherwise, the update failed you should re-flash the entire eMMC.

sudo nv_update_engine --enable-ab
Enabled by the above command.

If I disable rootfs redundancy and power off during OTA update, it boots fine.
This is where it differs from what you say.

Do I need to disable bootloader redundancy as well?

I would like to know how to check where the difference is between enabling and disabling rootfs.

please share the logs for reference, thanks

Below is the status check and OTA update.
The logging stops because the power is unplugged during the process.

nvidia@nvidia-desktop:~$ sudo nv_update_engine --disable-ab
Nvidia A/B-Redundancy Update tool Version 2.1
disabling A/B redundancy
Disable A/B command failed. It could be due to A/B being disabled already.
Error: Disable A/B redundancy failed!
nvidia@nvidia-desktop:~$ sudo nvbootctrl dump-slots-info
Current bootloader slot: A
Active bootloader slot: A
magic:0x43424e00,             version: 5             features: 0             num_slots: 1
slot: 0,             priority: 15,             suffix: _a,             retry_count: 7,             boot_successful: 1
slot: 1,             priority: 0,             suffix: ,             retry_count: 0,             boot_successful: 0
nvidia@nvidia-desktop:~$ cd ota_workdir
nvidia@nvidia-desktop:~/ota_workdir$ export WORKDIR=${PWD}
nvidia@nvidia-desktop:~/ota_workdir$ cd ${WORKDIR}/Linux_for_Tegra/tools/ota_tools/version_upgrade
nvidia@nvidia-desktop:~/ota_workdir/Linux_for_Tegra/tools/ota_tools/version_upgrade$ sudo ./nv_ota_start.sh /dev/mmcblk0 /ota/ota_payload_package.tar.gz
Command: ./nv_ota_start.sh /dev/mmcblk0 /ota/ota_payload_package.tar.gz
init_ota_log /ota_log
Create log file at /ota_log/ota_20210722-040842.log
OTA_LOG_FILE=/ota_log/ota_20210722-040842.log
Extract /ota/ota_payload_package.tar.gz
update_nv_boot_control_in_rootfs /ota_work
2888-400-0004--1-2-jetson-agx-xavier-devkit-
check_prerequisites
get_chip_id chip_id
nv_ota_update_without_layout_change.sh /ota_work/ota_package.tar.gz
Command: nv_ota_update_without_layout_change.sh /ota_work/ota_package.tar.gz
decompress_ota_package /ota_work/ota_package.tar.gz /ota_work
decompress_ota_package: start at 2021年  7月 22日 木曜日 04:08:55 JST
Sha1 checksum for /ota_work/ota_package.tar (608d02275c3ee3c0f5bcacd7342b46fcc10ac029) matches
decompress_ota_package: end at 2021年  7月 22日 木曜日 04:09:25 JST
check_target_board /ota_work TARGET_BOARD
get_chip_id CHIP_ID
update_utilities_for_BUP_update /ota_work
enable_a_b_redundancy
Nvidia A/B-Redundancy Update tool Version 2.1
enabling A/B redundancy
A/B Redundancy has been enabled.
get_rootfs_a_b_enabled ROOTFS_AB_ENABLED UNIFIED_AB_ENABLED
ROOTFS_AB_ENABLED=0
UNIFIED_AB_ENABLED=0
check_bsp_version /ota_work BASE_VERSION
get_update_control /ota_work UPDATE_BOOTLOADER UPDATE_ROOTFS
UPDATE_BOOTLOADER=1, UPDATE_ROOTFS=1
update_bootloader /ota_work 0 0x19
get_update_slot bootloader 0 update_slot
update_slot=B
update_bootloader_with_UE /ota_work 0x19
Nvidia A/B-Redundancy Update tool Version 2.1
verifying update
Verify bootloader update begins.
The rotate count has been restored.
The current slot 0 is marked as boot successful
SM: S1
The priority of current slot 0 has been restored.
Verify rootfs update begins.
RootFS A/B is not enabled, verification finishes.
Nvidia A/B-Redundancy Update tool Version 2.1
Got payload file: /ota_work/bl_update_payload
current slot 0
SM: S11
Set slot 1 as unbootable and start updating.
Start running: /usr/sbin/nv_bootloader_payload_updater --no-dependent-partition /ota_work/bl_update_payload
Got update payload: /ota_work/bl_update_payload
Tegra User Block Device: /dev/disk/by-partlabel
Tegra Boot Block Device: /dev/mmcblk0boot0
HEADER: MAGIC NVIDIA__BLOB__V2
HEX_VALUE 16909857
BLOB_SIZE 53926705
HEADER_SIZE 48
NUMBER_OF_ELEMENTS 37
HEADER_TYPE 0
UNCOMP_SIZE 53926705
MB1_RATCHET_LV 0
MTS_RATCHET_LV 0
ROLLBACK_FUSE_LV 0
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1
Device Compatible Spec: 2888-400-0004--1-2-jetson-agx-xavier-devkit-
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1
Device Compatible Spec: 2888-400-0004--1-2-jetson-agx-xavier-devkit-
Device is fused board.
ENTRY_TABLE:
PART  POS  LEN  VER TNSPEC TYPE UPDATABLE
spe-fw  4488  94960  12897    0  1
mb2  99448  181232  12897    0  1
cpu-bootloader  280680  469840  12897    1  1
secure-os  750520  410560  12897    1  1
bpmp-fw  1161080  856352  12897    1  1
eks  2017432  5136  12897    1  1
adsp-fw  2022568  81312  12897    1  1
rce-fw  2103880  272752  12897    1  1
mts-preboot  2376632  24016  12897    0  1
mts-mce  2400648  143200  12897    1  1
mts-proper  2543848  3430416  12897    1  1
sc7  5974264  65504  12897    1  1
bpmp-fw-dtb  6039768  993088  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
bpmp-fw-dtb  7032856  993088  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
bpmp-fw-dtb  8025944  993088  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  1
bootloader-dtb  9019032  288352  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
bootloader-dtb  9307384  288352  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
bootloader-dtb  9595736  288352  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  1
VER  9884088  102  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
VER  9884190  102  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
VER  9884292  101  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  1
mb1  9884393  249312  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  0
mb1  10133705  249312  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  0
mb1  10383017  249312  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  1
BCT  10632329  2888  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  0
BCT  10635217  2888  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  0
BCT  10638105  2888  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  2  1
MB1_BCT  10640993  30864  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
MB1_BCT  10671857  30864  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
MB1_BCT  10702721  30864  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  1
MEM_BCT  10733585  198656  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
MEM_BCT  10932241  198656  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  0
MEM_BCT  11130897  198656  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  0  1
kernel  11329553  41732096  12897    1  1
kernel-dtb  53061649  288352  12897  2888-400-0001-D.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
kernel-dtb  53350001  288352  12897  2888-400-0001-E.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  0
kernel-dtb  53638353  288352  12897  2888-400-0004--1-2-jetson-agx-xavier-devkit-mmcblk0p1  1  1
Saving Entry table to /opt/ota_package/entry_table
spe-fw write: slot = 1 offset = 1409024 bytes = 94960
mb2 write: slot = 1 offset = 1900544 bytes = 181232
Writing 469840 bytes to /dev/disk/by-partlabel/cpu-bootloader_b for cpu-bootloader
Writing 410560 bytes to /dev/disk/by-partlabel/secure-os_b for secure-os
Writing 856352 bytes to /dev/disk/by-partlabel/bpmp-fw_b for bpmp-fw
Writing 5136 bytes to /dev/disk/by-partlabel/eks_b for eks
Writing 81312 bytes to /dev/disk/by-partlabel/adsp-fw_b for adsp-fw
Writing 272752 bytes to /dev/disk/by-partlabel/rce-fw_b for rce-fw
mts-preboot write: slot = 1 offset = 2162688 bytes = 24016
Writing 143200 bytes to /dev/disk/by-partlabel/mts-mce_b for mts-mce
Writing 3430416 bytes to /dev/disk/by-partlabel/mts-proper_b for mts-proper
Writing 65504 bytes to /dev/disk/by-partlabel/sc7_b for sc7
Writing 993088 bytes to /dev/disk/by-partlabel/bpmp-fw-dtb_b for bpmp-fw-dtb
Writing 288352 bytes to /dev/disk/by-partlabel/bootloader-dtb_b for bootloader-dtb
VER write: slot = 1 offset = 2203648 bytes = 101
MB1_BCT write: slot = 1 offset = 622592 bytes = 30864
MEM_BCT write: slot = 1 offset = 917504 bytes = 198656
Writing 41732096 bytes to /dev/disk/by-partlabel/kernel_b for kernel
Writing 288352 bytes to /dev/disk/by-partlabel/kernel-dtb_b for kernel-dtb
Update bup successfully
SM: S12
Setting slot 1 as active boot slot
Nvidia A/B-Redundancy Update tool Version 2.1
Got payload file: /ota_work/xusb_only_payload
current slot 0
SM: S11
Set slot 1 as unbootable and start updating.
Start running: /usr/sbin/nv_bootloader_payload_updater --no-dependent-partition /ota_work/xusb_only_payload
Got update payload: /ota_work/xusb_only_payload
Tegra User Block Device: /dev/disk/by-partlabel
Tegra Boot Block Device: /dev/mmcblk0boot0
HEADER: MAGIC NVIDIA__BLOB__V2
HEX_VALUE 16909857
BLOB_SIZE 133288
HEADER_SIZE 48
NUMBER_OF_ELEMENTS 1
HEADER_TYPE 0
UNCOMP_SIZE 133288
MB1_RATCHET_LV 0
MTS_RATCHET_LV 0
ROLLBACK_FUSE_LV 0
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1
Device Compatible Spec: 2888-400-0004--1-2-jetson-agx-xavier-devkit-
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-agx-xavier-devkit-mmcblk0p1
Device Compatible Spec: 2888-400-0004--1-2-jetson-agx-xavier-devkit-
Device is fused board.
ENTRY_TABLE:
PART  POS  LEN  VER TNSPEC TYPE UPDATABLE
xusb-fw  168  133120  12897    1  1
Saving Entry table to /opt/ota_package/entry_table
Writing 133120 bytes to /dev/disk/by-partlabel/xusb-fw_b for xusb-fw
GetEntryTable failed for mb1
Skipping partition: mb1
GetEntryTable failed for BCT
Skipping partition: BCT
GetEntryTable failed for BCT
Skipping partition: BCT
GetEntryTable failed for mb1
Skipping partition: mb1
Update bup successfully
SM: S12
Setting slot 1 as active boot slot
Copy /opt/ota_package/entry_table into /ota_work/entry_table.ota_backup
Bootloader on non-current slot(B) is updated
update_rootfs /ota_work 0
update_rootfs_with_a_b_disabled /ota_work
write_base_recovery /ota_work
Verifying image /ota_work/recovery.img.R32_3_4 with sha1 chksum file /ota_work/recovery.img.R32_3_4.sha1sum
Sha1 checksum for /ota_work/recovery.img.R32_3_4 (4276f6360d170ecf64625dd495715e08e94551b3) matches
Verifying image /ota_work/recovery.dtb.R32_3_4 with sha1 chksum file /ota_work/recovery.dtb.R32_3_4.sha1sum
Sha1 checksum for /ota_work/recovery.dtb.R32_3_4 (20fbfc3420a2d764cde5a55341e954ed8e96edb8) matches

The following is the boot log.

[0000.177] W> RATCHET: MB1 binary ratchet value 4 is too large than ratchet level 2 from HW fuses.
[0000.186] I> MB1 (prd-version: 1.5.1.7-t194-41334769-98030a79)                        
[0000.191] I> Boot-mode: Coldboot
[0000.194] I> Chip revision : A02 
[0000.197] I> Bootrom patch version : 15 (correctly patched)
[0000.202] I> ATE fuse revision : 0x200
[0000.206] I> Ram repair fuse : 0x0
[0000.209] I> Ram Code : 0x2
[0000.212] I> rst_source : 0x0
[0000.214] I> rst_level : 0x0
[0000.218] I> Boot-device: eMMC
[0000.233] I> sdmmc DDR50 mode
[0000.237] I> Active Boot chain : 1
[0000.240] I> Boot-device: eMMC
[0000.244] W> MB1_PLATFORM_CONFIG: device prod data is empty in MB1 BCT.
[0000.252] I> Temperature = 40000
[0000.255] W> Skipping boost for clk: BPMP_CPU_NIC
[0000.259] W> Skipping boost for clk: BPMP_APB
[0000.263] W> Skipping boost for clk: AXI_CBB
[0000.267] W> Skipping boost for clk: AON_CPU_NIC
[0000.271] W> Skipping boost for clk: CAN1
[0000.275] W> Skipping boost for clk: CAN2
[0000.279] I> Boot-device: eMMC
[0000.282] I> Boot-device: eMMC
[0000.291] I> Sdmmc: HS400 mode enabled
[0000.296] I> ECC region[0]: Start:0x0, End:0x02.7.1 | VT102 | 切断 | ttyUSB3                                                                 [0000.300] I> ECC region[1]: Start:0x0, End:0x02.7.1 | VT102 | 切断 | ttyUSB3                                                                 [0000.304] I> ECC region[2]: Start:0x0, End:0x0
[0000.308] I> ECC region[3]: Start:0x0, End:0x0
[0000.312] I> ECC region[4]: Start:0x0, End:0x0
[0000.316] I> Non-ECC region[0]: Start:0x80000000, End:0x100000000
[0000.322] I> Non-ECC region[1]: Start:0x0, End:0x0
[0000.327] I> Non-ECC region[2]: Start:0x0, End:0x0
[0000.331] I> Non-ECC region[3]: Start:0x0, End:0x0
[0000.336] I> Non-ECC region[4]: Start:0x0, End:0x0
[0000.341] E> FAILED: Thermal config
[0000.348] E> FAILED: MEMIO rail config
[0000.366] I> Boot-device: eMMC
[0000.376] I> sdmmc bdev is already initialized
[0000.449] I> MB1 done

����main enter
SPE VERSION #: R01.00.14 Created: Sep 19 2018 @ 11:03:21
HW Function test
Start Scheduler.
in late init
��
  [0000.457] I> Welcome to MB2(TBoot-BPMP) (version: 00.00.2018.32-mobile-938a8cd8)
[0000.458] I> DMA Heap @ [0x526fa000 - 0x52ffa000]
[0000.458] I> Default Heap @ [0xd486400 - 0xd48a400]
[0000.459] E> DEVICE_PROD: Invalid value data = 70020000, size = 0.
[0000.465] W> device prod register failed
[0000.469] I> Boot-device: eMMC
[0000.471] I> Boot_device: SDMMC_BOOT instance: 3
[0000.477] I> sdmmc-3 params source = boot args
[0000.480] I> sdmmc bdev is already initialized
[0000.484] I> sdmmc-3 params source = boot args
[0000.493] I> Found 17 partitions in SDMMC_BOOT (instance 3)
[0000.499] I> Found 42 partitions in SDMMC_USER (instance 3)
[0000.500] I> Active Boot chain : 1
[0000.503] I> parsing oem signed section of bpmp-fw header done
[0000.509] I> bpmp-fw binary init read from storage
[0000.514] I> oem authentication of bpmp-fw header done
[0000.520] I> bpmp-fw binary done read from storage
[0000.523] I> bpmp-fw: Authentication init Done
[0000.527] I> parsing oem signed section of cpubl header done
[0000.533] I> cpubl binary init read from storage
[0000.537] I> bpmp-fw: Authentication Finalize Done
[0000.542] I> oem authentication of cpubl header done
[0000.547] I> cpubl binary done read from storage
[0000.551] I> cpubl: Authentication init Done
[0000.556] I> parsing oem signed section of rce header done
[0000.560] I> rce binary init read from storage
[0000.565] I> Relocating BR-BCT
[0000.568] I> cpubl: Authentication Finalize Done
[0000.572] I> oem authentication of rce header done
[0000.577] I> rce binary done read from storage
[0000.581] I> rce: Authentication init Done
[0000.586] I> parsing oem signed section of ape header done
[0000.590] I> ape binary init read from storage
[0000.595] I> rce: Authentication Finalize Done
[0000.599] I> oem authentication of ape header done
[0000.603] I> ape binary done read from storage
[0000.608] I> ape: Authentication init Done
[0000.613] I> parsing oem signed section of tos header done
[0000.617] I> tos binary init read from storage
[0000.621] I> ape: Authentication Finalize Done
[0000.626] I> oem authentication of tos header done
[0000.630] I> tos binary done read from storage
[0000.635] I> tos: Authentication init Done
[0000.639] I> parsing oem signed section of bpmp-fw-dtb header done
[0000.645] I> bpmp-fw-dtb binary init read from storage
[0000.650] I> tos: Authentication Finalize Done
[0000.656] I> oem authentication of bpmp-fw-dtb header done
[0000.662] I> bpmp-fw-dtb binary done read from storage
[0000.664] I> bpmp-fw-dtb: Authentication init Done
[0000.669] I> parsing oem signed section of cpubl-dtb header done
[0000.675] I> cpubl-dtb binary init read from storage
[0000.679] I> bpmp-fw-dtb: Authentication Finalize Done
[0000.718] I> oem authentication of cpubl-dtb header done
[0000.718] I> cpubl-dtb binary done read from storage
[0000.719] I> cpubl-dtb: Authentication init Done
[0000.721] I> parsing oem signed section of eks header done
[0000.721] I> eks binary init read from storage
[0000.722] I> cpubl-dtb: Authentication Finalize Done
[0000.723] I> oem authentication of eks header done
[0000.726] I> eks binary done read from storage
[0000.731] I> eks: Authentication init Done
[0000.734] I> eks: Authentication Finalize Done
[0000.739] I> EKB detected (length: 0x410) @ VA:0x52700400
��NOTICE:  BL31: v1.3(release):b5eeb33f7
NOTICE:  BL31: Built : 12:15:32, Jul 26 2021
ipc-unittest-main: 1519: Welcome to IPC unittest!!!
ipc-unittest-main: 1531: waiting forever
ipc-unittest-srv: 329: Init unittest services!!!
hwkey-agent: 41: hwkey-agent is running!!
hwkey-agent: 315: key_mgnt_processing .......
hwkey-agent: 223: Setting EKB key 0 to slot 14
hwkey-agent: 178: Init hweky-agent services!!
luks-srv: 40: luks-srv is running!!
luks-srv: 157: Init luks-srv IPC services!!
platform_bootstrap_epilog: trusty bootstrap complete
��

welcome to lk
calling constructors
initializing heap
creating bootstrap completion thread
top of bootstrap2()
initializing platform
bpmp: platform_init
tag is e73a758761f0c6d24a1e69a2ac6b5035
tag_show initialized
dt initialized
mail initialized
chipid initialized
fuse initialized
sku initialized
speedo initialized
ec_get_ec_list: found 45 ecs
ec initialized
ec_mrq initialized
vmon_populate_monitors: found 3 monitors
vmon initialized
adc initialized
fmon_populate_monitors: found 73 monitors
fmon initialized
fmon_mrq initialized
reset initialized
nvhs initialized
392 clocks registered
WARNING: pll_c4 has no dyn ramp
clk_mrq_init: mrq handler registered
clk initialized
nvlink initialized
io_dpd initialized
io_dpd initialized
thermal initialized
i2c5 controller initialized
initialized i2c mrq handling
i2c initialized
regulator initialized
avfs_clk_platform initialized
soctherm initialized
aotag initialized
powergate initialized
dvs initialized
pm initialized
pg_late initialized
strap initialized
tag initialized
emc initialized
clk_dt initialized
avfs_ccplex_platform initialized
tj_max: dt node not found
tj_init initialized
uphy_mrq_init: mrq handler registered
uphy_dt initialized
uphy initialized
safereg_init: period 80 ms
ec_late initialized
��
  ��mrq initialized
��[0001.242] I> Welcome to Cboot
��fmon_post initialized
��[0001.242] I> Cboot Version: t194-cfa2bc91
[0001.243] I> CPU-BL Params @ 0xf2820000
[0001.243] I>  0) Base:0x00000000 Size:0x00000000
[0001.247] I>  1) Base:0xf1100000 Size:0x00100000
[0001.251] I>  2) Base:0xf2000000 Size:0x00200000
[0001.256] I>  3) Base:0xf1200000 Size:0x00200000
��clk_set_parent failed for clk i2c2, parent pll_aon (-22)
clk_set_parent failed for clk i2c8, parent pll_aon (-22)
clk_dt_late initialized
machine_check initialized
pm_post initialized
dbells initialized
avfs_clk_platform_post initialized
dmce initialized
cvc initialized
ccplex_avfs_hw_init: nafll_cluster0: not monitored
ccplex_avfs_hw_init: nafll_cluster1: not monitored
ccplex_avfs_hw_init: nafll_cluster2: not monitored
ccplex_avfs_hw_init: nafll_cluster3: not monitored
avfs_clk_mach_post initialized
regulator_post initialized
rm initialized
sc7_diag initialized
thermal_test initialized
serial_late initialized
clk_post initialized
clk_dt_post initialized
mc_reg initialized
pg_post initialized
dyn_modules initialized
sku_debugfs initialized
speedo_debugfs initialized
adc_debugfs initialized
clk_debugfs initialized
��[0001.260] I>  4) Base:0xf1000000 Size:0x00100000
[0001.340] I>  5) Base:0xf0f00000 Size:0x00100000
[0001.344] I>  6) Base:0xf3800000 Size:0x00400000
[0001.349] I>  7) Base:0xf1c00000 Size:0x00400000
[0001.353] I>  8) Base:0xf0e00000 Size:0x00100000
[0001.358] I>  9) Base:0xf0d00000 Size:0x00100000
[0001.362] I> 10) Base:0xf3000000 Size:0x00800000
[0001.366] I> 11) Base:0x40000000 Size:0x00040000
[0001.371] I> 12) Base:0xf0c00000 Size:0x00100000
[0001.375] I> 13) Base:0x40046000 Size:0x00002000
[0001.380] I> 14) Base:0x40048000 Size:0x00002000��emc_debugfs initialized
dvs_debugfs initialized
��
[0001.389] I> 15) Base:0xac000000 Size:0x00004000
��fmon_debugfs initialized
vmon_debugfs initialized
pg_debugfs initialized
profile_fs initialized
debugfs_cons initialized
mail_fs initialized
profile initialized
cvc_debugfs initialized
dmce_debugfs initialized
ec_debugfs initialized
rm_debugfs initialized
soctherm_debug initialized
gr_reader initialized
mods initialized
dt_fs initialized
debugfs_mrq initialized
debug_mrq initialized
debug_safereg initialized
initializing target
calling apps_init()
starting app shell
entering main console loop
] ��[0001.394] I> 16) Base:0x4004a000 Size:0x00002000
[0001.444] I> 17) Base:0xf0b00000 Size:0x00100000
[0001.448] I> 18) Base:0x4004c000 Size:0x00002000
[0001.453] I> 19) Base:0xf2200000 Size:0x00600000
[0001.457] I> 20) Base:0x4004e000 Size:0x00002000
[0001.462] I> 21) Base:0xf0ad0000 Size:0x0000c000
[0001.466] I> 22) Base:0x00000000 Size:0x00000000
[0001.471] I> 23) Base:0xf0ae0000 Size:0x00020000
[0001.475] I> 24) Base:0xf6000000 Size:0x02000000
[0001.480] I> 25) Base:0x40050000 Size:0x00002000
[0001.484] I> 26) Base:0x40040000 Size:0x00006000
[0001.489] I> 27) Base:0xf1800000 Size:0x00400000
[0001.493] I> 28) Base:0xf4c00000 Size:0x01400000
[0001.498] I> 29) Base:0xf1400000 Size:0x00400000
[0001.502] I> 30) Base:0x00000000 Size:0x00000000
[0001.506] I> 31) Base:0x00000000 Size:0x00000000
[0001.511] I> 32) Base:0xf8000000 Size:0x08000000
[0001.515] I> 33) Base:0x00000000 Size:0x00000000
[0001.520] I> 34) Base:0xf3c00000 Size:0x01000000
[0001.524] I> 35) Base:0xab000000 Size:0x01000000
[0001.529] I> 36) Base:0xa0000000 Size:0x0b000000
[0001.533] I> 37) Base:0xf2800000 Size:0x00800000
[0001.538] I> 38) Base:0x80000000 Size:0x20000000
[0001.542] I> 39) Base:0xb0000000 Size:0x08000000
[0001.547] I> 40) Base:0x00000000 Size:0x00000000
[0001.551] I> 41) Base:0x00000000 Size:0x00000000
[0001.556] I> 42) Base:0x00000000 Size:0x00000000
[0001.560] I> 43) Base:0x00000000 Size:0x00000000
[0001.564] I> 44) Base:0x00000000 Size:0x00000000
[0001.569] I> 45) Base:0x00000000 Size:0x00000000
[0001.573] GIC-SPI Target CPU: 0
[0001.576] Interrupts Init done
[0001.579] calling constructors
[0001.582] initializing heap
[0001.585] I> Heap: [0xa0699b80 ... 0xab000000]
[0001.589] initializing threads
[0001.592] initializing timers
[0001.595] creating bootstrap completion thread
[0001.599] top of bootstrap2()
[0001.602] CPU: MIDR: 0x4E0F0040, MPIDR: 0x80000000
[0001.606] initializing platform
[0001.609] E> DEVICE_PROD: Invalid value data = 0, size = 0.
[0001.615] W> device prod register failed
[0001.619] I> Bl_dtb @0xaaf00000
[0001.625] W> "plugin-manager" doesn't exist, creating
[0001.627] W> "ids" doesn't exist, creating
[0001.631] W> "connection" doesn't exist, creating
[0001.635] W> "configs" doesn't exist, creating
[0001.646] E> failed to read label property for node 227172: 13
[0001.649] E> failed to read reg property for node 227260: 13
[0001.652] E> failed to read label property for node 227312: 13
[0001.658] E> failed to read label property for node 227380: 13
[0001.663] E> failed to read label property for node 227416: 13
[0001.669] E> failed to read label property for node 227452: 13
[0001.675] E> failed to read reg property for node 227520: 13
[0001.681] E> failed to read label property for node 227572: 13
[0001.687] I> Find /i2c@3160000's alias i2c0
[0001.688] I> Reading eeprom i2c=0 address=0x50
[0001.718] I> Device at /i2c@3160000:0x50
[0001.718] I> Reading eeprom i2c=0 address=0x56
[0001.743] I> Device at /i2c@3160000:0x56
[0001.745] I> Find /i2c@3180000's alias i2c2
[0001.745] I> Reading eeprom i2c=2 address=0x54
[0001.747] E> I2C: slave not found in slaves.
[0001.747] E> I2C: Could not write 0 bytes to slave: 0x00a8 with repeat start true.
[0001.748] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.749] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa8 at 0x00000000 via instance 2.
[0001.757] E> eeprom: Failed to read I2C slave device
[0001.762] I> Eeprom read failed 0x3526070d
[0001.766] I> Reading eeprom i2c=2 address=0x57
[0001.770] E> I2C: slave not found in slaves.
[0001.774] E> I2C: Could not write 0 bytes to slave: 0x00ae with repeat start true.
[0001.782] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.787] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xae at 0x00000000 via instance 2.
[0001.797] E> eeprom: Failed to read I2C slave device
[0001.802] I> Eeprom read failed 0x3526070d
[0001.806] I> Reading eeprom i2c=2 address=0x52
[0001.810] E> I2C: slave not found in slaves.
[0001.814] E> I2C: Could not write 0 bytes to slave: 0x00a4 with repeat start true.
[0001.822] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.827] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa4 at 0x00000000 via instance 2.
[0001.837] E> eeprom: Failed to read I2C slave device
[0001.842] I> Eeprom read failed 0x3526070d
[0001.847] I> Find /i2c@c240000's alias i2c1
[0001.850] I> Reading eeprom i2c=1 address=0x52
[0001.855] E> I2C: slave not found in slaves.
[0001.858] E> I2C: Could not write 0 bytes to slave: 0x00a4 with repeat start true.
[0001.866] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.872] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa4 at 0x00000000 via instance 1.
[0001.881] E> eeprom: Retry to read I2C slave device.
[0001.886] E> I2C: slave not found in slaves.
[0001.890] E> I2C: Could not write 0 bytes to slave: 0x00a4 with repeat start true.
[0001.898] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.903] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa4 at 0x00000000 via instance 1.
[0001.913] E> eeprom: Failed to read I2C slave device
[0001.918] I> Eeprom read failed 0x3526070d
[0001.922] I> Reading eeprom i2c=1 address=0x50
[0001.926] E> I2C: slave not found in slaves.
[0001.930] E> I2C: Could not write 0 bytes to slave: 0x00a0 with repeat start true.
[0001.938] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.944] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa0 at 0x00000000 via instance 1.
[0001.953] E> eeprom: Retry to read I2C slave device.
[0001.958] E> I2C: slave not found in slaves.
[0001.962] E> I2C: Could not write 0 bytes to slave: 0x00a0 with repeat start true.
[0001.970] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.975] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa0 at 0x00000000 via instance 1.
[0001.985] E> eeprom: Failed to read I2C slave device
[0001.990] I> Eeprom read failed 0x3526070d
[0001.994] I> create_pm_ids: id: 2888-0004-400-K, len: 15
[0001.999] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0002.010] I> create_pm_ids: id: 2822-0000-600-G, len: 15
[0002.015] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0002.026] I> Adding plugin-manager/ids/2888-0004-400=/i2c@3160000:module@0x50
[0002.034] W> "i2c@3160000" doesn't exist, creating
[0002.038] W> "module@0x50" doesn't exist, creating
[0002.043] I> Adding plugin-manager/ids/2822-0000-600=/i2c@3160000:module@0x56
[0002.050] W> "module@0x56" doesn't exist, creating
[0002.055] I> Adding plugin-manager/cvm
[0002.058] W> "chip-id" doesn't exist, creating
[0002.062] I> Adding plugin-manager/chip-id/A02
[0002.066] I> Plugin-manager override starting
[0002.071] I> node /plugin-manager/fragement-tegra-wdt-en matches
[0002.080] I> node /plugin-manager/fragement-soft-wdt matches
[0002.088] I> node /plugin-manager/fragment-pcie-c5-rp matches
[0002.093] I> node /plugin-manager/fragment-tegra-ufs-lane10 matches
[0002.102] I> Disable plugin-manager status in FDT
[0002.103] I> Plugin-manager override finished successfully
[0002.103] I> gpio framework initialized
[0002.108] I> tegrabl_gpio_driver_register: register 'nvidia,tegra194-gpio' driver
[0002.116] I> tegrabl_gpio_driver_register: register 'nvidia,tegra194-gpio-aon' driver
[0002.122] I> tegrabl_tca9539_init: i2c bus: 1, slave addr: 0x46
[0002.130] W> fetch_driver_phandle_from_dt: failed to get node with compatible ti,tca9539
[0002.137] W> fetch_driver_phandle_from_dt: failed to get node with compatible nxp,tca9539
[0002.144] W> tegrabl_tca9539_init: failed to fetch phandle from dt
[0002.150] I> tegrabl_tca9539_init: i2c bus: 1, slave addr: 0x44
[0002.158] W> fetch_driver_phandle_from_dt: failed to get node with compatible ti,tca9539
[0002.165] W> fetch_driver_phandle_from_dt: failed to get node with compatible nxp,tca9539
[0002.172] W> tegrabl_tca9539_init: failed to fetch phandle from dt
[0002.179] I> fixed regulator driver initialized
[0002.191] I> register 'maxim' power off handle
[0002.192] I> virtual i2c enabled
[0002.192] I> registered 'maxim,max20024' pmic
[0002.194] I> tegrabl_gpio_driver_register: register 'max20024-gpio' driver
[0002.200] I> Boot-device: eMMC
[0002.203] I> Boot_device: SDMMC_BOOT instance: 3
[0002.212] I> sdmmc-3 params source = boot args
[0002.212] I> create_pm_ids: id: 2888-0004-400-K, len: 15
[0002.217] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0002.228] I> create_pm_ids: id: 2822-0000-600-G, len: 15
[0002.233] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0002.244] I> sdmmc bdev is already initialized
[0002.249] I> sdmmc-3 params source = boot args
[0002.279] I> Found 17 partitions in SDMMC_BOOT (instance 3)
[0002.292] I> Found 42 partitions in SDMMC_USER (instance 3)
[0002.303] I> enabling 'vdd-hdmi-5v0' regulator
[0002.308] I> regulator 'vdd-hdmi-5v0' already enabled
[0002.308] E> tegrabl_display_init_regulator: hdmi cable is not connected
[0002.309] E> tegrabl_display_get_pdata, failed to parse dtb settings
[0002.313] E> invalid display type
[0002.317] E> invalid display type
[0002.318] E> cannot find any other nvdisp nodes
[0002.318] E> no valid display unit config found in dtb
[0002.320] W> display init failed
[0002.320] I> Load in CBoot Boot Options partition and parse it
[0002.331] E> Error -9 when finding node with path /boot-configuration
[0002.331] E> tegrabl_cbo_parse_info: "boot-configuration" not found in CBO file.
[0002.338] I> Using default boot order
[0002.342] I> boot-dev-order :-
[0002.345] I> 1.sd
[0002.347] I> 2.usb
[0002.348] I> 3.nvme
[0002.350] I> 4.emmc
[0002.352] I> 5.net
[0002.354] I> Hit any key to stop autoboot:     4       3       2       1
[0004.362] initializing target
[0004.362] calling apps_init()
[0004.363] starting app kernel_boot_app
[0004.382] I> found decompressor handler: lz4-legacy
[0004.383] I> decompressing BMP blob ...
[0004.394] I> Kernel type = Normal
[0004.395] I> ########## SD (0) boot ##########
[0004.395] I> No sdcard
[0004.395] I> -0 params source = 
[0004.396] E> Blockdev open: exit error
[0004.396] E> SD boot failed, err: 724238353
[0004.396] I> ########## USB (0) boot ##########
[0004.407] I> Validate XUSB-FW ...
[0004.408] I> T19x: Authenticate XUSB-FW (bin_type: 11), max size 0x28000
[0004.409] I> Encryption fuse is not ON
[0004.410] I> USB Firmware Version: 60.09 release
[0004.467] I> regulator of usb2-0 already enabled
[0004.474] I> regulator of usb2-1 already enabled
[0004.481] I> regulator of usb2-2 already enabled
[0004.491] I> enabling 'vdd-5v-sata' regulator
[0005.559] I> USB 2.0 port 4 new low-speed USB device detected
[0005.561] W> WARNING: event and command not matching, cmd_trb_ptr = 0xa42ce200, cmd_ring.dma = 0xa42ce240
[0005.662] I> Start to enumerate device
[0005.663] W> handle_command_completion_event: WARNING: Command was not successfully completed (0x11)
[0008.671] W> xusbh_wait_irq: Timed out! status = 0x00
[0011.680] W> xusbh_wait_irq: Timed out! status = 0x00
[0011.680] E> Failed to enumerate USB device
[0011.681] E> failed to start xhci controller
[0011.681] E> Error in init of XUSB host driver, err: 7979000c
[0011.681] W> Failed to initialize device 5-0
[0011.682] E> USB boot failed, err: 2037973004
[0011.682] I> ########## NVME (0) boot ##########
[0011.686] I> Initializing nvme device instance 0
[0011.691] I> Initializing nvme controller
[0011.695] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14180000
[0011.701] I> vpcie3v3-supply not found
[0011.704] I> vpcie12v-supply not found
[0011.708] W> Failed to get nvidia,plat-gpios
[0011.712] I> tegrabl_pcie_soc_preinit: (0):
[0011.716] I> Unpowergate
[0011.719] I> tegrabl_car_clk_disable(0) ...
[0011.723] I> tegrabl_car_rst_set(CORE, 0) ...
[0011.727] I> tegrabl_car_rst_set(APB, 0) ...
[0011.731] I> tegrabl_car_clk_enable(0) ...
[0011.735] I> tegrabl_car_rst_clear(APB, 0) ...
[0011.739] I> tegrabl_set_ctrl_state(0)
[0011.743] I> CLR PCIE_APB:6
[0011.746] I> tegrabl_pcie_soc_init: (0):
[0011.749] I> APPL initialization ...
[0011.753] I> poweron phys
[0011.755] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14180000
[0011.761] I> tegrabl_power_on_phy: power on phy @0x3e30000
[0011.767] I> tegrabl_power_on_phy: power on phy @0x3e40000
[0011.772] I> tegrabl_power_on_phy: power on phy @0x3e50000
[0011.777] I> tegrabl_power_on_phy: power on phy @0x3e60000
[0012.883] C> Failed to link up controller-0
[0012.884] W> Failed tegrabl_pcie_soc_init(), error=0x12
[0012.884] I> Failed to initialize SoC Host PCIe controller
[0012.884] E> tegrabl_nvme_init: Failed tegrabl_pcie_init(0); error=0x12
[0012.885] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800612
[0012.885] W> Failed to open NVME-0, err = 80800612
[0012.890] W> Failed to initialize device 10-0
[0012.894] E> NVME (0) boot failed, err: 0x80800612
[0012.899] I> ########## NVME (1) boot ##########
[0012.903] I> Initializing nvme device instance 1
[0012.908] I> Initializing nvme controller
[0012.912] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14100000
[0012.918] I> vpcie3v3-supply not found
[0012.921] I> vpcie12v-supply not found
[0012.925] W> Failed to get nvidia,plat-gpios
[0012.929] I> tegrabl_pcie_soc_preinit: (1):
[0012.933] I> Unpowergate
[0012.936] I> tegrabl_car_clk_disable(1) ...
[0012.940] I> tegrabl_car_rst_set(CORE, 1) ...
[0012.944] I> tegrabl_car_rst_set(APB, 1) ...
[0012.948] I> tegrabl_car_clk_enable(1) ...
[0012.952] I> tegrabl_car_rst_clear(APB, 1) ...
[0012.956] I> tegrabl_set_ctrl_state(1)
[0012.960] I> CLR PCIE_APB:6
[0012.962] I> tegrabl_pcie_soc_init: (1):
[0012.966] I> APPL initialization ...
[0012.969] I> poweron phys
[0012.972] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14100000
[0012.978] I> tegrabl_power_on_phy: power on phy @0x3e10000
[0013.085] I> PCIe controller-1 link is up
[0013.086] I> tegra_pcie_info[1].cfg0_base = 0x30000000
[0013.086] I> tegra_pcie_info[1].cfg1_base = 0x30020000
[0013.086] I> tegra_pcie_info[1].atu_dma_base = 0x30040000
[0013.087] I> tegra_pcie_bus[1].mem = 0x30200000
[0013.087] I> Scanning busnr: 0 devfn: 0
[0013.087] I> PCIe IDs: 0x1ad210de
[0013.091] I> PCIe RID_CC: 0x60400a1
[0013.094] I> Scanning busnr: 1 devfn: 0
[0013.098] I> PCIe IDs: 0x91711b4b
[0013.101] I> PCIe RID_CC: 0x1060113
[0013.104] I> PCI Config: I/O=0x30100000, Memory=0x30200000
[0013.109] I> IO bar_num=0 bar=0x30100000
[0013.113] I> IO bar_num=1 bar=0x30100008
[0013.117] I> IO bar_num=2 bar=0x30100010
[0013.121] I> IO bar_num=3 bar=0x30100018
[0013.124] I> IO bar_num=4 bar=0x30100020
[0013.128] I> MEM bar_num=5 bar=0x30200000
[0013.132] I> Number of PCIe devices detected: 2
[0013.136] E> tegrabl_nvme_init: Failed tegrabl_pcie_get_dev(1); error=0x0
[0013.143] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800612
[0013.149] W> Failed to open NVME-1, err = 80800612
[0013.154] W> Failed to initialize device 10-1
[0013.158] E> NVME (1) boot failed, err: 0x80800612
[0013.163] I> ########## NVME (2) boot ##########
[0013.167] I> Initializing nvme device instance 2
[0013.172] I> Initializing nvme controller
[0013.176] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14120000
[0013.182] I> vpcie3v3-supply not found
[0013.186] I> vpcie12v-supply not found
[0013.189] W> Failed to get nvidia,plat-gpios
[0013.193] I> tegrabl_pcie_soc_preinit: (2):
[0013.197] I> Unpowergate
[0013.200] I> tegrabl_car_clk_disable(2) ...
[0013.204] I> tegrabl_car_rst_set(CORE, 2) ...
[0013.208] I> tegrabl_car_rst_set(APB, 2) ...
[0013.212] I> tegrabl_car_clk_enable(2) ...
[0013.216] I> tegrabl_car_rst_clear(APB, 2) ...
[0013.220] I> tegrabl_set_ctrl_state(2)
[0013.224] I> CLR PCIE_APB:6
[0013.227] I> tegrabl_pcie_soc_init: (2):
[0013.230] I> APPL initialization ...
[0013.234] I> poweron phys
[0013.237] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14120000
[0013.243] I> tegrabl_power_on_phy: controller 2 not available
[0013.248] E> Failed to power on phy on controller-2
[0013.253] W> Failed tegrabl_pcie_soc_init(), error=0x1
[0013.258] I> Failed to initialize SoC Host PCIe controller
[0013.263] E> tegrabl_nvme_init: Failed tegrabl_pcie_init(2); error=0x1
[0013.270] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800601
[0013.276] W> Failed to open NVME-2, err = 80800601
[0013.281] W> Failed to initialize device 10-2
[0013.285] E> NVME (2) boot failed, err: 0x80800601
[0013.290] I> ########## NVME (3) boot ##########
[0013.294] I> Initializing nvme device instance 3
[0013.299] I> Initializing nvme controller
[0013.303] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14140000
[0013.309] I> vpcie3v3-supply not found
[0013.312] I> vpcie12v-supply not found
[0013.316] W> Failed to get nvidia,plat-gpios
[0013.320] I> tegrabl_pcie_soc_preinit: (3):
[0013.324] I> Unpowergate
[0013.327] I> tegrabl_car_clk_disable(3) ...
[0013.331] I> tegrabl_car_rst_set(CORE, 3) ...
[0013.335] I> tegrabl_car_rst_set(APB, 3) ...
[0013.339] I> tegrabl_car_clk_enable(3) ...
[0013.343] I> tegrabl_car_rst_clear(APB, 3) ...
[0013.347] I> tegrabl_set_ctrl_state(3)
[0013.351] I> CLR PCIE_APB:6
[0013.353] I> tegrabl_pcie_soc_init: (3):
[0013.357] I> APPL initialization ...
[0013.360] I> poweron phys
[0013.363] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14140000
[0013.369] I> tegrabl_power_on_phy: power on phy @0x3e80000
[0014.475] C> Failed to link up controller-3
[0014.475] W> Failed tegrabl_pcie_soc_init(), error=0x12
[0014.476] I> Failed to initialize SoC Host PCIe controller
[0014.476] E> tegrabl_nvme_init: Failed tegrabl_pcie_init(3); error=0x12
[0014.477] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800612
[0014.477] W> Failed to open NVME-3, err = 80800612
[0014.482] W> Failed to initialize device 10-3
[0014.486] E> NVME (3) boot failed, err: 0x80800612
[0014.490] I> ########## NVME (4) boot ##########
[0014.495] I> Initializing nvme device instance 4
[0014.499] I> Initializing nvme controller
[0014.504] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14160000
[0014.510] I> vpcie3v3-supply not found
[0014.513] I> vpcie12v-supply not found
[0014.517] W> Failed to get nvidia,plat-gpios
[0014.521] I> tegrabl_pcie_soc_preinit: (4):
[0014.525] I> Unpowergate
[0014.528] I> tegrabl_car_clk_disable(4) ...
[0014.531] I> tegrabl_car_rst_set(CORE, 4) ...
[0014.536] I> tegrabl_car_rst_set(APB, 4) ...
[0014.540] I> tegrabl_car_clk_enable(4) ...
[0014.544] I> tegrabl_car_rst_clear(APB, 4) ...
[0014.548] I> tegrabl_set_ctrl_state(4)
[0014.552] I> CLR PCIE_APB:6
[0014.554] I> tegrabl_pcie_soc_init: (4):
[0014.558] I> APPL initialization ...
[0014.561] I> poweron phys
[0014.564] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14160000
[0014.570] I> tegrabl_power_on_phy: controller 4 not available
[0014.576] E> Failed to power on phy on controller-4
[0014.581] W> Failed tegrabl_pcie_soc_init(), error=0x1
[0014.585] I> Failed to initialize SoC Host PCIe controller
[0014.591] E> tegrabl_nvme_init: Failed tegrabl_pcie_init(4); error=0x1
[0014.597] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800601
[0014.604] W> Failed to open NVME-4, err = 80800601
[0014.608] W> Failed to initialize device 10-4
[0014.612] E> NVME (4) boot failed, err: 0x80800601
[0014.617] I> ########## NVME (5) boot ##########
[0014.622] I> Initializing nvme device instance 5
[0014.626] I> Initializing nvme controller
[0014.631] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x141a0000
[0014.636] I> i=0, reg_phandle=0x1b
[0014.642] I> reg_voltage=3300000
[0014.643] I> tegrabl_pcie_enable_regulators: regulator_set_voltage(0x1b, 3300000)
[0014.655] I> enabling 'vdd-3v3-pcie' regulator
[0014.655] I> i=1, reg_phandle=0x1c
[0014.660] I> reg_voltage=1200000
[0014.661] I> tegrabl_pcie_enable_regulators: regulator_set_voltage(0x1c, 1200000)
[0014.672] I> enabling 'vdd-12v-pcie' regulator
[0014.673] I> tegrabl_pcie_soc_preinit: (5):
[0014.676] I> Unpowergate
[0014.679] I> tegrabl_car_clk_disable(5) ...
[0014.683] I> tegrabl_car_rst_set(CORE, 5) ...
[0014.687] I> tegrabl_car_rst_set(APB, 5) ...
[0014.691] I> tegrabl_car_clk_enable(5) ...
[0014.695] I> tegrabl_car_rst_clear(APB, 5) ...
[0014.699] I> tegrabl_set_ctrl_state(5)
[0014.703] I> CLR PCIE_APB:6
[0014.705] I> tegrabl_pcie_soc_init: (5):
[0014.709] I> APPL initialization ...
[0014.712] I> poweron phys
[0014.716] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x141a0000
[0014.721] I> tegrabl_power_on_phy: power on phy @0x3eb0000
[0014.727] I> tegrabl_power_on_phy: power on phy @0x3ec0000
[0014.732] I> tegrabl_power_on_phy: power on phy @0x3ed0000
[0014.737] I> tegrabl_power_on_phy: power on phy @0x3ee0000
[0014.743] I> tegrabl_power_on_phy: power on phy @0x3ef0000
[0014.748] I> tegrabl_power_on_phy: power on phy @0x3f00000
[0014.753] I> tegrabl_power_on_phy: power on phy @0x3f10000
[0014.759] I> tegrabl_power_on_phy: power on phy @0x3f20000
[0015.864] C> Failed to link up controller-5
[0015.865] W> Failed tegrabl_pcie_soc_init(), error=0x12
[0015.865] I> Failed to initialize SoC Host PCIe controller
[0015.866] E> tegrabl_nvme_init: Failed tegrabl_pcie_init(5); error=0x12
[0015.866] W> tegrabl_nvme_bdev_open: Failed NVME INIT; error=0x80800612
[0015.867] W> Failed to open NVME-5, err = 80800612
[0015.871] W> Failed to initialize device 10-5
[0015.875] E> NVME (5) boot failed, err: 0x80800612
[0015.880] I> ########## Fixed storage boot ##########
[0015.885] I> Loading kernel-bootctrl from partition
[0015.890] I> Loading partition kernel-bootctrl at 0xa4320000 from device(0x1)
[0015.903] W> tegrabl_get_kernel_bootctrl: magic number(0x00000000) is invalid
[0015.904] W> tegrabl_get_kernel_bootctrl: use default dummy boot control data
[0015.917] I> Already published: 00010003
[0015.917] I> Look for boot partition
[0015.918] I> Fallback: assuming 0th partition is boot partition
[0015.924] I> Detect filesystem
[0015.951] I> Loading extlinux.conf ...
[0015.951] I> Loading extlinux.conf binary from rootfs ...
[0015.951] I> rootfs path: /sdmmc_user/boot/extlinux/extlinux.conf
[0016.006] I> Loading extlinux.conf sig file from rootfs ...
[0016.007] I> rootfs path: /sdmmc_user/boot/extlinux/extlinux.conf.sig
[0016.044] I> Validate extlinux.conf ...
[0016.044] I> T19x: Authenticate extlinux.conf (bin_type: 54), max size 0x2000
[0016.044] I> Encryption fuse is not ON
[0016.045] I> L4T boot options
[0016.045] I> [1]: "primary kernel"
[0016.045] I> Enter choice: 
[0019.046] I> Continuing with default option: 1
[0019.046] I> Loading kernel ...
[0019.046] I> Loading kernel binary from rootfs ...
[0019.047] I> rootfs path: /sdmmc_user/boot/Image
[0019.278] I> Loading kernel sig file from rootfs ...
[0019.278] I> rootfs path: /sdmmc_user/boot/Image.sig
[0019.303] I> overload load_size to 34484232 (from 34484240)
[0019.303] I> Validate kernel ...
[0019.303] I> T19x: Authenticate kernel (bin_type: 37), max size 0x5000000
[0019.617] I> Encryption fuse is not ON
[0019.652] I> Loading kernel-dtb ...
[0019.652] I> No kernel-dtb binary path
[0019.652] I> Continue to load from partition ...
[0019.652] I> A/B: bin_type (38) slot 1
[0019.653] I> Loading kernel-dtb_b from partition
[0019.653] I> Loading partition kernel-dtb_b at 0x91000000 from device(0x1)
[0019.662] I> Validate kernel-dtb ...
[0019.663] I> T19x: Authenticate kernel-dtb (bin_type: 38), max size 0x400000
[0019.666] I> Encryption fuse is not ON
[0019.668] I> Loading ramdisk from rootfs ...
[0019.671] I> Loading ramdisk binary from rootfs ...
[0019.675] I> rootfs path: /sdmmc_user/boot/initrd
[0019.751] I> Loading ramdisk sig file from rootfs ...
[0019.751] I> rootfs path: /sdmmc_user/boot/initrd.sig
[0019.776] I> overload load_size to 7238344 (from 7238352)
[0019.776] I> Validate ramdisk ...
[0019.777] I> T19x: Authenticate ramdisk (bin_type: 54), max size 0x4000000
[0019.843] I> Encryption fuse is not ON
[0019.863] I> Kernel hdr @0xa4320000
[0019.863] I> Kernel dtb @0x90000000
[0019.863] I> decompressor handler not found
[0019.864] I> Copying kernel image (34484232 bytes) from 0xa4320000 to 0x80080000 ... [0019.875] I> Done
[0019.877] I> Updated bpmp info to DTB
[0019.878] I> Ramdisk: Base: 0x92000000; Size: 0x6e72c8
[0019.878] I> Updated initrd info to DTB
[0019.879] W> WARN: Fail to override "console=none" in commandline
[0019.879] I> Active rootfs suffix: 
[0019.879] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0019.886] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0019.894] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0019.901] I> Active slot suffix: _b
[0019.904] I> add_boot_slot_suffix: slot_suffix = _b
[0019.909] I> Linux Cmdline: console=ttyTCU0,115200 video=tegrafb earlycon=tegra_comb_uart,mmio32,0x0c168000 gpt rootfs.slot_suffix= usbcore. 
[0019.934] I> Updated bootarg info to DTB
[0019.937] W> MAC addr invalid!
[0019.940] E> Failed to get WIFI MAC address
[0019.944] W> MAC addr invalid!
[0019.947] E> Failed to get Bluetooth MAC address
[0019.952] I> eeprom_get_mac_addr: MAC (type: 2): 00:04:4b:e5:8f:b1
[0019.958] W> "plugin-manager" doesn't exist, creating
[0019.963] I> Adding /chosen/plugin-manager/cvm
[0019.967] W> "chip-id" doesn't exist, creating
[0019.971] I> Adding /chosen/plugin-manager/chip-id
[0019.976] W> "configs" doesn't exist, creating
[0019.980] I> Adding /chosen/plugin-manager/configs
[0019.985] W> "ids" doesn't exist, creating
[0019.989] I> Adding /chosen/plugin-manager/ids
[0019.993] W> "odm-data" doesn't exist, creating
[0019.997] I> Adding /chosen/plugin-manager/odm-data
[0020.005] W> "memory" doesn't exist, creating
[0020.007] I> [0] START: 0x80000000, END: 0xac000000
[0020.011] I> [1] START: 0xac004000, END: 0xf0ad0000
[0020.016] I> [2] START: 0xf0adc000, END: 0xf0ae0000
[0020.020] I> dram_block larger than 80000000
[0020.025] I> [3] START: 0x100000000, END: 0x880000000
[0020.029] I> added [base:0x80000000, size:0x2c000000] to /memory
[0020.035] I> added [base:0xac200000, size:0x44800000] to /memory
[0020.041] I> added [base:0x100000000, size:0x780000000] to /memory
[0020.048] I> Updated memory info to DTB
[0020.051] E> add_disp_param: failed to get display params for du=0
[0020.057] W> "reset" doesn't exist, creating
[0020.062] I> Adding ecid(000000016459e587100000000a030240) to DT
[0020.067] I> NVG: Logical CPU: 0; MPIDR: 0x80000000
[0020.072] I> NVG: Logical CPU: 1; MPIDR: 0x80000001
[0020.076] I> NVG: Logical CPU: 2; MPIDR: 0x80000100
[0020.081] I> NVG: Logical CPU: 3; MPIDR: 0x80000101
[0020.086] I> NVG: Logical CPU: 4; MPIDR: 0x80000200
[0020.091] I> NVG: Logical CPU: 5; MPIDR: 0x80000201
[0020.095] I> NVG: Logical CPU: 6; MPIDR: 0x80000300
[0020.100] I> NVG: Logical CPU: 7; MPIDR: 0x80000301
[0020.106] W> "misc-data" doesn't exist, creating
[0020.109] I> Boot-device: eMMC
[0020.112] I> Add boot-sdmmc to plugin-manager/misc-data
[0020.117] I> Add storage-sdmmc to plugin-manager/misc-data
[0020.123] W> Unknown storage device
[0020.126] I> Add serial number:1420820014828 as DT property
[0020.132] I> Plugin-manager override starting
[0020.136] I> node /plugin-manager/fragement-tegra-wdt-en matches
[0020.143] I> node /plugin-manager/fragement-soft-wdt matches
[0020.151] I> node /plugin-manager/fragment-pcie-c5-rp matches
[0020.155] I> node /plugin-manager/fragment-tegra-ufs-lane10 matches
[0020.167] I> Disable plugin-manager status in FDT
[0020.167] I> Plugin-manager override finished successfully
[0020.169] I> tegrabl_load_kernel_and_dtb: Done
[0020.173] I> SMD partition is updated.
[0020.200] E> tegrabl_display_clear: display is not initialized
[0020.201] W> Boot logo display failed...
[0020.201] I> Kernel EP: 0x80080000, DTB: 0x90000000
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.253-tegra (buildbrain@mobile-u64-5497-d3000) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d291201
[    0.000000] Boot CPU: AArch64 Processor [4e0f0040]
[    0.000000] OF: fdt:memory scan node memory, reg size 48,
[    0.000000] OF: fdt: - 80000000 ,  2c000000
[    0.000000] OF: fdt: - ac200000 ,  44800000
[    0.000000] OF: fdt: - 100000000 ,  780000000
[    0.000000] earlycon: tegra_comb_uart0 at MMIO32 0x000000000c168000 (options '')
[    0.000000] bootconsole [tegra_comb_uart0] enabled
[    6.528660] cgroup: cgroup2: unknown option "nsdelegate"
[    7.885871] using random self ethernet address
[    7.886007] using random host ethernet address
[    7.943781] random: crng init done
[    7.943893] random: 7 urandom warning(s) missed due to ratelimiting
[    8.507940] using random self ethernet address
[    8.508065] using random host ethernet address
[    8.765923] CPU4: shutdown
[    8.828735] CPU5: shutdown
[    8.906635] CPU6: shutdown
[    8.978243] CPU7: shutdown
[   11.394655] Bridge firewalling registered

Ubuntu 18.04.5 LTS nvidia-desktop ttyTCU0

nvidia-desktop login: 

hello user-man,

FYI,
if update failed, the system still can bootup, and bootloader will use the redundancy one, or another partition slot. the debian system doesn’t have the ability to handle the failure, such as “sudden poweroff”, instead, it should report installation failed, and user can install the package to update again.
thanks

hello JerryChang,

if update failed, the system still can bootup, and bootloader will use the redundancy one, or another partition slot. the debian system doesn’t have the ability to handle the failure, such as “sudden poweroff”, instead, it should report installation failed, and user can install the package to update again.

This is not a function of rootfs redundancy, is it?

Is there any way to see the difference in behavior when rootfs redundancy is disabled and enabled?

I want to see the difference in operation, not the rootfs redundancy status.

hello user-man,

once the device is powered on, user may or may not need to re-trigger the OTA update:
for example,
If the “sudden poweroff” happens in recovery kernel, the OTA update is to be continued once the device is powered again
If the “sudden poweroff” happens in normal kernel, the OTA update need to be re-triggered by user.

hello JerryChang,

If you do a “sudden power off” in the “normal kernel,” the OTA update will fail. And if rootfs redundancy is disabled, you need to flash again.
Conversely, if rootfs redundancy is enabled, it will boot in the original slot.

Is this assumption correct?

yes.

If the “sudden poweroff” happens in normal kernel

How do I perform an OTA update with a “normal” kernel instead of a “recovery” kernel?
Or does the kernel state change during the OTA update?

hello JerryChang,

Please advise as I have yet to resolve this issue.

hello user-man,

you should boot-up with a normal kernel generally.
please see-also this external page for reference, How to restore the kernel in Linux
thanks

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.