DistroKit Mailinglist
 help / color / mirror / Atom feed
* [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC
@ 2023-08-28  8:57 Roland Hieber
  2023-08-28  8:57 ` [DistroKit] [PATCH 1/7] enable MTD and UBI tools Roland Hieber
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:57 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

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




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 1/7] enable MTD and UBI tools
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
@ 2023-08-28  8:57 ` Roland Hieber
  2023-08-28  8:57 ` [DistroKit] [PATCH 2/7] rauc: add initial support Roland Hieber
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:57 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

The v7a kernel has been configured with MTD and UBI/UBIFS support at
least since commit b04ad84da416e79906e5 (2023-04-17, Ahmad Fatoum: "v7a:
kernel: extend support to SAMA5D4-based Wifx L1"), so it should also
have the necessary tools to work with those kinds of devices.

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 configs/ptxconfig | 53 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 52 insertions(+), 1 deletion(-)

diff --git a/configs/ptxconfig b/configs/ptxconfig
index b469734e57e5..93587c690709 100644
--- a/configs/ptxconfig
+++ b/configs/ptxconfig
@@ -1376,7 +1376,58 @@ PTXCONF_MEMTOOL=y
 # PTXCONF_MINICOREDUMPER is not set
 # PTXCONF_MONIT is not set
 # PTXCONF_MTD_OOPSLOG is not set
-# PTXCONF_MTD_UTILS is not set
+PTXCONF_MTD_UTILS=y
+PTXCONF_MTD_UTILS_UBIFS=y
+# PTXCONF_MTD_UTILS_USE_LIBLZO is not set
+# PTXCONF_MTD_UTILS_DOC_LOADBIOS is not set
+# PTXCONF_MTD_UTILS_DOCFDISK is not set
+PTXCONF_MTD_UTILS_FLASH_ERASE=y
+# PTXCONF_MTD_UTILS_FLASH_ERASEALL is not set
+# PTXCONF_MTD_UTILS_FLASH_LOCK is not set
+# PTXCONF_MTD_UTILS_FLASH_OTP_DUMP is not set
+# PTXCONF_MTD_UTILS_FLASH_OTP_INFO is not set
+# PTXCONF_MTD_UTILS_FLASH_OTP_LOCK is not set
+# PTXCONF_MTD_UTILS_FLASH_OTP_WRITE is not set
+# PTXCONF_MTD_UTILS_FLASH_UNLOCK is not set
+# PTXCONF_MTD_UTILS_FLASHCP is not set
+# PTXCONF_MTD_UTILS_FTL_CHECK is not set
+# PTXCONF_MTD_UTILS_FTL_FORMAT is not set
+PTXCONF_MTD_UTILS_LSMTD=y
+# PTXCONF_MTD_UTILS_JFFS2_DUMP is not set
+# PTXCONF_MTD_UTILS_JFFS2READER is not set
+# PTXCONF_MTD_UTILS_MTDDEBUG is not set
+# PTXCONF_MTD_UTILS_MTDPART is not set
+# PTXCONF_MTD_UTILS_NANDDUMP is not set
+# PTXCONF_MTD_UTILS_NANDMARKBAD is not set
+# PTXCONF_MTD_UTILS_NANDTEST is not set
+# PTXCONF_MTD_UTILS_NANDWRITE is not set
+# PTXCONF_MTD_UTILS_NFTL_FORMAT is not set
+# PTXCONF_MTD_UTILS_NFTLDUMP is not set
+# PTXCONF_MTD_UTILS_MKJFFS2 is not set
+# PTXCONF_MTD_UTILS_RECV_IMAGE is not set
+# PTXCONF_MTD_UTILS_RFDDUMP is not set
+# PTXCONF_MTD_UTILS_RFDFORMAT is not set
+# PTXCONF_MTD_UTILS_SERVE_IMAGE is not set
+# PTXCONF_MTD_UTILS_SUMTOOL is not set
+PTXCONF_MTD_UTILS_UBI_UTILS=y
+PTXCONF_MTD_UTILS_UBIATTACH=y
+# PTXCONF_MTD_UTILS_UBIBLOCK is not set
+# PTXCONF_MTD_UTILS_UBICRC32 is not set
+PTXCONF_MTD_UTILS_UBIDETACH=y
+PTXCONF_MTD_UTILS_UBIFORMAT=y
+# PTXCONF_MTD_UTILS_UBIFS_MOUNTHELPER is not set
+# PTXCONF_MTD_UTILS_UBIHEALTHD is not set
+PTXCONF_MTD_UTILS_UBIMKVOL=y
+# PTXCONF_MTD_UTILS_UBIRENAME is not set
+# PTXCONF_MTD_UTILS_UBIRSVOL is not set
+PTXCONF_MTD_UTILS_UBINFO=y
+# PTXCONF_MTD_UTILS_UBINIZE is not set
+PTXCONF_MTD_UTILS_UBIRMVOL=y
+PTXCONF_MTD_UTILS_UBISCAN=y
+# PTXCONF_MTD_UTILS_UBIUPDATEVOL is not set
+PTXCONF_MTD_UTILS_MKFS_UBIFS=y
+PTXCONF_MTD_UTILS_MTDINFO=y
+# PTXCONF_MTD_UTILS_TESTS is not set
 # PTXCONF_MXT_APP is not set
 # PTXCONF_NUMACTL is not set
 # PTXCONF_NVME_CLI is not set
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 2/7] rauc: add initial support
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
  2023-08-28  8:57 ` [DistroKit] [PATCH 1/7] enable MTD and UBI tools Roland Hieber
@ 2023-08-28  8:57 ` Roland Hieber
  2023-08-28  8:58 ` [DistroKit] [PATCH 3/7] silence QA checks regarding missing kernel features for RAUC Roland Hieber
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:57 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

Set up RAUC with a shared system.conf that uses the /dev symlinks which
the rauc-udev package creates based on the Device Tree compatible. Also
add a unit file that marks the booted partition as good after systemd
startup has finished successfully.

The key material for signing the RAUC bundles is provided by the
ptx-code-signing provider used for development, which is a build
dependency of RAUC. Since we can enable RAUC in the ptxconfig for all
platforms, all platforms also need a code signing provider.

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 configs/platform-mips/platformconfig          | 27 ++++++-
 configs/platform-mipsel/platformconfig        | 27 ++++++-
 configs/platform-rpi1/platformconfig          | 25 +++++-
 configs/platform-v7a/platformconfig           | 25 +++++-
 configs/platform-v7a_noneon/platformconfig    | 27 ++++++-
 configs/platform-v8a/platformconfig           | 24 +++++-
 configs/platform-x86_64/platformconfig        | 27 ++++++-
 configs/ptxconfig                             | 80 ++++++++++++++++---
 projectroot/etc/rauc/system.conf              | 17 ++++
 .../lib/systemd/system/rauc-mark-good.service | 14 ++++
 10 files changed, 277 insertions(+), 16 deletions(-)
 create mode 100644 projectroot/etc/rauc/system.conf
 create mode 100644 projectroot/usr/lib/systemd/system/rauc-mark-good.service

diff --git a/configs/platform-mips/platformconfig b/configs/platform-mips/platformconfig
index 9ffabc8c5ad3..9aabaa98f30e 100644
--- a/configs/platform-mips/platformconfig
+++ b/configs/platform-mips/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="mips"
 PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
 PTXCONF_RUNTIME=y
 PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
 PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
 
 #
@@ -204,16 +205,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 
 #
diff --git a/configs/platform-mipsel/platformconfig b/configs/platform-mipsel/platformconfig
index 5325f3b22f30..45653062acbd 100644
--- a/configs/platform-mipsel/platformconfig
+++ b/configs/platform-mipsel/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="mipsel"
 PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
 PTXCONF_RUNTIME=y
 PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
 PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
 
 #
@@ -200,16 +201,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 
 #
diff --git a/configs/platform-rpi1/platformconfig b/configs/platform-rpi1/platformconfig
index 9cb75b2c9ac0..d082725fce08 100644
--- a/configs/platform-rpi1/platformconfig
+++ b/configs/platform-rpi1/platformconfig
@@ -273,20 +273,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_DOSFSTOOLS=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
 PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
 PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
 PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 
 #
diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig
index 29a884b4632f..020527a3e4fe 100644
--- a/configs/platform-v7a/platformconfig
+++ b/configs/platform-v7a/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="v7a"
 PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
 PTXCONF_RUNTIME=y
 PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
 PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
 
 #
@@ -304,21 +305,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_DOSFSTOOLS=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
 PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
 PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
 PTXCONF_HOST_SYSTEM_BC=y
 PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 PTXCONF_HOST_TF_A=y
 
diff --git a/configs/platform-v7a_noneon/platformconfig b/configs/platform-v7a_noneon/platformconfig
index a70d388ff848..6dc800832bb8 100644
--- a/configs/platform-v7a_noneon/platformconfig
+++ b/configs/platform-v7a_noneon/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="v7a_noneon"
 PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
 PTXCONF_RUNTIME=y
 PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
 PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
 
 #
@@ -256,19 +257,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_DOSFSTOOLS=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
 PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
 PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 
 #
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 2ed0d2afb50d..c627529435a0 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -296,21 +296,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
 PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LIBUSB=y
 PTXCONF_HOST_LZ4=y
 PTXCONF_HOST_LZOP=y
 PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
 PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
 PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 PTXCONF_HOST_ZSTD=y
 
diff --git a/configs/platform-x86_64/platformconfig b/configs/platform-x86_64/platformconfig
index c8bf5fdcc7a8..9c9dc77595de 100644
--- a/configs/platform-x86_64/platformconfig
+++ b/configs/platform-x86_64/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="x86_64"
 PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
 PTXCONF_RUNTIME=y
 PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
 PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
 
 #
@@ -237,16 +238,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
 # PTXCONF_KERNEL_FIT is not set
 # end of image creation options        
 
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
 PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
 PTXCONF_HOST_LIBCONFUSE=y
 PTXCONF_HOST_LIBELF=y
+PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
 PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
 PTXCONF_HOST_LZOP=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
 PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
 PTXCONF_HOST_ZLIB=y
 
diff --git a/configs/ptxconfig b/configs/ptxconfig
index 93587c690709..2ad07e2a6a78 100644
--- a/configs/ptxconfig
+++ b/configs/ptxconfig
@@ -133,6 +133,7 @@ PTXCONF_HOST_SYSTEM_PYTHON3_JINJA2=y
 PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_XORGPROTO=y
 PTXCONF_HOST_ZLIB=y
+PTXCONF_CODE_SIGNING=y
 PTXCONF_HOST_AUTOTOOLS_AUTOCONF=y
 PTXCONF_HOST_AUTOTOOLS_AUTOMAKE=y
 PTXCONF_HOST_AUTOTOOLS_LIBTOOL=y
@@ -551,7 +552,7 @@ PTXCONF_BUSYBOX_FEATURE_GZIP_DECOMPRESS=y
 PTXCONF_BUSYBOX_TAR=y
 PTXCONF_BUSYBOX_FEATURE_TAR_LONG_OPTIONS=y
 PTXCONF_BUSYBOX_FEATURE_TAR_CREATE=y
-# PTXCONF_BUSYBOX_FEATURE_TAR_AUTODETECT is not set
+PTXCONF_BUSYBOX_FEATURE_TAR_AUTODETECT=y
 PTXCONF_BUSYBOX_FEATURE_TAR_FROM=y
 # PTXCONF_BUSYBOX_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
 # PTXCONF_BUSYBOX_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
@@ -941,7 +942,8 @@ PTXCONF_BUSYBOX_SULOGIN=y
 #
 # PTXCONF_BUSYBOX_ACPID is not set
 # PTXCONF_BUSYBOX_BLKDISCARD is not set
-# PTXCONF_BUSYBOX_BLKID is not set
+PTXCONF_BUSYBOX_BLKID=y
+PTXCONF_BUSYBOX_FEATURE_BLKID_TYPE=y
 # PTXCONF_BUSYBOX_BLOCKDEV is not set
 # PTXCONF_BUSYBOX_CAL is not set
 # PTXCONF_BUSYBOX_CHRT is not set
@@ -1014,6 +1016,38 @@ PTXCONF_BUSYBOX_RENICE=y
 # PTXCONF_BUSYBOX_UMOUNT is not set
 # PTXCONF_BUSYBOX_UNSHARE is not set
 # PTXCONF_BUSYBOX_WALL is not set
+PTXCONF_BUSYBOX_VOLUMEID=y
+
+#
+# Filesystem/Volume identification
+#
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_BCACHE=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_BTRFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_CRAMFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EROFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EXFAT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EXT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_F2FS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_FAT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_HFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_ISO9660=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_JFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LINUXRAID=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LINUXSWAP=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LUKS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_MINIX=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_NILFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_NTFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_OCFS2=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_REISERFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_ROMFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_SQUASHFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_SYSV=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_UBIFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_UDF=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_XFS=y
+# end of Filesystem/Volume identification
 # end of Linux System Utilities
 
 #
@@ -1315,7 +1349,8 @@ PTXCONF_BUSYBOX_LOGGER=y
 # PTXCONF_DFU_UTIL is not set
 # PTXCONF_DIALOG is not set
 # PTXCONF_DIFFUTILS is not set
-# PTXCONF_DT_UTILS is not set
+PTXCONF_DT_UTILS=y
+# PTXCONF_DT_UTILS_STATE_COMPAT is not set
 # PTXCONF_EFIBOOTMGR is not set
 # PTXCONF_EFIVAR is not set
 # PTXCONF_FIGLET is not set
@@ -1613,7 +1648,10 @@ PTXCONF_UTIL_LINUX_SFDISK=y
 #
 # misc-utils
 #
-# PTXCONF_UTIL_LINUX_BLKID is not set
+
+#
+# BusyBox' blkid is selected!
+#
 # PTXCONF_UTIL_LINUX_FINDFS is not set
 # PTXCONF_UTIL_LINUX_GETOPT is not set
 PTXCONF_UTIL_LINUX_LSBLK=y
@@ -2054,6 +2092,7 @@ PTXCONF_E2FSPROGS=y
 #
 # build options                 
 #
+PTXCONF_E2FSPROGS_RESIZER=y
 # end of build options                 
 
 #
@@ -2089,7 +2128,7 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT2=y
 PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT3=y
 PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
 # PTXCONF_E2FSPROGS_INSTALL_MKLOSTANDFOUND is not set
-# PTXCONF_E2FSPROGS_INSTALL_RESIZE2FS is not set
+PTXCONF_E2FSPROGS_INSTALL_RESIZE2FS=y
 # PTXCONF_E2FSPROGS_INSTALL_TUNE2FS is not set
 # end of binaries                      
 
@@ -2108,7 +2147,18 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
 # PTXCONF_QUOTA_TOOLS is not set
 # PTXCONF_SAMBA is not set
 # PTXCONF_SDPARM is not set
-# PTXCONF_SQUASHFS_TOOLS is not set
+PTXCONF_SQUASHFS_TOOLS=y
+
+#
+# build options
+#
+# PTXCONF_SQUASHFS_TOOLS_ZSTD_SUPPORT is not set
+
+#
+# install options
+#
+# PTXCONF_SQUASHFS_TOOLS_MKSQUASHFS is not set
+PTXCONF_SQUASHFS_TOOLS_UNSQUASHFS=y
 # PTXCONF_SSHFS is not set
 # PTXCONF_UNZIP is not set
 # PTXCONF_XFSPROGS is not set
@@ -2151,7 +2201,19 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
 # PTXCONF_LPC21ISP is not set
 # PTXCONF_MYSQLDB is not set
 # PTXCONF_RAUC_HAWKBIT_UPDATER is not set
-# PTXCONF_RAUC is not set
+PTXCONF_RAUC=y
+# PTXCONF_RAUC_CREATE is not set
+PTXCONF_RAUC_SERVICE=y
+PTXCONF_RAUC_NETWORK=y
+PTXCONF_RAUC_STREAMING=y
+PTXCONF_RAUC_JSON=y
+# PTXCONF_RAUC_GPT is not set
+PTXCONF_RAUC_CONFIGURATION=y
+PTXCONF_RAUC_COMPATIBLE="${PTXCONF_PROJECT_VENDOR} ${PTXCONF_PROJECT}"
+PTXCONF_RAUC_BUNDLE_VERSION="${PTXDIST_BSP_AUTOVERSION}"
+PTXCONF_RAUC_BAREBOX=y
+# PTXCONF_RAUC_U_BOOT is not set
+# PTXCONF_RAUC_EFI is not set
 # end of Applications                  
 
 #
@@ -2561,11 +2623,11 @@ PTXCONF_DBUS_SYSTEMD_UNIT=y
 # PTXCONF_GLIB_NETWORKING is not set
 PTXCONF_GLIB=y
 # PTXCONF_GLIB_GDBUS is not set
-# PTXCONF_GLIB_LIBMOUNT is not set
+PTXCONF_GLIB_LIBMOUNT=y
 # PTXCONF_GOBJECT_INTROSPECTION_HELPER is not set
 # PTXCONF_GTK_ENGINES is not set
 # PTXCONF_GTK is not set
-# PTXCONF_JSON_GLIB is not set
+PTXCONF_JSON_GLIB=y
 # PTXCONF_LIBGEE is not set
 # PTXCONF_LIBRSVG is not set
 # PTXCONF_PANGO is not set
diff --git a/projectroot/etc/rauc/system.conf b/projectroot/etc/rauc/system.conf
new file mode 100644
index 000000000000..191a2a1e4f8e
--- /dev/null
+++ b/projectroot/etc/rauc/system.conf
@@ -0,0 +1,17 @@
+[system]
+compatible=@RAUC_BUNDLE_COMPATIBLE@
+bootloader=barebox
+bundle-formats=verity
+
+[keyring]
+path=/etc/rauc/ca.cert.pem
+
+[slot.rootfs.0]
+device=/dev/disk/by-usage/rootfs0
+type=ext4
+bootname=system0
+
+[slot.rootfs.1]
+device=/dev/disk/by-usage/rootfs1
+type=ext4
+bootname=system1
diff --git a/projectroot/usr/lib/systemd/system/rauc-mark-good.service b/projectroot/usr/lib/systemd/system/rauc-mark-good.service
new file mode 100644
index 000000000000..89f56594766a
--- /dev/null
+++ b/projectroot/usr/lib/systemd/system/rauc-mark-good.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=RAUC Good-marking Service
+ConditionKernelCommandLine=|bootchooser.active
+ConditionKernelCommandLine=|rauc.slot
+Requires=boot-complete.target
+After=boot-complete.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/bin/rauc status mark-good
+
+[Install]
+WantedBy=multi-user.target
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 3/7] silence QA checks regarding missing kernel features for RAUC
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
  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 ` Roland Hieber
  2023-08-28  8:58 ` [DistroKit] [PATCH 4/7] v7a: enable RAUC bundle creation Roland Hieber
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:58 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

Since we can only select RAUC in the ptxconfig for all platforms, PTX
internal QA tooling warns that necessary features for RAUC are missing
in the kernelconfigs on non-v7a platforms.

The issue of overriding the tests on the platform level seems a bit
harder to fix in the QA tool, so until that can be done, please the QA
checker by enabling the necessary features in all remaining kernels to
make the PTX Jenkins tests green again.

If the QA tool is fixed, this commit can be reverted.

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 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-mipsel/kernelconfig          |  92 +++++++-
 .../platform-mipsel/kernelconfig-malta.diff   |  47 ++--
 configs/platform-rpi1/kernelconfig            | 202 +++++++++++++++++-
 configs/platform-v7a_noneon/kernelconfig      | 108 +++++++++-
 configs/platform-v8a/kernelconfig             |  64 +++++-
 configs/platform-x86_64/kernelconfig          | 173 ++++++++++++++-
 11 files changed, 837 insertions(+), 107 deletions(-)

diff --git a/configs/platform-mips/kernelconfig b/configs/platform-mips/kernelconfig
index 259ca1cf7f09..04fb081dc9d2 100644
--- a/configs/platform-mips/kernelconfig
+++ b/configs/platform-mips/kernelconfig
@@ -524,6 +524,8 @@ CONFIG_EFI_PARTITION=y
 # end of Partition Types
 
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1219,7 +1221,12 @@ CONFIG_MTD_PHYSMAP_OF=y
 # CONFIG_MTD_LPDDR is not set
 # end of LPDDR & LPDDR2 PCM memory drivers
 
-# CONFIG_MTD_UBI is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
 # CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
@@ -1234,7 +1241,9 @@ CONFIG_OF_RESERVED_MEM=y
 # CONFIG_PARPORT is not set
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
-# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_ZRAM is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_RAM is not set
@@ -1306,7 +1315,38 @@ CONFIG_SCSI_MOD=y
 
 CONFIG_HAVE_PATA_PLATFORM=y
 # CONFIG_ATA is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 CONFIG_NETDEVICES=y
 CONFIG_NET_CORE=y
@@ -2550,8 +2590,33 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
 # CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
 # CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
 # CONFIG_VXFS_FS is not set
 # CONFIG_MINIX_FS is not set
 # CONFIG_OMFS_FS is not set
@@ -2572,6 +2637,7 @@ CONFIG_NFS_V4=y
 CONFIG_NFS_V4_1=y
 CONFIG_NFS_V4_2=y
 CONFIG_PNFS_FILE_LAYOUT=y
+CONFIG_PNFS_BLOCK=y
 CONFIG_PNFS_FLEXFILE_LAYOUT=y
 CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
 # CONFIG_NFS_V4_1_MIGRATION is not set
@@ -2706,6 +2772,7 @@ CONFIG_CRYPTO_SKCIPHER2=y
 CONFIG_CRYPTO_HASH=y
 CONFIG_CRYPTO_HASH2=y
 CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_ACOMP2=y
 # CONFIG_CRYPTO_MANAGER is not set
 # CONFIG_CRYPTO_USER is not set
 CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
@@ -2809,12 +2876,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -2834,6 +2901,8 @@ CONFIG_CRYPTO_CRC32C=y
 # CONFIG_CRYPTO_USER_API_AEAD is not set
 # end of Userspace interface
 
+CONFIG_CRYPTO_HASH_INFO=y
+
 #
 # Accelerated Cryptographic Algorithms for CPU (mips)
 #
@@ -2902,7 +2971,15 @@ CONFIG_CRC32_SARWATE=y
 # CONFIG_CRC7 is not set
 CONFIG_LIBCRC32C=y
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 # CONFIG_XZ_DEC_X86 is not set
 # CONFIG_XZ_DEC_POWERPC is not set
@@ -2928,6 +3005,7 @@ CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
 CONFIG_DMA_NONCOHERENT_MMAP=y
 # CONFIG_DMA_API_DEBUG is not set
 # CONFIG_DMA_MAP_BENCHMARK is not set
+CONFIG_SGL_ALLOC=y
 CONFIG_DQL=y
 CONFIG_GLOB=y
 # CONFIG_GLOB_SELFTEST is not set
diff --git a/configs/platform-mips/kernelconfig-ar9331 b/configs/platform-mips/kernelconfig-ar9331
index 312c15df1ae2..90a6d55db5aa 100644
--- a/configs/platform-mips/kernelconfig-ar9331
+++ b/configs/platform-mips/kernelconfig-ar9331
@@ -506,6 +506,8 @@ CONFIG_EFI_PARTITION=y
 # end of Partition Types
 
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1197,7 +1199,12 @@ CONFIG_MTD_PHYSMAP_OF=y
 # CONFIG_MTD_LPDDR is not set
 # end of LPDDR & LPDDR2 PCM memory drivers
 
-# CONFIG_MTD_UBI is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
 # CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
@@ -1212,7 +1219,9 @@ CONFIG_OF_RESERVED_MEM=y
 # CONFIG_PARPORT is not set
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
-# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_ZRAM is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_RAM is not set
@@ -1284,7 +1293,38 @@ CONFIG_SCSI_MOD=y
 
 CONFIG_HAVE_PATA_PLATFORM=y
 # CONFIG_ATA is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 CONFIG_NETDEVICES=y
 CONFIG_NET_CORE=y
@@ -2538,8 +2578,33 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
 # CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
 # CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
 # CONFIG_VXFS_FS is not set
 # CONFIG_MINIX_FS is not set
 # CONFIG_OMFS_FS is not set
@@ -2560,6 +2625,7 @@ CONFIG_NFS_V4=y
 CONFIG_NFS_V4_1=y
 CONFIG_NFS_V4_2=y
 CONFIG_PNFS_FILE_LAYOUT=y
+CONFIG_PNFS_BLOCK=y
 CONFIG_PNFS_FLEXFILE_LAYOUT=y
 CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
 # CONFIG_NFS_V4_1_MIGRATION is not set
@@ -2694,6 +2760,7 @@ CONFIG_CRYPTO_SKCIPHER2=y
 CONFIG_CRYPTO_HASH=y
 CONFIG_CRYPTO_HASH2=y
 CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_ACOMP2=y
 # CONFIG_CRYPTO_MANAGER is not set
 # CONFIG_CRYPTO_USER is not set
 CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
@@ -2797,12 +2864,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -2822,6 +2889,8 @@ CONFIG_CRYPTO_CRC32C=y
 # CONFIG_CRYPTO_USER_API_AEAD is not set
 # end of Userspace interface
 
+CONFIG_CRYPTO_HASH_INFO=y
+
 #
 # Accelerated Cryptographic Algorithms for CPU (mips)
 #
@@ -2890,7 +2959,15 @@ CONFIG_CRC32_SARWATE=y
 # CONFIG_CRC7 is not set
 CONFIG_LIBCRC32C=y
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 # CONFIG_XZ_DEC_X86 is not set
 # CONFIG_XZ_DEC_POWERPC is not set
@@ -2916,6 +2993,7 @@ CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
 CONFIG_DMA_NONCOHERENT_MMAP=y
 # CONFIG_DMA_API_DEBUG is not set
 # CONFIG_DMA_MAP_BENCHMARK is not set
+CONFIG_SGL_ALLOC=y
 CONFIG_DQL=y
 CONFIG_GLOB=y
 # CONFIG_GLOB_SELFTEST is not set
diff --git a/configs/platform-mips/kernelconfig-ar9331.diff b/configs/platform-mips/kernelconfig-ar9331.diff
index 85c7ad8f6594..fbbe29b2900e 100644
--- a/configs/platform-mips/kernelconfig-ar9331.diff
+++ b/configs/platform-mips/kernelconfig-ar9331.diff
@@ -1,4 +1,4 @@
-8437b9b145f7b4aa84b65c9d9018e86d
+c0e30e5e16bf9a98041c3698514536dd
 # CONFIG_ACORN_PARTITION is undefined
 # CONFIG_AIX_PARTITION is undefined
 # CONFIG_AMIGA_PARTITION is undefined
diff --git a/configs/platform-mips/kernelconfig-malta b/configs/platform-mips/kernelconfig-malta
index a4f3571e815d..b288a063b83c 100644
--- a/configs/platform-mips/kernelconfig-malta
+++ b/configs/platform-mips/kernelconfig-malta
@@ -1458,6 +1458,7 @@ CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
 # CONFIG_BLK_DEV_FD is not set
 # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+# CONFIG_ZRAM is not set
 CONFIG_BLK_DEV_LOOP=m
 CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
@@ -3504,11 +3505,11 @@ CONFIG_CRYPTO_CRC32C=y
 # Compression
 #
 CONFIG_CRYPTO_DEFLATE=m
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -3619,9 +3620,15 @@ CONFIG_CRC32_SLICEBY8=y
 # CONFIG_CRC7 is not set
 CONFIG_LIBCRC32C=m
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
 CONFIG_ZLIB_INFLATE=m
 CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 # CONFIG_XZ_DEC is not set
 CONFIG_GENERIC_ALLOCATOR=y
 CONFIG_TEXTSEARCH=y
diff --git a/configs/platform-mips/kernelconfig-malta.diff b/configs/platform-mips/kernelconfig-malta.diff
index 9b26cefbcc9e..37051143928c 100644
--- a/configs/platform-mips/kernelconfig-malta.diff
+++ b/configs/platform-mips/kernelconfig-malta.diff
@@ -1,4 +1,4 @@
-8437b9b145f7b4aa84b65c9d9018e86d
+c0e30e5e16bf9a98041c3698514536dd
 # CONFIG_8139CP is not set
 # CONFIG_8139TOO is not set
 # CONFIG_ACENIC is not set
@@ -80,7 +80,6 @@ CONFIG_AX88796=m
 # CONFIG_BATMAN_ADV_MCAST is undefined
 # CONFIG_BATMAN_ADV_NC is undefined
 # CONFIG_BATMAN_ADV_TRACING is undefined
-# CONFIG_BCACHE is not set
 CONFIG_BCM_NET_PHYLIB=m
 # CONFIG_BE2ISCSI is not set
 # CONFIG_BE2NET is not set
@@ -92,18 +91,14 @@ CONFIG_BLK_DEV_BSG=y
 CONFIG_BLK_DEV_BSGLIB=y
 CONFIG_BLK_DEV_BSG_COMMON=y
 CONFIG_BLK_DEV_DM=m
-CONFIG_BLK_DEV_DM_BUILTIN=y
 # CONFIG_BLK_DEV_FD is not set
 CONFIG_BLK_DEV_LOOP=m
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 CONFIG_BLK_DEV_MD=m
 # CONFIG_BLK_DEV_NVME is not set
 # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
 CONFIG_BLK_DEV_SD=y
 # CONFIG_BLK_DEV_SR is not set
 CONFIG_BLK_MQ_PCI=y
-CONFIG_BLK_MQ_STACKING=y
-CONFIG_BLOCK_HOLDER_DEPRECATED=y
 CONFIG_BLOCK_LEGACY_AUTOLOAD=y
 # CONFIG_BNA is not set
 # CONFIG_BNX2 is not set
@@ -192,7 +187,6 @@ CONFIG_CRC32_SLICEBY8=y
 # CONFIG_CRC_CCITT is not set
 CONFIG_CRC_ITU_T=m
 CONFIG_CROSS_MEMORY_ATTACH=y
-CONFIG_CRYPTO_ACOMP2=y
 CONFIG_CRYPTO_AEAD2=y
 CONFIG_CRYPTO_AEAD=m
 CONFIG_CRYPTO_AES=m
@@ -230,7 +224,6 @@ CONFIG_CRYPTO_ESSIV=m
 CONFIG_CRYPTO_FCRYPT=m
 CONFIG_CRYPTO_GCM=m
 CONFIG_CRYPTO_GHASH=m
-CONFIG_CRYPTO_HASH_INFO=y
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_JITTERENTROPY=m
@@ -274,33 +267,19 @@ CONFIG_DEVPORT=y
 CONFIG_DEV_APPLETALK=m
 # CONFIG_DL2K is not set
 CONFIG_DM_BUFIO=m
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_CLONE is not set
 CONFIG_DM_CRYPT=m
-# CONFIG_DM_DEBUG is not set
-# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_INTEGRITY is not set
+# CONFIG_DM_INIT is undefined
 # CONFIG_DM_LOG_USERSPACE is not set
-# CONFIG_DM_LOG_WRITES is not set
 CONFIG_DM_MIRROR=m
 CONFIG_DM_MULTIPATH=m
 # CONFIG_DM_MULTIPATH_HST is not set
 # CONFIG_DM_MULTIPATH_IOA is not set
 # CONFIG_DM_MULTIPATH_QL is not set
 # CONFIG_DM_MULTIPATH_ST is not set
-# CONFIG_DM_RAID is not set
 CONFIG_DM_SNAPSHOT=m
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_THIN_PROVISIONING is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_UNSTRIPED is not set
 # CONFIG_DM_VERITY is not set
-# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_VERITY_FEC is undefined
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is undefined
 CONFIG_DM_ZERO=m
 CONFIG_DNOTIFY=y
 # CONFIG_DNS_RESOLVER is not set
@@ -793,7 +772,6 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
 CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
 CONFIG_MARVELL_PHY=m
 # CONFIG_MAX63XX_WATCHDOG is undefined
-CONFIG_MD=y
 CONFIG_MDIO=m
 CONFIG_MDIO_BITBANG=m
 CONFIG_MDIO_BUS=m
@@ -898,11 +876,7 @@ CONFIG_MTD_OOPS=m
 # CONFIG_MTD_PHYSMAP_VERSATILE is undefined
 # CONFIG_MTD_PMC551 is not set
 CONFIG_MTD_UBI=m
-CONFIG_MTD_UBI_BEB_LIMIT=20
-# CONFIG_MTD_UBI_BLOCK is not set
-# CONFIG_MTD_UBI_FASTMAP is not set
 CONFIG_MTD_UBI_GLUEBI=m
-CONFIG_MTD_UBI_WL_THRESHOLD=4096
 CONFIG_MULTIPLEXER=y
 # CONFIG_MUX_ADG792A is not set
 # CONFIG_MUX_MMIO is not set
@@ -1288,6 +1262,7 @@ CONFIG_PHY_CAN_TRANSCEIVER=y
 # CONFIG_PINMUX is undefined
 CONFIG_PKCS7_MESSAGE_PARSER=y
 # CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set
+# CONFIG_PNFS_BLOCK is undefined
 # CONFIG_PNFS_FILE_LAYOUT is undefined
 # CONFIG_PNFS_FLEXFILE_LAYOUT is undefined
 CONFIG_POWER_RESET=y
@@ -1604,7 +1579,6 @@ CONFIG_SERIO_SERPORT=y
 # CONFIG_SFP is undefined
 CONFIG_SGETMASK_SYSCALL=y
 # CONFIG_SGI_PARTITION is undefined
-CONFIG_SGL_ALLOC=y
 CONFIG_SG_POOL=y
 # CONFIG_SIS190 is not set
 # CONFIG_SIS900 is not set
@@ -1623,6 +1597,22 @@ CONFIG_SOCK_RX_QUEUE_MAPPING=y
 # CONFIG_SOFT_WATCHDOG is undefined
 # CONFIG_SOLARIS_X86_PARTITION is undefined
 # CONFIG_SQUASHFS is undefined
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is undefined
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE is undefined
+# CONFIG_SQUASHFS_DECOMP_SINGLE is undefined
+# CONFIG_SQUASHFS_EMBEDDED is undefined
+# CONFIG_SQUASHFS_FILE_CACHE is undefined
+# CONFIG_SQUASHFS_FILE_DIRECT is undefined
+# CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE is undefined
+# CONFIG_SQUASHFS_LZ4 is undefined
+# CONFIG_SQUASHFS_LZO is undefined
+# CONFIG_SQUASHFS_XATTR is undefined
+# CONFIG_SQUASHFS_XZ is undefined
+# CONFIG_SQUASHFS_ZLIB is undefined
+# CONFIG_SQUASHFS_ZSTD is undefined
 # CONFIG_STAGING is not set
 # CONFIG_STAGING_BOARD is undefined
 # CONFIG_STAGING_MEDIA is undefined
@@ -1698,6 +1688,15 @@ CONFIG_TIMER_PROBE=y
 # CONFIG_TPS65010 is undefined
 CONFIG_TUN=m
 # CONFIG_TXGBE is not set
+# CONFIG_UBIFS_ATIME_SUPPORT is undefined
+# CONFIG_UBIFS_FS is undefined
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is undefined
+# CONFIG_UBIFS_FS_AUTHENTICATION is undefined
+# CONFIG_UBIFS_FS_LZO is undefined
+# CONFIG_UBIFS_FS_SECURITY is undefined
+# CONFIG_UBIFS_FS_XATTR is undefined
+# CONFIG_UBIFS_FS_ZLIB is undefined
+# CONFIG_UBIFS_FS_ZSTD is undefined
 # CONFIG_UEVENT_HELPER is not set
 # CONFIG_UEVENT_HELPER_PATH is undefined
 # CONFIG_UFS_FS is undefined
diff --git a/configs/platform-mipsel/kernelconfig b/configs/platform-mipsel/kernelconfig
index 2d33e1a31cd5..a8c8f1ceac52 100644
--- a/configs/platform-mipsel/kernelconfig
+++ b/configs/platform-mipsel/kernelconfig
@@ -595,6 +595,8 @@ CONFIG_EFI_PARTITION=y
 # end of Partition Types
 
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1300,7 +1302,12 @@ CONFIG_MTD_PHYSMAP_OF=y
 # CONFIG_MTD_LPDDR is not set
 # end of LPDDR & LPDDR2 PCM memory drivers
 
-# CONFIG_MTD_UBI is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
 # CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
@@ -1317,7 +1324,9 @@ CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
 # CONFIG_BLK_DEV_FD is not set
-# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_ZRAM is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_RAM is not set
@@ -1389,7 +1398,38 @@ CONFIG_SCSI_MOD=y
 
 CONFIG_HAVE_PATA_PLATFORM=y
 # CONFIG_ATA is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 CONFIG_NETDEVICES=y
 CONFIG_NET_CORE=y
@@ -2631,8 +2671,33 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
 # CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
 # CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
 # CONFIG_VXFS_FS is not set
 # CONFIG_MINIX_FS is not set
 # CONFIG_OMFS_FS is not set
@@ -2653,6 +2718,7 @@ CONFIG_NFS_V4=y
 CONFIG_NFS_V4_1=y
 CONFIG_NFS_V4_2=y
 CONFIG_PNFS_FILE_LAYOUT=y
+CONFIG_PNFS_BLOCK=y
 CONFIG_PNFS_FLEXFILE_LAYOUT=y
 CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
 # CONFIG_NFS_V4_1_MIGRATION is not set
@@ -2787,6 +2853,7 @@ CONFIG_CRYPTO_SKCIPHER2=y
 CONFIG_CRYPTO_HASH=y
 CONFIG_CRYPTO_HASH2=y
 CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_ACOMP2=y
 # CONFIG_CRYPTO_MANAGER is not set
 # CONFIG_CRYPTO_USER is not set
 CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
@@ -2891,12 +2958,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -2916,6 +2983,8 @@ CONFIG_CRYPTO_CRC32C=y
 # CONFIG_CRYPTO_USER_API_AEAD is not set
 # end of Userspace interface
 
+CONFIG_CRYPTO_HASH_INFO=y
+
 #
 # Accelerated Cryptographic Algorithms for CPU (mips)
 #
@@ -2984,7 +3053,15 @@ CONFIG_CRC32_SARWATE=y
 # CONFIG_CRC7 is not set
 CONFIG_LIBCRC32C=y
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 # CONFIG_XZ_DEC_X86 is not set
 # CONFIG_XZ_DEC_POWERPC is not set
@@ -3010,6 +3087,7 @@ CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
 CONFIG_DMA_NONCOHERENT_MMAP=y
 # CONFIG_DMA_API_DEBUG is not set
 # CONFIG_DMA_MAP_BENCHMARK is not set
+CONFIG_SGL_ALLOC=y
 # CONFIG_FORCE_NR_CPUS is not set
 CONFIG_CPU_RMAP=y
 CONFIG_DQL=y
diff --git a/configs/platform-mipsel/kernelconfig-malta.diff b/configs/platform-mipsel/kernelconfig-malta.diff
index d4e48c2e04e5..941646631905 100644
--- a/configs/platform-mipsel/kernelconfig-malta.diff
+++ b/configs/platform-mipsel/kernelconfig-malta.diff
@@ -1,4 +1,4 @@
-f57700450171832e4bfc04203a5ca64a
+bb72d3559ad286bbed584fb7dce43ed7
 # CONFIG_8139CP is not set
 # CONFIG_8139TOO is not set
 # CONFIG_ACENIC is not set
@@ -73,7 +73,6 @@ CONFIG_AX88796=m
 # CONFIG_BATMAN_ADV_MCAST is undefined
 # CONFIG_BATMAN_ADV_NC is undefined
 # CONFIG_BATMAN_ADV_TRACING is undefined
-# CONFIG_BCACHE is not set
 CONFIG_BCM_NET_PHYLIB=m
 # CONFIG_BE2ISCSI is not set
 # CONFIG_BE2NET is not set
@@ -85,17 +84,13 @@ CONFIG_BLK_DEV_BSG=y
 CONFIG_BLK_DEV_BSGLIB=y
 CONFIG_BLK_DEV_BSG_COMMON=y
 CONFIG_BLK_DEV_DM=m
-CONFIG_BLK_DEV_DM_BUILTIN=y
+# CONFIG_BLK_DEV_FD is not set
 CONFIG_BLK_DEV_LOOP=m
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 CONFIG_BLK_DEV_MD=m
 # CONFIG_BLK_DEV_NVME is not set
-# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
 CONFIG_BLK_DEV_SD=y
 # CONFIG_BLK_DEV_SR is not set
 CONFIG_BLK_MQ_PCI=y
-CONFIG_BLK_MQ_STACKING=y
-CONFIG_BLOCK_HOLDER_DEPRECATED=y
 CONFIG_BLOCK_LEGACY_AUTOLOAD=y
 # CONFIG_BNA is not set
 # CONFIG_BNX2 is not set
@@ -255,33 +250,19 @@ CONFIG_DEVPORT=y
 CONFIG_DEV_APPLETALK=m
 # CONFIG_DL2K is not set
 CONFIG_DM_BUFIO=m
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_CLONE is not set
 CONFIG_DM_CRYPT=m
-# CONFIG_DM_DEBUG is not set
-# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_INTEGRITY is not set
+# CONFIG_DM_INIT is undefined
 # CONFIG_DM_LOG_USERSPACE is not set
-# CONFIG_DM_LOG_WRITES is not set
 CONFIG_DM_MIRROR=m
 CONFIG_DM_MULTIPATH=m
 # CONFIG_DM_MULTIPATH_HST is not set
 # CONFIG_DM_MULTIPATH_IOA is not set
 # CONFIG_DM_MULTIPATH_QL is not set
 # CONFIG_DM_MULTIPATH_ST is not set
-# CONFIG_DM_RAID is not set
 CONFIG_DM_SNAPSHOT=m
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_THIN_PROVISIONING is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_UNSTRIPED is not set
 # CONFIG_DM_VERITY is not set
-# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_VERITY_FEC is undefined
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is undefined
 CONFIG_DM_ZERO=m
 CONFIG_DNOTIFY=y
 # CONFIG_DNS_RESOLVER is not set
@@ -760,7 +741,6 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
 CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
 CONFIG_MARVELL_PHY=m
 # CONFIG_MAX63XX_WATCHDOG is undefined
-CONFIG_MD=y
 CONFIG_MDIO=m
 CONFIG_MDIO_BITBANG=m
 CONFIG_MDIO_BUS=m
@@ -1235,6 +1215,7 @@ CONFIG_PHY_CAN_TRANSCEIVER=y
 # CONFIG_PINMUX is undefined
 CONFIG_PKCS7_MESSAGE_PARSER=y
 # CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set
+# CONFIG_PNFS_BLOCK is undefined
 # CONFIG_PNFS_FILE_LAYOUT is undefined
 # CONFIG_PNFS_FLEXFILE_LAYOUT is undefined
 CONFIG_POWER_RESET=y
@@ -1557,6 +1538,22 @@ CONFIG_SMSC_PHY=m
 # CONFIG_SOFT_WATCHDOG is undefined
 # CONFIG_SOLARIS_X86_PARTITION is undefined
 # CONFIG_SQUASHFS is undefined
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is undefined
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is undefined
+# CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE is undefined
+# CONFIG_SQUASHFS_DECOMP_SINGLE is undefined
+# CONFIG_SQUASHFS_EMBEDDED is undefined
+# CONFIG_SQUASHFS_FILE_CACHE is undefined
+# CONFIG_SQUASHFS_FILE_DIRECT is undefined
+# CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE is undefined
+# CONFIG_SQUASHFS_LZ4 is undefined
+# CONFIG_SQUASHFS_LZO is undefined
+# CONFIG_SQUASHFS_XATTR is undefined
+# CONFIG_SQUASHFS_XZ is undefined
+# CONFIG_SQUASHFS_ZLIB is undefined
+# CONFIG_SQUASHFS_ZSTD is undefined
 # CONFIG_STAGING is not set
 # CONFIG_STAGING_BOARD is undefined
 # CONFIG_STAGING_MEDIA is undefined
diff --git a/configs/platform-rpi1/kernelconfig b/configs/platform-rpi1/kernelconfig
index 539628fe30e6..44250683069d 100644
--- a/configs/platform-rpi1/kernelconfig
+++ b/configs/platform-rpi1/kernelconfig
@@ -578,6 +578,8 @@ CONFIG_EFI_PARTITION=y
 # end of Partition Types
 
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -996,7 +998,104 @@ CONFIG_RASPBERRYPI_FIRMWARE=y
 # end of Firmware Drivers
 
 # CONFIG_GNSS is not set
-# CONFIG_MTD is not set
+CONFIG_MTD=y
+# CONFIG_MTD_TESTS is not set
+
+#
+# Partition parsers
+#
+# CONFIG_MTD_AR7_PARTS is not set
+# CONFIG_MTD_CMDLINE_PARTS is not set
+CONFIG_MTD_OF_PARTS=y
+# CONFIG_MTD_AFS_PARTS is not set
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# end of Partition parsers
+
+#
+# User Modules And Translation Layers
+#
+# CONFIG_MTD_BLOCK is not set
+# CONFIG_MTD_BLOCK_RO is not set
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_SM_FTL is not set
+# CONFIG_MTD_OOPS is not set
+# CONFIG_MTD_PARTITIONED_MASTER is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+# CONFIG_MTD_CFI is not set
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+# end of RAM/ROM/Flash chip drivers
+
+#
+# Mapping drivers for chip access
+#
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+# CONFIG_MTD_PLATRAM is not set
+# end of Mapping drivers for chip access
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_DATAFLASH is not set
+# CONFIG_MTD_MCHP23K256 is not set
+# CONFIG_MTD_MCHP48L640 is not set
+# CONFIG_MTD_SST25L is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOCG3 is not set
+# end of Self-contained MTD device drivers
+
+#
+# NAND
+#
+# CONFIG_MTD_ONENAND is not set
+# CONFIG_MTD_RAW_NAND is not set
+# CONFIG_MTD_SPI_NAND is not set
+
+#
+# ECC engine support
+#
+# CONFIG_MTD_NAND_ECC_SW_HAMMING is not set
+# CONFIG_MTD_NAND_ECC_SW_BCH is not set
+# CONFIG_MTD_NAND_ECC_MXIC is not set
+# end of ECC engine support
+# end of NAND
+
+#
+# LPDDR & LPDDR2 PCM memory drivers
+#
+# CONFIG_MTD_LPDDR is not set
+# CONFIG_MTD_LPDDR2_NVM is not set
+# end of LPDDR & LPDDR2 PCM memory drivers
+
+# CONFIG_MTD_SPI_NOR is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
+# CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
 # CONFIG_OF_UNITTEST is not set
@@ -1011,7 +1110,9 @@ CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 # CONFIG_PARPORT is not set
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
-# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_ZRAM is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_RAM is not set
@@ -1119,7 +1220,38 @@ CONFIG_SCSI_LOWLEVEL=y
 # end of SCSI device support
 
 # CONFIG_ATA is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 CONFIG_NETDEVICES=y
 CONFIG_MII=y
@@ -2854,6 +2986,7 @@ CONFIG_LEDS_GPIO=y
 CONFIG_LEDS_TRIGGERS=y
 CONFIG_LEDS_TRIGGER_TIMER=y
 CONFIG_LEDS_TRIGGER_ONESHOT=y
+# CONFIG_LEDS_TRIGGER_MTD is not set
 CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
 CONFIG_LEDS_TRIGGER_CPU=y
@@ -3267,7 +3400,55 @@ CONFIG_MEMFD_CREATE=y
 # CONFIG_CONFIGFS_FS is not set
 # end of Pseudo filesystems
 
-# CONFIG_MISC_FILESYSTEMS is not set
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_PSTORE is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
 CONFIG_NETWORK_FILESYSTEMS=y
 CONFIG_NFS_FS=y
 CONFIG_NFS_V2=y
@@ -3516,12 +3697,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -3638,6 +3819,13 @@ CONFIG_CRC32_SLICEBY8=y
 # CONFIG_CRC8 is not set
 CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 CONFIG_XZ_DEC_X86=y
 CONFIG_XZ_DEC_POWERPC=y
diff --git a/configs/platform-v7a_noneon/kernelconfig b/configs/platform-v7a_noneon/kernelconfig
index f096fef6e288..f51d8d089e12 100644
--- a/configs/platform-v7a_noneon/kernelconfig
+++ b/configs/platform-v7a_noneon/kernelconfig
@@ -703,6 +703,8 @@ CONFIG_EFI_PARTITION=y
 
 CONFIG_BLK_MQ_VIRTIO=y
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1275,7 +1277,12 @@ CONFIG_MTD_PHYSMAP_VERSATILE=y
 # end of LPDDR & LPDDR2 PCM memory drivers
 
 # CONFIG_MTD_SPI_NOR is not set
-# CONFIG_MTD_UBI is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
 # CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
@@ -1293,6 +1300,7 @@ CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 # CONFIG_PARPORT is not set
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
+# CONFIG_ZRAM is not set
 CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
@@ -1372,7 +1380,37 @@ CONFIG_SCSI_MOD=y
 # end of SCSI device support
 
 # CONFIG_ATA is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 CONFIG_NETDEVICES=y
 CONFIG_MII=y
@@ -3255,7 +3293,55 @@ CONFIG_MEMFD_CREATE=y
 CONFIG_CONFIGFS_FS=y
 # end of Pseudo filesystems
 
-# CONFIG_MISC_FILESYSTEMS is not set
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_PSTORE is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
 CONFIG_NETWORK_FILESYSTEMS=y
 CONFIG_NFS_FS=y
 CONFIG_NFS_V2=y
@@ -3511,12 +3597,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -3536,6 +3622,8 @@ CONFIG_CRYPTO_CRC32C=y
 # CONFIG_CRYPTO_USER_API_AEAD is not set
 # end of Userspace interface
 
+CONFIG_CRYPTO_HASH_INFO=y
+
 #
 # Accelerated Cryptographic Algorithms for CPU (arm)
 #
@@ -3620,7 +3708,15 @@ CONFIG_CRC32_SLICEBY8=y
 # CONFIG_CRC7 is not set
 # CONFIG_LIBCRC32C is not set
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 # CONFIG_XZ_DEC is not set
 CONFIG_GENERIC_ALLOCATOR=y
 CONFIG_ASSOCIATIVE_ARRAY=y
diff --git a/configs/platform-v8a/kernelconfig b/configs/platform-v8a/kernelconfig
index a8ab2344683d..4ceb82ef4be0 100644
--- a/configs/platform-v8a/kernelconfig
+++ b/configs/platform-v8a/kernelconfig
@@ -754,6 +754,8 @@ CONFIG_EFI_PARTITION=y
 CONFIG_BLK_MQ_PCI=y
 CONFIG_BLK_MQ_VIRTIO=y
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1784,7 +1786,12 @@ CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
 # CONFIG_MTD_SPI_NOR_SWP_DISABLE is not set
 CONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y
 # CONFIG_MTD_SPI_NOR_SWP_KEEP is not set
-# CONFIG_MTD_UBI is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
 # CONFIG_MTD_HYPERBUS is not set
 CONFIG_DTC=y
 CONFIG_OF=y
@@ -1803,6 +1810,7 @@ CONFIG_OF_NUMA=y
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
 # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+# CONFIG_ZRAM is not set
 CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
@@ -2086,7 +2094,39 @@ CONFIG_PATA_OF_PLATFORM=y
 #
 # CONFIG_ATA_GENERIC is not set
 # CONFIG_PATA_LEGACY is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
+# CONFIG_DM_AUDIT is not set
 # CONFIG_TARGET_CORE is not set
 # CONFIG_FUSION is not set
 
@@ -5682,6 +5722,15 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
 # CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
 # CONFIG_CRAMFS is not set
 CONFIG_SQUASHFS=y
 CONFIG_SQUASHFS_FILE_CACHE=y
@@ -5735,6 +5784,7 @@ CONFIG_NFS_V4=y
 CONFIG_NFS_V4_1=y
 CONFIG_NFS_V4_2=y
 CONFIG_PNFS_FILE_LAYOUT=y
+CONFIG_PNFS_BLOCK=y
 CONFIG_PNFS_FLEXFILE_LAYOUT=y
 CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
 # CONFIG_NFS_V4_1_MIGRATION is not set
@@ -6014,11 +6064,11 @@ CONFIG_CRYPTO_CRC64_ROCKSOFT=y
 # Compression
 #
 CONFIG_CRYPTO_DEFLATE=y
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -6201,10 +6251,10 @@ CONFIG_AUDIT_COMPAT_GENERIC=y
 # CONFIG_RANDOM32_SELFTEST is not set
 CONFIG_ZLIB_INFLATE=y
 CONFIG_ZLIB_DEFLATE=y
-CONFIG_LZO_COMPRESS=m
-CONFIG_LZO_DECOMPRESS=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
 CONFIG_ZSTD_COMMON=y
-CONFIG_ZSTD_COMPRESS=m
+CONFIG_ZSTD_COMPRESS=y
 CONFIG_ZSTD_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 CONFIG_XZ_DEC_X86=y
diff --git a/configs/platform-x86_64/kernelconfig b/configs/platform-x86_64/kernelconfig
index 1080177f71a0..5afb5e60c54a 100644
--- a/configs/platform-x86_64/kernelconfig
+++ b/configs/platform-x86_64/kernelconfig
@@ -750,6 +750,8 @@ CONFIG_EFI_PARTITION=y
 CONFIG_BLK_MQ_PCI=y
 CONFIG_BLK_MQ_VIRTIO=y
 CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
 
 #
 # IO Schedulers
@@ -1214,7 +1216,97 @@ CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
 # end of Firmware Drivers
 
 # CONFIG_GNSS is not set
-# CONFIG_MTD is not set
+CONFIG_MTD=y
+# CONFIG_MTD_TESTS is not set
+
+#
+# Partition parsers
+#
+# CONFIG_MTD_AR7_PARTS is not set
+# CONFIG_MTD_CMDLINE_PARTS is not set
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# end of Partition parsers
+
+#
+# User Modules And Translation Layers
+#
+# CONFIG_MTD_BLOCK is not set
+# CONFIG_MTD_BLOCK_RO is not set
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_SM_FTL is not set
+# CONFIG_MTD_OOPS is not set
+# CONFIG_MTD_PARTITIONED_MASTER is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+# CONFIG_MTD_CFI is not set
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+# end of RAM/ROM/Flash chip drivers
+
+#
+# Mapping drivers for chip access
+#
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+# CONFIG_MTD_PLATRAM is not set
+# end of Mapping drivers for chip access
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOCG3 is not set
+# end of Self-contained MTD device drivers
+
+#
+# NAND
+#
+# CONFIG_MTD_ONENAND is not set
+# CONFIG_MTD_RAW_NAND is not set
+
+#
+# ECC engine support
+#
+# CONFIG_MTD_NAND_ECC_SW_HAMMING is not set
+# CONFIG_MTD_NAND_ECC_SW_BCH is not set
+# CONFIG_MTD_NAND_ECC_MXIC is not set
+# end of ECC engine support
+# end of NAND
+
+#
+# LPDDR & LPDDR2 PCM memory drivers
+#
+# CONFIG_MTD_LPDDR is not set
+# end of LPDDR & LPDDR2 PCM memory drivers
+
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
+# CONFIG_MTD_HYPERBUS is not set
 # CONFIG_OF is not set
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 # CONFIG_PARPORT is not set
@@ -1229,7 +1321,9 @@ CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_NULL_BLK is not set
 # CONFIG_BLK_DEV_FD is not set
 # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
-# CONFIG_BLK_DEV_LOOP is not set
+# CONFIG_ZRAM is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_DRBD is not set
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_RAM is not set
@@ -1486,7 +1580,38 @@ CONFIG_ATA_PIIX=y
 #
 # CONFIG_ATA_GENERIC is not set
 # CONFIG_PATA_LEGACY is not set
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_UNSTRIPED is not set
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_INIT is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=y
+# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_FEC is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
 # CONFIG_TARGET_CORE is not set
 # CONFIG_FUSION is not set
 
@@ -3344,8 +3469,34 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BEFS_FS is not set
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
+# CONFIG_JFFS2_FS is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_UBIFS_FS_ZSTD=y
+# CONFIG_UBIFS_ATIME_SUPPORT is not set
+CONFIG_UBIFS_FS_XATTR=y
+CONFIG_UBIFS_FS_SECURITY=y
+# CONFIG_UBIFS_FS_AUTHENTICATION is not set
 # CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+# CONFIG_SQUASHFS_XATTR is not set
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+# CONFIG_SQUASHFS_XZ is not set
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
 # CONFIG_VXFS_FS is not set
 # CONFIG_MINIX_FS is not set
 # CONFIG_OMFS_FS is not set
@@ -3606,12 +3757,12 @@ CONFIG_CRYPTO_CRC32C=y
 #
 # Compression
 #
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
 # CONFIG_CRYPTO_842 is not set
 # CONFIG_CRYPTO_LZ4 is not set
 # CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
+CONFIG_CRYPTO_ZSTD=y
 # end of Compression
 
 #
@@ -3756,7 +3907,15 @@ CONFIG_CRC32_SLICEBY8=y
 # CONFIG_CRC7 is not set
 # CONFIG_LIBCRC32C is not set
 # CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
 # CONFIG_XZ_DEC is not set
 CONFIG_GENERIC_ALLOCATOR=y
 CONFIG_XARRAY_MULTI=y
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 4/7] v7a: enable RAUC bundle creation
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
                   ` (2 preceding siblings ...)
  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 ` Roland Hieber
  2023-08-28  8:58 ` [DistroKit] [PATCH 5/7] image-rauc: fork config file from PTXdist 2023.08.0 Roland Hieber
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:58 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 configs/platform-v7a/platformconfig | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig
index 020527a3e4fe..e073b9752c2a 100644
--- a/configs/platform-v7a/platformconfig
+++ b/configs/platform-v7a/platformconfig
@@ -260,7 +260,12 @@ PTXCONF_IMAGE_KERNEL_INSTALL_EARLY=y
 # end of Generate images/linuximage    
 
 PTXCONF_IMAGE_LXA_MC1=y
-# PTXCONF_IMAGE_RAUC is not set
+PTXCONF_IMAGE_RAUC=y
+PTXCONF_IMAGE_RAUC_DESCRIPTION="DistroKit"
+# PTXCONF_IMAGE_RAUC_BUNDLE_FORMAT_PLAIN is not set
+PTXCONF_IMAGE_RAUC_BUNDLE_FORMAT_VERITY=y
+# PTXCONF_IMAGE_RAUC_BUNDLE_FORMAT_CRYPT is not set
+# PTXCONF_IMAGE_RAUC_INTERMEDIATE is not set
 PTXCONF_IMAGE_RIOTBOARD=y
 PTXCONF_IMAGE_ROOT_CPIO=y
 # PTXCONF_IMAGE_ROOT_CPIO_COMPRESSION_MODE_NONE is not set
@@ -316,6 +321,7 @@ PTXCONF_HOST_EXTRACT_CERT=y
 PTXCONF_HOST_FLEX=y
 PTXCONF_HOST_GENEXT2FS=y
 PTXCONF_HOST_GENIMAGE=y
+PTXCONF_HOST_GLIB=y
 PTXCONF_HOST_LIBCONFUSE=y
 PTXCONF_HOST_LIBFFI=y
 PTXCONF_HOST_LIBKMOD=y
@@ -330,6 +336,7 @@ PTXCONF_HOST_NINJA=y
 PTXCONF_HOST_OPENSC=y
 PTXCONF_HOST_OPENSSL=y
 PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PCRE2=y
 PTXCONF_HOST_PYTHON3_FLIT_CORE=y
 PTXCONF_HOST_PYTHON3_INSTALLER=y
 PTXCONF_HOST_PYTHON3_PACKAGING=y
@@ -337,12 +344,15 @@ PTXCONF_HOST_PYTHON3_PYBUILD=y
 PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
 PTXCONF_HOST_PYTHON3_TOMLI=y
 PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_RAUC=y
 PTXCONF_HOST_SOFTHSM=y
 PTXCONF_HOST_SQLITE=y
+PTXCONF_HOST_SQUASHFS_TOOLS=y
 PTXCONF_HOST_SYSTEM_BC=y
 PTXCONF_HOST_SYSTEM_PYTHON3=y
 PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
 PTXCONF_HOST_UTIL_LINUX=y
+PTXCONF_HOST_ZLIB=y
 PTXCONF_HOST_TF_A=y
 
 #
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 5/7] image-rauc: fork config file from PTXdist 2023.08.0
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
                   ` (3 preceding siblings ...)
  2023-08-28  8:58 ` [DistroKit] [PATCH 4/7] v7a: enable RAUC bundle creation Roland Hieber
@ 2023-08-28  8:58 ` Roland Hieber
  2023-08-28  8:58 ` [DistroKit] [PATCH 6/7] image-rauc: use ext4 rootfs instead of tar.gz Roland Hieber
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:58 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 config/images/rauc.config | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100644 config/images/rauc.config

diff --git a/config/images/rauc.config b/config/images/rauc.config
new file mode 100644
index 000000000000..e4169cc8cd95
--- /dev/null
+++ b/config/images/rauc.config
@@ -0,0 +1,22 @@
+image @IMAGE@ {
+	rauc {
+		file root.tar.gz { image = "root.tgz" }
+		manifest = "
+			[update]
+			compatible=@RAUC_BUNDLE_COMPATIBLE@
+			version=@RAUC_BUNDLE_VERSION@
+			build=@RAUC_BUNDLE_BUILD@
+			description=@RAUC_BUNDLE_DESCRIPTION@
+
+			[bundle]
+			format=@RAUC_BUNDLE_FORMAT@
+
+			[image.rootfs]
+			filename=root.tar.gz
+			"
+		cert = "@RAUC_CERT@"
+		key = "@RAUC_KEY@"
+		keyring = "@RAUC_KEYRING@"
+		intermediate = @RAUC_INTERMEDIATE@
+	}
+}
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 6/7] image-rauc: use ext4 rootfs instead of tar.gz
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
                   ` (4 preceding siblings ...)
  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 ` 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
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:58 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

On one hand, the squashfs inside the RAUC bundle already uses
compression, so with a tar.gz inside a squashfs the content is
compressed twice. Also using ext4 makes it possible to use adaptive
updates in the future.

(Yes, the image generated by the image-root-ext recipe is really called
"root.ext2", even if it's an ext4 image.)

Link: https://rauc.readthedocs.io/en/latest/advanced.html#adaptive-updates
Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 config/images/rauc.config    | 4 ++--
 platforms/image-rauc.deps.in | 6 ++++++
 2 files changed, 8 insertions(+), 2 deletions(-)
 create mode 100644 platforms/image-rauc.deps.in

diff --git a/config/images/rauc.config b/config/images/rauc.config
index e4169cc8cd95..83e074274961 100644
--- a/config/images/rauc.config
+++ b/config/images/rauc.config
@@ -1,6 +1,6 @@
 image @IMAGE@ {
 	rauc {
-		file root.tar.gz { image = "root.tgz" }
+		file root.ext4 { image = "root.ext2" }
 		manifest = "
 			[update]
 			compatible=@RAUC_BUNDLE_COMPATIBLE@
@@ -12,7 +12,7 @@ image @IMAGE@ {
 			format=@RAUC_BUNDLE_FORMAT@
 
 			[image.rootfs]
-			filename=root.tar.gz
+			filename=root.ext4
 			"
 		cert = "@RAUC_CERT@"
 		key = "@RAUC_KEY@"
diff --git a/platforms/image-rauc.deps.in b/platforms/image-rauc.deps.in
new file mode 100644
index 000000000000..2b2853441a96
--- /dev/null
+++ b/platforms/image-rauc.deps.in
@@ -0,0 +1,6 @@
+## SECTION=image
+
+config IMAGE_RAUC
+	tristate
+	select IMAGE_ROOT_EXT
+	select IMAGE_ROOT_EXT_EXT4
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [DistroKit] [PATCH 7/7] v7a: run: start with barebox by default
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
                   ` (5 preceding siblings ...)
  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 ` Roland Hieber
  2023-08-28  9:01 ` [DistroKit] [PATCH v6 0/7] v7a: add redundant update support via RAUC Roland Hieber
  7 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  8:58 UTC (permalink / raw)
  To: distrokit; +Cc: Roland Hieber

Booting via 9p results in a machine that feeld very differently than any
other boards in platform-v7a, mainly because there is no data partition,
no barebox-state, and therefore no RAUC support. All of this is possible
by booting from the emulated SD card image through barebox.

Default to barebox so that qemu-vexpress feels as much as possible like
booting from other boards.

Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
 configs/platform-v7a/run | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configs/platform-v7a/run b/configs/platform-v7a/run
index 004706ddaf59..3874a7b2f0af 100755
--- a/configs/platform-v7a/run
+++ b/configs/platform-v7a/run
@@ -177,7 +177,7 @@ run_qemu_barebox() {
 		"${QEMU_BAREBOX_ARGS[@]}"
 }
 
-target="${1:-9p}"
+target="${1:-barebox}"
 
 #set -x
 run_qemu_${target}
-- 
2.39.2




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [DistroKit] [PATCH v6 0/7] v7a: add redundant update support via RAUC
  2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
                   ` (6 preceding siblings ...)
  2023-08-28  8:58 ` [DistroKit] [PATCH 7/7] v7a: run: start with barebox by default Roland Hieber
@ 2023-08-28  9:01 ` Roland Hieber
  2023-09-26  9:35   ` Roland Hieber
  7 siblings, 1 reply; 10+ messages in thread
From: Roland Hieber @ 2023-08-28  9:01 UTC (permalink / raw)
  To: distrokit

This is v6, even though the subject doesn't say so… 😬

 - Roland

On Mon, Aug 28, 2023 at 10:57:57AM +0200, Roland Hieber wrote:
> 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
> 
> 
> 

-- 
Roland Hieber, Pengutronix e.K.          | r.hieber@pengutronix.de     |
Steuerwalder Str. 21                     | https://www.pengutronix.de/ |
31137 Hildesheim, Germany                | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686         | Fax:   +49-5121-206917-5555 |



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [DistroKit] [PATCH v6 0/7] v7a: add redundant update support via RAUC
  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
  0 siblings, 0 replies; 10+ messages in thread
From: Roland Hieber @ 2023-09-26  9:35 UTC (permalink / raw)
  To: distrokit

On Mon, Aug 28, 2023 at 11:01:05AM +0200, Roland Hieber wrote:
> This is v6, even though the subject doesn't say so… 😬
> 
>  - Roland

FWIW, this was merged in master and DistroKit-2023.09.0.

 - Roland

> 
> On Mon, Aug 28, 2023 at 10:57:57AM +0200, Roland Hieber wrote:
> > 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
> > 
> > 
> > 
> 
> -- 
> Roland Hieber, Pengutronix e.K.          | r.hieber@pengutronix.de     |
> Steuerwalder Str. 21                     | https://www.pengutronix.de/ |
> 31137 Hildesheim, Germany                | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686         | Fax:   +49-5121-206917-5555 |
> 
> 

-- 
Roland Hieber, Pengutronix e.K.          | r.hieber@pengutronix.de     |
Steuerwalder Str. 21                     | https://www.pengutronix.de/ |
31137 Hildesheim, Germany                | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686         | Fax:   +49-5121-206917-5555 |



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-09-26  9:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-28  8:57 [DistroKit] [PATCH 0/7] v7a: add redundant update support via RAUC Roland Hieber
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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox