Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update all Orin Boards to L4T 35.5.0 BSP #451

Merged
merged 5 commits into from
Jun 6, 2024

Conversation

acostach
Copy link
Collaborator

@acostach acostach commented Jun 4, 2024

This PR updates all Jetson Orin boards to L4T 35.5.0.

It is the same as #448 where all tests passed, except that all changes to a component are now caught in a single PR, instead of multiple ones for each change in the previous PR.

Connects-to: balena-io/contracts#427

@acostach
Copy link
Collaborator Author

acostach commented Jun 5, 2024

@resin-jenkins retest this please

acostach added 5 commits June 5, 2024 17:11
in which we rename the recipes-classes directory
to recipes, so we can build the layer with
kirkstone.

We also add back the r in the kernel version string,
to avoid breaking the l4t contracts functionality.

Signed-off-by: Alexandru Costache <[email protected]>
…obs to L4T 35.5.0

The UEFI capsules and boot blobs are updated for all devices
currently integrated in this repository:

- AGX Orin 32GB
- Orin NX 16GB Devkit
- Orin Nano SD
- Seeed J4012

Signed-off-by: Alexandru Costache <[email protected]>
Starting with L4T 35.5.0 the jetson-agx-orin-devkit yocto
machine from meta-tegra only specifies and builds the Developer Kit dtb,
without the production module. That module now has a separate
yocto machine. Since we support and test the Devkit with SKU0,
and not hte 32GB produciton module with SKU4, we will continue
to ship the default dtb for this configuration.

Signed-off-by: Alexandru Costache <[email protected]>
… switching to L4T 35.5.0

... and also disable UEFI capsule version checks in the firmware, so that the older
L4T 35.4.1 UEFI capsule can be applied during rollback.

Changelog-entry: edk2-firmware-tegra: Refactor all integration patches when switching to L4T 35.5.0
Signed-off-by: Alexandru Costache <[email protected]>
… becomes unbootable

During rollbacks we trigger the UEFI capsule update from l4T 35.5.0
back to to L4T 35.4.1. The UEFI firmware does not allow this by default,
so we patched it to accept downgrades when checking versions.

However, the alternate slot may become unbootable in this process,
as reported by the MB2 precompiled bootloader
(see AGX Orin comments in HUP hook). In this case, we re-write the
entire QSPI on the next HUP, and start off with a
clean-flashed QSPI at the latest version 35.5.0.

Apart from this we unload spi modules, to allow for future
rollbacks from L4T 36.3 to be able to write the necessary
UEFI variables necessary for triggering the rollback
UEFI capsule update.

Changelog-entry: hostapp-update-hooks: Allow reprovisioning the QSPI if alternate slot becomes unbootable
Signed-off-by: Alexandru Costache <[email protected]>
@acostach acostach force-pushed the update_orins_to_35_5_0 branch from 4f87b15 to c721006 Compare June 5, 2024 17:15
@acostach
Copy link
Collaborator Author

acostach commented Jun 6, 2024

@balena-ci I self-certify!

@flowzone-app flowzone-app bot merged commit 53b2b56 into master Jun 6, 2024
48 checks passed
@flowzone-app flowzone-app bot deleted the update_orins_to_35_5_0 branch June 6, 2024 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant