-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Backport Tegra Capsule Update #1552
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Maybe it will be better to wait abit for the merge of the foundriesio/lmp-manifest#474 |
@quaresmajose that was my initial plan😊 to merge it after we switch to scrarthgap completely in main( oth meta-lmp and lamp-manifest) |
d799542
to
c73cf92
Compare
@quaresmajose I've rebased on the latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I cannot comment on capsule update behavior, so I only added few comments related with yocto aesthetics
LICENSE = "MPL-2.0" | ||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MPL-2.0;md5=815ca599c9df247a0c7f619bab123dad" | ||
|
||
inherit allarch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why is it allarch?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's just a copy of the existing recipe for ubootenv meta-lmp-base/recipes-sota/aktualizr/aktualizr-fiovb-env-rollback.bb
with the minimal changes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a config snippet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let me know if you want me to drop it
meta-lmp-base/recipes-sota/aktualizr/aktualizr-fioefi-env-rollback.bb
Outdated
Show resolved
Hide resolved
+1 to remove the cherry-pick lines, this is 'main'. |
Introduce recipe, that assembles a "fioefi" script which wraps UEFI Capsule update commands. Scripts provides the same usage API as fiovb/ubootenv apps: $ fioefi_setenv bootupgrade_available 1 $ fioefi_printenv rollback Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Add tegra-specific fioefi script includes. Testing fioefi script: $ export FIO_OSTREE_TARGET_SYSROOT=/ $ fioefi_setenv bootupgrade_available 1 $ reboot .... Update Progress - 100% ************************************************** Shutdown state requested 1 Rebooting system ... When ak-lite is used, it automatically sets a path to the target sysroot via FIO_OSTREE_TARGET_SYSROOT variable. Boot firmware version is obtained from the ESRT table [1]. [1] https://uefi.org/specs/UEFI/2.9_A/23_Firmware_Update_and_Reporting.html Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Enable fioefi MACHINE_FEATURE for tegra by default. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Install fioefi package if fioefi machine feature is enabled. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Introduce support for fioefi rollback mode in aktualizr. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Add tegra-bl.cap UEFI capsule to LMP_BOOT_FIRMWARE_FILES. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Add dependency on tegra-uefi-capsules for lmp-boot-firmware on tegra machines. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Do not install UEFI capsules to rootfs, lmp-boot-firmware should handle that instead. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Enable systemd-boot support by default for Tegra machines. Boot test: Jetson UEFI firmware (version v35.5.0 built on 2024-02-26T13:44:31+00:00) ESC to enter Setup. F11 to enter Boot Manager Menu. Enter to continue boot. ** WARNING: Test Key is used. ** ......EFI stub: Booting Linux Kernel... EFI stub: Using DTB from configuration table EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path EFI stub: Exiting boot services and installing virtual address map... I/TC: Secondary CPU 1 initializing ..... Linux-microPlatform 4.0.20 jetson-agx-xavier-devkit ttyTCU0 jetson-agx-xavier-devkit login: Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Use L4T_VERSION variable, and convert it to the same format as it's currenlty exposed via ESRT table: $ cat /sys/firmware/efi/esrt/entries/entry0/fw_version 2295296 Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Don't install systemd-bless-boot.service, as ak-lite invokes bless-boot tool manually fio SOTA targets with fioefi support. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Fix ESP partition defined path. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Disable nv_update_verifier service, as it's invoked manually by ak-lite for SOTA targets with fioefi support. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Add support for deploying systemd-boot to ESP partition. Considering that default deployment has always index == 0, the filenames in ESP for efi binaries are generated in this way: deployment index path 0: /boot/EFI/BOOT/bootx64.efi 1: /boot/EFI/BOOT/bootx64-1.efi 2: /boot/EFI/BOOT/bootx64-2.efi Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
c73cf92
to
acb12f5
Compare
Good to merge? |
Backport Tegra Capsule Update patches from scarthgap branch