OE4T Meeting Notes 2024 04 11 - OE4T/meta-tegra GitHub Wiki
Video
Attendees
13
Topics
- Recent activity in branches
- Master is updated to 35.5 L4T as well as kirkstone.
- Review the wiki page for gotchas, especially if you have secureboot. Need to update the EKB when doing the update, need to be careful for updates across this release with secureboot.
- Rebase of 36.2 branch in preparation for GA.
- Plan is to keep master up to date when oe core branches from scarthgap, will pull our own scarthgap branch at 35.5.
- When 36.2 goes GA will branch a scarthgap 35.5 branch.
- Scarthgap will move forward with 36 series. Will have two scarthgap branches.
- Kirkstone will stay at 35.x
- Dunfell will be officially retired.
- PR for restructuring the way the capsules are built at https://github.com/OE4T/meta-tegra/pull/1527
- Likely will go to scarthgap only
- Anyone still using bup payloads should be migrating to capsules for updates. Anyone who needs bup payloads should take a look at this PR.
- Experiment - tried using the kernel package for the capsules instead of the bootloader one. Didn’t get applied at all. Possibly providing capsule which included both bootloader and kernel.
- Discussed issues related to using kernel payload capsule.
- Should we stop generating kernel payload capsule at all to avoid confusion?
- Kernel and DTB partition updates reference to swupdate example.
- Best approach may be to switch extlinux.conf as the default, then kernel is available in the root filesystem, could then do away with kernel and dtb android partitions.
- Did some experimenting in the past, only uses android partitions when extlinux not found.
- Need cleanup in the wiki about how all of this should work, how we make it interoperate. Switching to extlinux by default if you are using L4Tlauncher is probably the best approach.
- Should pivot swupdate example to use L4Tlauncher and extlinux
- L4T default is to use extlinux. Main reason we haven’t done that is historical, pre UEFI. Made sense to use android partitions in the past with cboot. However, given where we are with the launcher support and their UEFI, makes sense to change the default to match NVIDIA.
- foundries.io have patches for specific machines which may be relevant regarding extlinux.
- Would like to get systemd-boot to work again. May be possible with later UEFI updates.
- Plan to make L4TLauncher and extlinux the default in master. Will do before we branch scarthgap.
- Could consider backport to kirkstone, but hesitant to do so.
- Container support
- Nvidia is updating their container toolkit in 35.x and 36.
- With 35.x series and 1.11 version, still use csv files to map files into the container from the host. Actual mechanism and when they do the mapping to host changed.
- Previously done as a pre-hook when the container started.
- Patched that to support normal rootfs structure not matching ubuntu and userland binary dependencies in a separate tree for things like gstreamer support.
- Called this “legacy support”
- On the 1.11 update for kirstone and R35, wanted to move filename lookup into go code, deferred this and configured container support to use legacy mode for builds.
- In R36 they updated to 1.14 and eliminated legacy support. Needed to figure out where in go code it needed patching to support the tree of passthrough only binaries. Resolved the filesystem mapping issue and non-unbutu/debian rootfs structure by updating csv file to point to where the files are located. Would prefer to avoid modifying csv files but what we have works. Use ldconfig to locate, doesn’t matter where they are in the filesystem.
- May not be easy to backport, but probably the best direction to take.
- Container toolkit can crash because of some configuration with the go library. Easy way to fix that by attaching an extra flag to the linker. PR at https://github.com/OE4T/meta-tegra/pull/1525 proposes a different change.
- Would like to get rid of legacy mode config switch in R35 based container support and take the patches to the go code and backport to 1.11
- Is anyone using containers on 35.x using anything else related to the legacy support? If so, speak up about the preferred direction to backport go changes from 1.14 and avoid using legacy mode.
- Would appreciate anyone with golang// expertise to help with the backport.
- Long term the NVIDIA goal is to support multiple container frameworks, not just docker. Would like to track this as well, ensure our extra hacks don’t interfere.
- EOSS next week.
- Talk at yocto project mini summit regarding scarthgap
- Will have L4T update slides
- Also ROS updates
- scarthgap state update - various issues resulting in around a 1 week delay.
- Mini summit focus is on scarthgap and 5 year plan. Part of the plan was sovereign tech fund work. Quite a bit of money came in to fund long standing work. Binary reference distro idea: Have something out of yocto project which can be used like ubuntu or debian. Also will enable doing containers in yocto project. Will have definable package feed to install new packages on top.
- vscode plugins and vscode workflow very much improved.
- toaster is improved.
- OTA support
- Open pull request enabling OTA support for mender over jetpack 5 at https://github.com/OE4T/meta-mender-community/pull/19
- Discussed swupdate, mender and rauc current status.