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

Add swupdate #115

Merged
merged 11 commits into from Feb 16, 2022
Merged

Add swupdate #115

merged 11 commits into from Feb 16, 2022

Conversation

gylstorffq
Copy link
Contributor

@gylstorffq gylstorffq commented Apr 8, 2021

This PR adds a swupdate configuration to meta-iot2050. It uses isar-cip-core as base.

To build the image use:

./kas-container build kas-iot2050-example.yml:kas/opt/swupdate-example.yml

This image will modify the u-boot-environment during first-boot to add the necessary variable for swupdate.

This fixes Issue #50.

.gitignore Outdated Show resolved Hide resolved
@jan-kiszka
Copy link
Collaborator

Several patches are missing your signed-off.

wic/iot2050-swu.wks Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
kas/iot2050.yml Outdated Show resolved Hide resolved
@gylstorffq gylstorffq force-pushed the quirin/add-swupdate branch 3 times, most recently from a92433f to e86ab78 Compare June 1, 2021 08:57
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Show resolved Hide resolved
recipes-core/data-partition/data-partition_0.1.bb Outdated Show resolved Hide resolved
recipes-core/data-partition/files/initramfs.fsck.hook Outdated Show resolved Hide resolved
@gylstorffq gylstorffq force-pushed the quirin/add-swupdate branch 5 times, most recently from cedddd8 to 3de535a Compare June 7, 2021 15:23
@gylstorffq gylstorffq marked this pull request as draft June 7, 2021 15:53
@gylstorffq gylstorffq changed the title Quirin/add swupdate Add swupdate Jun 7, 2021
@jan-kiszka
Copy link
Collaborator

Was anything still missing for this? It probably needs a rebase and a retest with latest kernel now.

@gylstorffq @stormc

@gylstorffq gylstorffq marked this pull request as ready for review August 4, 2021 08:53
@gylstorffq
Copy link
Contributor Author

@jan-kiszka @stormc all issues should be resolved

@BaochengSu
Copy link
Collaborator

@stormc @jan-kiszka

Since this has been standing by for a long time, is it currently mutured enough to go into the master? If so then I will start the merging as soon as possible.

@jan-kiszka
Copy link
Collaborator

Since github is a bit primitive to support reviews: @gylstorffq, what was your last update about? Just rebasing or more? Otherwise, I just has two style comment, but those are non-blockers.

@gylstorffq
Copy link
Contributor Author

Rebase onto origin/master 8d78fb9 and fix white space errors.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
The recipe patch-u-boot-env adds a service which updates
the U-Boot environment on first boot. The update adds the necessary
variables and functions to select the new root file-system after
an update with SWUpdate.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Add a kas option to build an image with SWUpdate.
This build also generates a swu binary for updating
the system.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
After an update the U-Boot variable `ustate` needs to be set to '0'
to confirm the successful update. The script confirm_update.sh
checks the current state and sets it according the argument and
current value of 'ustate' to success or failed.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
The data in the current root file system is no longer accessible after
an update with SWUpdate. For persistent storage between the root file systems
use the data partition.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Add function to start the watchdog before selecting a rootfs to boot.
The watchdog ensures a bootable system in case a update fails.

The systemd 'RuntimeWatchdogSec' has a fixed value of 60s
as the watchdog driver doesn't support updating the timeout
after start. Changing this value will trigger periodic reboots.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
Remove /usr/local/* from the Ubuntu image to
avoid out of disk space error.
This will free around 15G of disk space.

The jobs 'Debian RT example image' and 'Debian example image'
have around 3G free disk space after building the image.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
@gylstorffq
Copy link
Contributor Author

Update isar-cip-core to master f42686485fed540f4e2070f90b97dd66c0884279.

@BaochengSu BaochengSu merged commit 0d20fba into siemens:master Feb 16, 2022
@jan-kiszka
Copy link
Collaborator

We have an integration issue since meta-coral was merged on top: https://github.com/siemens/meta-iot2050/runs/5209073108?check_suite_focus=true. Any ideas, @gylstorffq?

@jan-kiszka
Copy link
Collaborator

...and @fmoessbauer. I'm seeing tensorflow stuff being removed from the buildchroot

@gylstorffq
Copy link
Contributor Author

gylstorffq commented Feb 16, 2022

@jan-kiszka I am looking into it. OK found it the problem is the introduction of debian-build-profiles. I will fix it on cip-core.

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.

None yet

4 participants