DistroKit Mailinglist
 help / color / mirror / Atom feed
From: Roland Hieber <rhi@pengutronix.de>
To: distrokit@pengutronix.de
Cc: Roland Hieber <rhi@pengutronix.de>
Subject: [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC
Date: Mon, 28 Aug 2023 10:57:57 +0200	[thread overview]
Message-ID: <20230828085804.293762-1-rhi@pengutronix.de> (raw)

With this patch series, the first v7a platforms (beaglebone black,
riotboard, rpi3, qemu-vexpress) gain support for redundant boot on two
root partitions which can be updated with RAUC.

Changelog:

PATCH v5 -> v6:
* rebase to current next branch, commit 771add4f5cc1f5a4b3c7
  (2023-08-25, Juergen Borleis: "v7a: barebox: enable loading kernel,
  dtb and initrd via fastboot")
* enable PTXCONF_MTD_UTILS_LSMTD (feedback by Alexander Dahl)

PATCH v4 -> v5:
* rebase to current next branch, commit 6df4aa6726e16b6a889c
  (2023-08-17, Robert Schwebel: "Revert "ptxconfig: disable Y2038
  support, broken on MIPS""), which already includes the first half of
  our v4 series
* enable MTD and UBI/UBIFS tools
* please the QA checker regarding missing kernel features for RAUC
* image-rauc: don't warn about menuconfig statement without prompt

PATCH v3 -> v4:
* rebase to current next branch
  * new ptxdist version, so host-ptx-code-signing-dev now pulls in
    host-python3-* dependencies via host-extract-cert and host-meson
* move platforms/image-rauc.in to platforms/image-rauc.deps.in because
  we only want to add dependencies, not overwrite the whole file

PATCH v2 -> v3: https://lore.distrokit.org/distrokit/20230427100134.2934937-1-rhi@pengutronix.de
* Ahmad notified me off-line that beaglebone and riotboard were using
  the "circular" backend, but since state lives on the eMMC, the
  "direct" backend is better suited.

PATCH v1 -> v2: https://lore.distrokit.org/distrokit/20230426201414.2044409-1-rhi@pengutronix.de
* rebase to current master (PTXdist 2023.04.0)
* new patch: "platforms: revert to default systemd loglevel"
* new patch: "ptxconfig: enable more tools for debugging" (which also
  enables curl, which was previously in the patch enabling RAUC)
* make use of barebox's CONFIG_EXTERNAL_DTS_FRAGMENTS to include a DTS
  fragment for the state variables and the board-specific backends
  instead of patching them into the barebox device trees
  (feedback by Ahmad Fatoum)
* udev: use tr instead of xargs/printf in of_base_compatible
  (feedback by Michael Olbrich)
* udev: add a fallback /dev/disk/by-usage/data symlink for boards not
  targeted by this series
* udev: add missing 'GOTO="rauc_partitions_end"' at the end of each
  block so that the symlink settings are not overwritten by the
  following blocks
* udev: fix partition mapping for RIoTBoard; for some reason the SD card
  is now /dev/mmcblk2 instead of /dev/mmcblk0
* kernel:
  * enable network block device support (BLK_DEV_NBD), needed for RAUC
    HTTPS streaming
  * enable SQUASHFS_FILE_DIRECT and SQUASHFS_DECOMP_MULTI for better
    performance (feedback by Jan Lübbe)
  * enable SQUASHFS_LZ4, SQUASHFS_XZ and SQUASHFS_ZSTD which makes it
    easy to change the bundle compression later. Currently, genimage
    generates zlib-compressed bundles. (feedback by Jan Lübbe)
* rauc: only allow installing verity bundles (feedback by Jan Lübbe)
* new patch: "image-rauc: fork config from PTXdist 2023.04.0"
* new patch: "image-rauc: use ext4 rootfs instead of tar.gz"
  (I discussed with Enrico and Jan offline whether it is useful to have
  this change in upstream PTXdist, but the RAUC image config will be
  rather specific to the BSP anyway, and will be forked to the BSP by
  most users.)
* new patch: "v7a: run: start with barebox by default"

The datapartition clean-up didn't make it yet in this series. RAUC works
without it, and I'll send a separate series once I've figured it out.

Also I disregarded Marco's comment about moving the projectroot stuff
to config/platform-v7a/, since it's not really v7a-specific and can be
re-used on other platforms too when those want to gain RAUC support.

PATCH v1: https://lore.distrokit.org/distrokit/20230212221449.1644628-1-rhi@pengutronix.de

Roland Hieber (7):
  enable MTD and UBI tools
  rauc: add initial support
  silence QA checks regarding missing kernel features for RAUC
  v7a: enable RAUC bundle creation
  image-rauc: fork config file from PTXdist 2023.08.0
  image-rauc: use ext4 rootfs instead of tar.gz
  v7a: run: start with barebox by default

 config/images/rauc.config                     |  22 ++
 configs/platform-mips/kernelconfig            |  92 +++++++-
 configs/platform-mips/kernelconfig-ar9331     |  92 +++++++-
 .../platform-mips/kernelconfig-ar9331.diff    |   2 +-
 configs/platform-mips/kernelconfig-malta      |  11 +-
 configs/platform-mips/kernelconfig-malta.diff |  61 +++---
 configs/platform-mips/platformconfig          |  27 ++-
 configs/platform-mipsel/kernelconfig          |  92 +++++++-
 .../platform-mipsel/kernelconfig-malta.diff   |  47 ++--
 configs/platform-mipsel/platformconfig        |  27 ++-
 configs/platform-rpi1/kernelconfig            | 202 +++++++++++++++++-
 configs/platform-rpi1/platformconfig          |  25 ++-
 configs/platform-v7a/platformconfig           |  37 +++-
 configs/platform-v7a/run                      |   2 +-
 configs/platform-v7a_noneon/kernelconfig      | 108 +++++++++-
 configs/platform-v7a_noneon/platformconfig    |  27 ++-
 configs/platform-v8a/kernelconfig             |  64 +++++-
 configs/platform-v8a/platformconfig           |  24 ++-
 configs/platform-x86_64/kernelconfig          | 173 ++++++++++++++-
 configs/platform-x86_64/platformconfig        |  27 ++-
 configs/ptxconfig                             | 133 +++++++++++-
 platforms/image-rauc.deps.in                  |   6 +
 projectroot/etc/rauc/system.conf              |  17 ++
 .../lib/systemd/system/rauc-mark-good.service |  14 ++
 24 files changed, 1206 insertions(+), 126 deletions(-)
 create mode 100644 config/images/rauc.config
 create mode 100644 platforms/image-rauc.deps.in
 create mode 100644 projectroot/etc/rauc/system.conf
 create mode 100644 projectroot/usr/lib/systemd/system/rauc-mark-good.service

-- 
2.39.2




             reply	other threads:[~2023-08-28  8:58 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-28  8:57 Roland Hieber [this message]
2023-08-28  8:57 ` [DistroKit] [PATCH 1/7] enable MTD and UBI tools Roland Hieber
2023-08-28  8:57 ` [DistroKit] [PATCH 2/7] rauc: add initial support Roland Hieber
2023-08-28  8:58 ` [DistroKit] [PATCH 3/7] silence QA checks regarding missing kernel features for RAUC Roland Hieber
2023-08-28  8:58 ` [DistroKit] [PATCH 4/7] v7a: enable RAUC bundle creation Roland Hieber
2023-08-28  8:58 ` [DistroKit] [PATCH 5/7] image-rauc: fork config file from PTXdist 2023.08.0 Roland Hieber
2023-08-28  8:58 ` [DistroKit] [PATCH 6/7] image-rauc: use ext4 rootfs instead of tar.gz Roland Hieber
2023-08-28  8:58 ` [DistroKit] [PATCH 7/7] v7a: run: start with barebox by default Roland Hieber
2023-08-28  9:01 ` [DistroKit] [PATCH v6 0/7] v7a: add redundant update support via RAUC Roland Hieber
2023-09-26  9:35   ` Roland Hieber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230828085804.293762-1-rhi@pengutronix.de \
    --to=rhi@pengutronix.de \
    --cc=distrokit@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox