Closed lfdmn closed 4 years ago
Try running the update under strace
to see what it's trying to do when it reports the 'Status: 3'. Something like:
# strace -ff -onvup -s256 /usr/sbin/nv_update_engine --install no-reboot
Then look for the 'Status: 3' in the nvup.<PID>
files that get generated. That's what I've done to troubleshoot these problems.
Thanks!
I've attached the nv_bootloader_payload_updater pid file. nvup.6793.txt if someone could send me one for a successful run I'd appreciate and could compare.
I don't find anything. /opt/ota_package/bl_update_payload is read /etc/nv_boot_control.conf is read and nv_bootloader_payload_updater exits without other external calls :/
Hmm. Very mysterious. You did a full flash with R32.3.1 first, right?
Yep I did. I'll try your test distro to see if I get the same.
Signing off for summer break, back in 4 week.
I get the same with your test distro.
I used zeus-32.3.1 branch, fixed some missing symlinks in the layers directory and added tegra-bup-payload to IMAGE_INSTALL in tegra-sysinstall.bb
IMAGE_INSTALL = "packagegroup-core-boot tegra-sysinstall-tools haveged tegra-bup-payload"
Flashed, enabled AB with nv_update_engine and tried nv_update_engine -i no-reboot.
Same Status: 3 :/
I'll try building from a different PC now see if there's any difference.
I just took a closer look at the strace output you sent me, and I think the problem is that your Xavier has a board revision that isn't covered by the update payload.
In R32.3.1, the only board revision covered by the BUP generator is F.0
, whereas your board is revision G.0
. That's probably what's triggering the error.
In L4T R32.4.2, NVIDIA has changed the specs for the 2888-400-0004 models to drop the board revision as a match criterion completely.
Try changing this section in meta-tegra/conf/machine/include/tegra194.inc
:
TEGRA_BUPGEN_SPECS ?= "fab=400;boardsku=0001;boardrev=H.0 \
fab=400;boardsku=0001;boardrev=J.0 \
fab=400;boardsku=0001;boardrev=L.0 \
fab=400;boardsku=0004;boardrev=F.0"
so that last line ends with boardrev=
(i.e., just delete the F.0
).
Spot on!
That works :) Thanks a lot!
I go on holiday before I start testing something else now :D
I've pushed that change to zeus-l4t-r32.3.1 and dunfell.
Hi,
I had bl_update_payload deployment working on warrior, now moving to zeus 32.3.1.
I've updated the partition template to match the new one and added back my custom partitions.
I use tegra-bup-payload_1.0.bb and I strip the filename tags from the partition template for the when signing the bootloader payload.
I have not set any encryption key but I noticed that the bootloader partitions now all have .encrypt suffix. I don't know if this affects anything.
The image builds fine and I can flash the device.
I can find the /opt/ota_package/bl_update_payload size 44607776B.
Slot info before nv_update_engine call
Then the update fails with status 3
And the slot info shows
Any idea what could be the error? Status: 3 doesn't tell much and there's nothing I can find in the l4T Development Guide