[isar-cip-core][PATCH 1/3] Enable Images based on Debian 12 (bookworm)


Quirin Gylstorff
 

From: Quirin Gylstorff <quirin.gylstorff@...>

This will add prelimitary support for the debian 12 aka bookworm.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@...>
---
.gitlab-ci.yml | 45 ++++++++++++++++++++++++++++
Kconfig | 5 ++++
conf/distro/cip-core-bookworm.conf | 16 ++++++++++
kas/opt/bookworm.yml | 15 ++++++++++
recipes-core/images/efibootguard.inc | 4 +++
recipes-core/images/swupdate.inc | 6 +++-
6 files changed, 90 insertions(+), 1 deletion(-)
create mode 100644 conf/distro/cip-core-bookworm.conf
create mode 100644 kas/opt/bookworm.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f7c8c88..311702f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -37,6 +37,7 @@ default:
- if [ "${targz}" = "enable" ]; then base_yaml="${base_yaml}:kas/opt/targz-img.yml"; fi
- if [ "${release}" = "buster" ]; then base_yaml="${base_yaml}:kas/opt/buster.yml"; fi
- if [ "${release}" = "bullseye" ]; then base_yaml="${base_yaml}:kas/opt/bullseye.yml"; fi
+ - if [ "${release}" = "bookworm" ]; then base_yaml="${base_yaml}:kas/opt/bookworm.yml"; fi
- echo "Building ${base_yaml}"
- kas build ${base_yaml}
- if [ "${deploy}" = "enable" ]; then scripts/deploy-cip-core.sh ${release} ${target} ${extension} ${dtb} ${CI_COMMIT_REF_SLUG}; fi
@@ -281,3 +282,47 @@ build:qemu-amd64-secure-boot-buster:
use_rt: disable
wic_targz: disable
deploy: disable
+
+# bookworm images
+build:simatic-ipc227e-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: simatic-ipc227e
+ release: bookworm
+
+build:bbb-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: bbb
+ dtb: am335x-boneblack.dtb
+ release: bookworm
+
+build:iwg20m-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: iwg20m
+ dtb: r8a7743-iwg20d-q7-dbcm-ca.dtb
+ release: bookworm
+
+build:hihope-rzg2m-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: hihope-rzg2m
+ dtb: r8a774a1-hihope-rzg2m-ex.dtb
+ release: bookworm
+
+build:qemu-amd64-secure-boot-bookworm:
+ extends:
+ - .build_base
+ variables:
+ base_yaml: "kas-cip.yml:kas/board/${target}.yml"
+ release: bookworm
+ target: qemu-amd64
+ extension: ebg-secure-boot-snakeoil
+ use_rt: disable
+ wic_targz: disable
+ deploy: disable
diff --git a/Kconfig b/Kconfig
index cd24ce2..87056b9 100644
--- a/Kconfig
+++ b/Kconfig
@@ -128,6 +128,10 @@ config DEBIAN_BULLSEYE
bool "bullseye (11)"
depends on !ARCH_RISCV64

+config DEBIAN_BOOKWORM
+ bool "bookworm (12)"
+ depends on !ARCH_RISCV64
+
config DEBIAN_SID_PORTS
bool "sid (unstable) with unofficial ports"
depends on ARCH_RISCV64
@@ -138,6 +142,7 @@ config KAS_INCLUDE_DEBIAN
string
default "kas/opt/buster.yml" if DEBIAN_BUSTER
default "kas/opt/bullseye.yml" if DEBIAN_BULLSEYE
+ default "kas/opt/bookworm.yml" if DEBIAN_BOOKWORM
default "kas/opt/sid-ports.yml" if DEBIAN_SID_PORTS

comment "Image features"
diff --git a/conf/distro/cip-core-bookworm.conf b/conf/distro/cip-core-bookworm.conf
new file mode 100644
index 0000000..de2e435
--- /dev/null
+++ b/conf/distro/cip-core-bookworm.conf
@@ -0,0 +1,16 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+# Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+require conf/distro/debian-bookworm.conf
+require cip-core-common.inc
+
+PREFERRED_VERSION_linux-cip ?= "5.10.%"
+PREFERRED_VERSION_linux-cip-rt ?= "5.10.%"
diff --git a/kas/opt/bookworm.yml b/kas/opt/bookworm.yml
new file mode 100644
index 0000000..8b4431b
--- /dev/null
+++ b/kas/opt/bookworm.yml
@@ -0,0 +1,15 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+# Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+header:
+ version: 12
+
+distro: cip-core-bookworm
diff --git a/recipes-core/images/efibootguard.inc b/recipes-core/images/efibootguard.inc
index b3fe911..bb1aa1d 100644
--- a/recipes-core/images/efibootguard.inc
+++ b/recipes-core/images/efibootguard.inc
@@ -10,6 +10,10 @@
#

IMAGE_INSTALL:append = " efibootguard"
+IMAGE_PREINSTALL:append:sid = " efibootguard"
+IMAGE_PREINSTALL:append:bookworm = " efibootguard"
+IMAGE_INSTALL:append:bullseye = " efibootguard"
+IMAGE_INSTALL:append:buster = " efibootguard"

WIC_IMAGER_INSTALL:append = " efibootguard:${DISTRO_ARCH}"
WDOG_TIMEOUT ?= "60"
diff --git a/recipes-core/images/swupdate.inc b/recipes-core/images/swupdate.inc
index 08867cd..817fce0 100644
--- a/recipes-core/images/swupdate.inc
+++ b/recipes-core/images/swupdate.inc
@@ -12,5 +12,9 @@
inherit image_uuid
inherit read-only-rootfs

-IMAGE_INSTALL += " swupdate"
+IMAGE_PREINSTALL:append:sid = " swupdate"
+IMAGE_PREINSTALL:append:bookworm = " swupdate"
+IMAGE_INSTALL:append:bullseye = " swupdate"
+IMAGE_INSTALL:append:buster = " swupdate"
+
IMAGE_INSTALL += " swupdate-handler-roundrobin"
--
2.39.1


Felix Moessbauer <felix.moessbauer@...>
 

On Fri, 2023-02-17 at 16:25 +0100, Quirin Gylstorff via lists.cip-
project.org wrote:
From: Quirin Gylstorff <quirin.gylstorff@...>

This will add prelimitary support for the debian 12 aka bookworm.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@...>
---
 .gitlab-ci.yml                       | 45
++++++++++++++++++++++++++++
 Kconfig                              |  5 ++++
 conf/distro/cip-core-bookworm.conf   | 16 ++++++++++
 kas/opt/bookworm.yml                 | 15 ++++++++++
 recipes-core/images/efibootguard.inc |  4 +++
 recipes-core/images/swupdate.inc     |  6 +++-
 6 files changed, 90 insertions(+), 1 deletion(-)
 create mode 100644 conf/distro/cip-core-bookworm.conf
 create mode 100644 kas/opt/bookworm.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f7c8c88..311702f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -37,6 +37,7 @@ default:
     - if [ "${targz}" = "enable" ]; then
base_yaml="${base_yaml}:kas/opt/targz-img.yml"; fi
     - if [ "${release}" = "buster" ]; then
base_yaml="${base_yaml}:kas/opt/buster.yml"; fi
     - if [ "${release}" = "bullseye" ]; then
base_yaml="${base_yaml}:kas/opt/bullseye.yml"; fi
+    - if [ "${release}" = "bookworm" ]; then
base_yaml="${base_yaml}:kas/opt/bookworm.yml"; fi
     - echo "Building ${base_yaml}"
     - kas build ${base_yaml}
     - if [ "${deploy}" = "enable" ]; then scripts/deploy-cip-core.sh
${release} ${target} ${extension} ${dtb} ${CI_COMMIT_REF_SLUG}; fi
@@ -281,3 +282,47 @@ build:qemu-amd64-secure-boot-buster:
     use_rt: disable
     wic_targz: disable
     deploy: disable
+
+# bookworm images
+build:simatic-ipc227e-bookworm:
+  extends:
+    - .build_base
+  variables:
+    target: simatic-ipc227e
+    release: bookworm
+
+build:bbb-bookworm:
+  extends:
+    - .build_base
+  variables:
+    target: bbb
+    dtb: am335x-boneblack.dtb
+    release: bookworm
+
+build:iwg20m-bookworm:
+  extends:
+    - .build_base
+  variables:
+    target: iwg20m
+    dtb: r8a7743-iwg20d-q7-dbcm-ca.dtb
+    release: bookworm
+
+build:hihope-rzg2m-bookworm:
+  extends:
+    - .build_base
+  variables:
+    target: hihope-rzg2m
+    dtb: r8a774a1-hihope-rzg2m-ex.dtb
+    release: bookworm
+
+build:qemu-amd64-secure-boot-bookworm:
+  extends:
+    - .build_base
+  variables:
+    base_yaml: "kas-cip.yml:kas/board/${target}.yml"
+    release: bookworm
+    target: qemu-amd64
+    extension: ebg-secure-boot-snakeoil
+    use_rt: disable
+    wic_targz: disable
+    deploy: disable
diff --git a/Kconfig b/Kconfig
index cd24ce2..87056b9 100644
--- a/Kconfig
+++ b/Kconfig
@@ -128,6 +128,10 @@ config DEBIAN_BULLSEYE
        bool "bullseye (11)"
        depends on !ARCH_RISCV64
 
+config DEBIAN_BOOKWORM
+       bool "bookworm (12)"
+       depends on !ARCH_RISCV64
+
 config DEBIAN_SID_PORTS
        bool "sid (unstable) with unofficial ports"
        depends on ARCH_RISCV64
@@ -138,6 +142,7 @@ config KAS_INCLUDE_DEBIAN
        string
        default "kas/opt/buster.yml" if DEBIAN_BUSTER
        default "kas/opt/bullseye.yml" if DEBIAN_BULLSEYE
+       default "kas/opt/bookworm.yml" if DEBIAN_BOOKWORM
        default "kas/opt/sid-ports.yml" if DEBIAN_SID_PORTS
 
 comment "Image features"
diff --git a/conf/distro/cip-core-bookworm.conf b/conf/distro/cip-
core-bookworm.conf
new file mode 100644
index 0000000..de2e435
--- /dev/null
+++ b/conf/distro/cip-core-bookworm.conf
@@ -0,0 +1,16 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+require conf/distro/debian-bookworm.conf
+require cip-core-common.inc
+
+PREFERRED_VERSION_linux-cip ?= "5.10.%"
+PREFERRED_VERSION_linux-cip-rt ?= "5.10.%"
diff --git a/kas/opt/bookworm.yml b/kas/opt/bookworm.yml
new file mode 100644
index 0000000..8b4431b
--- /dev/null
+++ b/kas/opt/bookworm.yml
@@ -0,0 +1,15 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+#  Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+header:
+  version: 12
+
+distro: cip-core-bookworm
diff --git a/recipes-core/images/efibootguard.inc b/recipes-
core/images/efibootguard.inc
index b3fe911..bb1aa1d 100644
--- a/recipes-core/images/efibootguard.inc
+++ b/recipes-core/images/efibootguard.inc
@@ -10,6 +10,10 @@
 #
 
 IMAGE_INSTALL:append = " efibootguard"
+IMAGE_PREINSTALL:append:sid = " efibootguard"
+IMAGE_PREINSTALL:append:bookworm = " efibootguard"
+IMAGE_INSTALL:append:bullseye = " efibootguard"
+IMAGE_INSTALL:append:buster = " efibootguard"
This will have to be reworked once my riscv64 patch for EBG is
included. By that, only bookworm would be left with a stock EBG and
also that is probably just a matter of time. I prefer to always build
this component and use PREFERRED_VERSIONs if required. This mixing of
custom and upstream EBG versions is very hard to maintain.

PS: the sender of this mail looks quite strange:
Quirin Gylstorff via lists.cip-project.org
<quirin.gylstorff=siemens.com@...>

Don't know if this is intentional. But it makes responding harder, as
the sender is not included in the "To:" field.

Felix

 
 WIC_IMAGER_INSTALL:append = " efibootguard:${DISTRO_ARCH}"
 WDOG_TIMEOUT ?= "60"
diff --git a/recipes-core/images/swupdate.inc b/recipes-
core/images/swupdate.inc
index 08867cd..817fce0 100644
--- a/recipes-core/images/swupdate.inc
+++ b/recipes-core/images/swupdate.inc
@@ -12,5 +12,9 @@
 inherit image_uuid
 inherit read-only-rootfs
 
-IMAGE_INSTALL += " swupdate"
+IMAGE_PREINSTALL:append:sid = " swupdate"
+IMAGE_PREINSTALL:append:bookworm = " swupdate"
+IMAGE_INSTALL:append:bullseye = " swupdate"
+IMAGE_INSTALL:append:buster = " swupdate"
+
 IMAGE_INSTALL += " swupdate-handler-roundrobin"



Jan Kiszka
 

On 18.02.23 08:56, Moessbauer, Felix (T CED INW-CN) wrote:
On Fri, 2023-02-17 at 16:25 +0100, Quirin Gylstorff via lists.cip-
project.org wrote:
From: Quirin Gylstorff <quirin.gylstorff@...>

This will add prelimitary support for the debian 12 aka bookworm.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@...>
---
.gitlab-ci.yml | 45
++++++++++++++++++++++++++++
Kconfig | 5 ++++
conf/distro/cip-core-bookworm.conf | 16 ++++++++++
kas/opt/bookworm.yml | 15 ++++++++++
recipes-core/images/efibootguard.inc | 4 +++
recipes-core/images/swupdate.inc | 6 +++-
6 files changed, 90 insertions(+), 1 deletion(-)
create mode 100644 conf/distro/cip-core-bookworm.conf
create mode 100644 kas/opt/bookworm.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f7c8c88..311702f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -37,6 +37,7 @@ default:
- if [ "${targz}" = "enable" ]; then
base_yaml="${base_yaml}:kas/opt/targz-img.yml"; fi
- if [ "${release}" = "buster" ]; then
base_yaml="${base_yaml}:kas/opt/buster.yml"; fi
- if [ "${release}" = "bullseye" ]; then
base_yaml="${base_yaml}:kas/opt/bullseye.yml"; fi
+ - if [ "${release}" = "bookworm" ]; then
base_yaml="${base_yaml}:kas/opt/bookworm.yml"; fi
- echo "Building ${base_yaml}"
- kas build ${base_yaml}
- if [ "${deploy}" = "enable" ]; then scripts/deploy-cip-core.sh
${release} ${target} ${extension} ${dtb} ${CI_COMMIT_REF_SLUG}; fi
@@ -281,3 +282,47 @@ build:qemu-amd64-secure-boot-buster:
use_rt: disable
wic_targz: disable
deploy: disable
+
+# bookworm images
+build:simatic-ipc227e-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: simatic-ipc227e
+ release: bookworm
+
+build:bbb-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: bbb
+ dtb: am335x-boneblack.dtb
+ release: bookworm
+
+build:iwg20m-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: iwg20m
+ dtb: r8a7743-iwg20d-q7-dbcm-ca.dtb
+ release: bookworm
+
+build:hihope-rzg2m-bookworm:
+ extends:
+ - .build_base
+ variables:
+ target: hihope-rzg2m
+ dtb: r8a774a1-hihope-rzg2m-ex.dtb
+ release: bookworm
+
+build:qemu-amd64-secure-boot-bookworm:
+ extends:
+ - .build_base
+ variables:
+ base_yaml: "kas-cip.yml:kas/board/${target}.yml"
+ release: bookworm
+ target: qemu-amd64
+ extension: ebg-secure-boot-snakeoil
+ use_rt: disable
+ wic_targz: disable
+ deploy: disable
diff --git a/Kconfig b/Kconfig
index cd24ce2..87056b9 100644
--- a/Kconfig
+++ b/Kconfig
@@ -128,6 +128,10 @@ config DEBIAN_BULLSEYE
bool "bullseye (11)"
depends on !ARCH_RISCV64

+config DEBIAN_BOOKWORM
+ bool "bookworm (12)"
+ depends on !ARCH_RISCV64
+
config DEBIAN_SID_PORTS
bool "sid (unstable) with unofficial ports"
depends on ARCH_RISCV64
@@ -138,6 +142,7 @@ config KAS_INCLUDE_DEBIAN
string
default "kas/opt/buster.yml" if DEBIAN_BUSTER
default "kas/opt/bullseye.yml" if DEBIAN_BULLSEYE
+ default "kas/opt/bookworm.yml" if DEBIAN_BOOKWORM
default "kas/opt/sid-ports.yml" if DEBIAN_SID_PORTS

comment "Image features"
diff --git a/conf/distro/cip-core-bookworm.conf b/conf/distro/cip-
core-bookworm.conf
new file mode 100644
index 0000000..de2e435
--- /dev/null
+++ b/conf/distro/cip-core-bookworm.conf
@@ -0,0 +1,16 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+# Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+require conf/distro/debian-bookworm.conf
+require cip-core-common.inc
+
+PREFERRED_VERSION_linux-cip ?= "5.10.%"
+PREFERRED_VERSION_linux-cip-rt ?= "5.10.%"
diff --git a/kas/opt/bookworm.yml b/kas/opt/bookworm.yml
new file mode 100644
index 0000000..8b4431b
--- /dev/null
+++ b/kas/opt/bookworm.yml
@@ -0,0 +1,15 @@
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2023
+#
+# Authors:
+# Quirin Gylstorff <quirin.gylstorff@...>
+#
+# SPDX-License-Identifier: MIT
+#
+
+header:
+ version: 12
+
+distro: cip-core-bookworm
diff --git a/recipes-core/images/efibootguard.inc b/recipes-
core/images/efibootguard.inc
index b3fe911..bb1aa1d 100644
--- a/recipes-core/images/efibootguard.inc
+++ b/recipes-core/images/efibootguard.inc
@@ -10,6 +10,10 @@
#

IMAGE_INSTALL:append = " efibootguard"
+IMAGE_PREINSTALL:append:sid = " efibootguard"
+IMAGE_PREINSTALL:append:bookworm = " efibootguard"
+IMAGE_INSTALL:append:bullseye = " efibootguard"
+IMAGE_INSTALL:append:buster = " efibootguard"
This will have to be reworked once my riscv64 patch for EBG is
included. By that, only bookworm would be left with a stock EBG and
also that is probably just a matter of time. I prefer to always build
this component and use PREFERRED_VERSIONs if required. This mixing of
custom and upstream EBG versions is very hard to maintain.
This looks also strange to me now. Won't we get IMAGE_INSTALL *and*
IMAGE_PREINSTALL set for sid and bookworm?

I will have a look if we can merge patch 3 already, to enable CI, and
then I will look into Felix' patches first.

PS: the sender of this mail looks quite strange:
Quirin Gylstorff via lists.cip-project.org
<quirin.gylstorff=siemens.com@...>

Don't know if this is intentional. But it makes responding harder, as
the sender is not included in the "To:" field.
This is caused by the required rewriting due to DMARC. Therefore,
"From:" also in the commit message. Interestingly, I'm not yet seeing it
here.

Jan

--
Siemens AG, Technology
Competence Center Embedded Linux