public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2
@ 2024-01-09  7:33 Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 1/8] crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}" Jan Kiszka
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

Debian has fixed riscv64 cross-building in sid, and we can now use the
chance to fix and update VisionFive 2 to all-upstream.

Changes in v2:
 - drop no longer need cross-build workaround
 - update to kernel 6.6.10

Jan

Jan Kiszka (8):
  crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}"
  meta-isar: jh7110-u-boot-spl-tool: Use BPN instead of PN
  meta-isar: starfive-visionfive2: Use kernel DTB
  meta-isar: jh7110-u-boot-spl-tool: Rework
  meta-isar: starfive-visionfive2: Switch to upstream U-Boot
  meta-isar: starfive-visionfive2: Drop obsolete recipes
  meta-isar: linux-mainline: Update to 6.6.10
  meta-isar: Switch VisionFive 2 to mainline kernel

 .../conf/machine/starfive-visionfive2.conf    | 15 ++-----
 .../jh7110-u-boot-spl-image/files/install     |  1 -
 .../jh7110-u-boot-spl-image/files/rules       | 10 -----
 .../jh7110-u-boot-spl-image_0.1.bb            | 32 ---------------
 ...l_0.1.bb => jh7110-u-boot-spl-tool_0.2.bb} |  2 +-
 .../opensbi/files/starfive-visionfive2-rules  | 12 ++++++
 .../files/starfive-visionfive2-rules.tmpl     | 17 --------
 ...ensbi-starfive-visionfive2_1.2+20230310.bb | 11 +----
 .../files/starfive-visionfive2-rules.tmpl     | 35 ++++++++++++++++
 ...-starfive-visionfive2_2021.10+VF2-3.0.4.bb | 31 --------------
 .../u-boot-starfive-visionfive2_2023.10.bb    | 29 +++++++++++++
 .../files/rules.tmpl                          | 12 ------
 .../files/visionfive2-u-boot-firmware.install |  1 -
 .../visionfive2-uboot-fit-image.its.tmpl      | 41 -------------------
 .../visionfive2-u-boot-firmware.bb            | 38 -----------------
 .../linux/files/starfive2_extra.cfg           |  6 +--
 ...ne_5.4.203.bb => linux-mainline_6.6.10.bb} |  8 ++--
 .../linux/linux-starfive_5.15-visionfive2.bb  | 19 ---------
 .../canned-wks/starfive-visionfive2.wks.in    |  4 +-
 meta/classes/crossvars.bbclass                |  2 +-
 20 files changed, 93 insertions(+), 233 deletions(-)
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/install
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/jh7110-u-boot-spl-image_0.1.bb
 rename meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/{jh7110-u-boot-spl-tool_0.1.bb => jh7110-u-boot-spl-tool_0.2.bb} (85%)
 create mode 100644 meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules
 delete mode 100644 meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules.tmpl
 create mode 100755 meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2-rules.tmpl
 delete mode 100644 meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2021.10+VF2-3.0.4.bb
 create mode 100644 meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2023.10.bb
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb
 rename meta-isar/recipes-kernel/linux/{linux-mainline_5.4.203.bb => linux-mainline_6.6.10.bb} (82%)
 delete mode 100644 meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb

-- 
2.35.3


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

* [PATCH v2 1/8] crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}"
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 2/8] meta-isar: jh7110-u-boot-spl-tool: Use BPN instead of PN Jan Kiszka
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

95427cc8 forgot about the case that PACKAGE_ARCH is to be derived from
BUILD_ARCH - while that is considering PACKAGE_ARCH before setting
BUILD_ARCH at all. Account for that case by adding the unresolved value
of PACKAGE_ARCH into the cross-build case because that is what the
statement is about: Set PACKAGE_ARCH to HOST_ARCH only if cross-building
is enabled for a package.

Fixes: 95427cc8a760 ("crossvars: Adjust logic to account for -native package builds in non-cross setups")
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/classes/crossvars.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/crossvars.bbclass b/meta/classes/crossvars.bbclass
index a7834b99..828afe46 100644
--- a/meta/classes/crossvars.bbclass
+++ b/meta/classes/crossvars.bbclass
@@ -22,7 +22,7 @@ python __anonymous() {
 
     if distro_arch != host_arch and \
         (package_arch == host_arch or \
-         (package_arch in [distro_arch, compat_arch] and mode == "1")):
+         (package_arch in [distro_arch, compat_arch, '${BUILD_ARCH}'] and mode == "1")):
         d.setVar('BUILD_ARCH', host_arch)
         schroot_dir = d.getVar('SCHROOT_HOST_DIR', False)
         sbuild_dep = "sbuild-chroot-host" + flavor_suffix + ":do_build"
-- 
2.35.3


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

* [PATCH v2 2/8] meta-isar: jh7110-u-boot-spl-tool: Use BPN instead of PN
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 1/8] crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}" Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 3/8] meta-isar: starfive-visionfive2: Use kernel DTB Jan Kiszka
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

Fixes installation when PN is -native or -compat.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 .../jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb        | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb b/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb
index 292334f6..37b52ab3 100644
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb
+++ b/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb
@@ -16,7 +16,7 @@ S = "${WORKDIR}/tools/spl_tool"
 do_prepare_build[cleandirs] += "${S}/debian"
 do_prepare_build(){
     deb_debianize
-    echo "spl_tool usr/lib/jh7110-uboot-spl-tool" > ${S}/debian/${PN}.install
+    echo "spl_tool usr/lib/jh7110-uboot-spl-tool" > ${S}/debian/${BPN}.install
 }
 
 COMPATIBLE_MACHINE = "starfive-visionfive2"
-- 
2.35.3


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

* [PATCH v2 3/8] meta-isar: starfive-visionfive2: Use kernel DTB
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 1/8] crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}" Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 2/8] meta-isar: jh7110-u-boot-spl-tool: Use BPN instead of PN Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 4/8] meta-isar: jh7110-u-boot-spl-tool: Rework Jan Kiszka
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

This will be needed when switching to upstream U-Boot as the DTB there
is not compatible with currently used downstream kernel.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta-isar/conf/machine/starfive-visionfive2.conf               | 3 ++-
 .../scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in     | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta-isar/conf/machine/starfive-visionfive2.conf b/meta-isar/conf/machine/starfive-visionfive2.conf
index d96041fc..806d914c 100644
--- a/meta-isar/conf/machine/starfive-visionfive2.conf
+++ b/meta-isar/conf/machine/starfive-visionfive2.conf
@@ -21,4 +21,5 @@ IMAGER_BUILD_DEPS += " \
 # DTB file for OpenSBI
 DTB_UBOOT_JH7110_VF2 = "starfive_visionfive2.dtb"
 # DTB file for booting
-DTB_FILES = "starfive/jh7110-visionfive-v2.dtb"
+DTB_VISIONFIVE2 = "jh7110-visionfive-v2.dtb"
+DTB_FILES = "starfive/${DTB_VISIONFIVE2}"
diff --git a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
index 0f3d76a9..99156f81 100644
--- a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
+++ b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
@@ -16,7 +16,7 @@ part --source rawcopy --sourceparams "file=/usr/share/jh7110-uboot-spl-image/u-b
 # U-Boot FIT
 part --source rawcopy --sourceparams "file=/usr/share/visionfive2-u-boot-firmware/visionfive2_fw_payload.img" --ondisk mmcblk1 --fixed-size  4M --offset 4M --part-type 5B193300-FC78-40CD-8002-E86C45580B47
 # EFI
-part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot" --use-uuid --label efi --part-type EF00 --align 1024
+part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot,dtb=${DTB_VISIONFIVE2}" --use-uuid --label efi --part-type EF00 --align 1024
 # rootfs
 part / --source rootfs --use-uuid --fstype ext4 --mkfs-extraopts "-T default" --label image --active --align 1024 --exclude-path=boot/
 
-- 
2.35.3


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

* [PATCH v2 4/8] meta-isar: jh7110-u-boot-spl-tool: Rework
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
                   ` (2 preceding siblings ...)
  2024-01-09  7:33 ` [PATCH v2 3/8] meta-isar: starfive-visionfive2: Use kernel DTB Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 5/8] meta-isar: starfive-visionfive2: Switch to upstream U-Boot Jan Kiszka
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

Install the binary as normal tool under /usr/bin to simplify its usage.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules       | 2 +-
 ...110-u-boot-spl-tool_0.1.bb => jh7110-u-boot-spl-tool_0.2.bb} | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
 rename meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/{jh7110-u-boot-spl-tool_0.1.bb => jh7110-u-boot-spl-tool_0.2.bb} (85%)

diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules b/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
index 6a25dd36..a8b2c6b8 100644
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
+++ b/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
@@ -4,7 +4,7 @@ U_BOOT_SPL_BIN := /usr/lib/u-boot/starfive-visionfive2/u-boot-spl.bin
 
 override_dh_auto_build:
 	cp $(U_BOOT_SPL_BIN) u-boot-spl.bin
-	/usr/lib/jh7110-uboot-spl-tool/spl_tool -c -f u-boot-spl.bin
+	spl_tool -c -f u-boot-spl.bin
 
 %:
 	dh \$@
diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb b/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.2.bb
similarity index 85%
rename from meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb
rename to meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.2.bb
index 37b52ab3..6c998029 100644
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.1.bb
+++ b/meta-isar/recipes-bsp/jh7110-u-boot-spl-tool/jh7110-u-boot-spl-tool_0.2.bb
@@ -16,7 +16,7 @@ S = "${WORKDIR}/tools/spl_tool"
 do_prepare_build[cleandirs] += "${S}/debian"
 do_prepare_build(){
     deb_debianize
-    echo "spl_tool usr/lib/jh7110-uboot-spl-tool" > ${S}/debian/${BPN}.install
+    echo "spl_tool usr/bin" > ${S}/debian/${BPN}.install
 }
 
 COMPATIBLE_MACHINE = "starfive-visionfive2"
-- 
2.35.3


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

* [PATCH v2 5/8] meta-isar: starfive-visionfive2: Switch to upstream U-Boot
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
                   ` (3 preceding siblings ...)
  2024-01-09  7:33 ` [PATCH v2 4/8] meta-isar: jh7110-u-boot-spl-tool: Rework Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 6/8] meta-isar: starfive-visionfive2: Drop obsolete recipes Jan Kiszka
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

There are no more reasons to use the vendor tree, U-Boot 2023.10
sufficiently supports the board.

Moving upstream allows for significant simplifications in the build. We
are now building OpenSBI first and are then using U-Boot to finish all
artifacts needed for the image.

The wks file is updated accordingly, switching the GUID of the U-Boot
partition to the one upstream is recommending. Unneeded options for the
first two partitions are dropped at this chance.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 .../conf/machine/starfive-visionfive2.conf    | 10 ++----
 .../opensbi/files/starfive-visionfive2-rules  | 12 +++++++
 .../files/starfive-visionfive2-rules.tmpl     | 17 ---------
 ...ensbi-starfive-visionfive2_1.2+20230310.bb | 11 ++----
 .../files/starfive-visionfive2-rules.tmpl     | 35 +++++++++++++++++++
 ...-starfive-visionfive2_2021.10+VF2-3.0.4.bb | 31 ----------------
 .../u-boot-starfive-visionfive2_2023.10.bb    | 29 +++++++++++++++
 .../canned-wks/starfive-visionfive2.wks.in    |  4 +--
 8 files changed, 82 insertions(+), 67 deletions(-)
 create mode 100644 meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules
 delete mode 100644 meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules.tmpl
 create mode 100755 meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2-rules.tmpl
 delete mode 100644 meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2021.10+VF2-3.0.4.bb
 create mode 100644 meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2023.10.bb

diff --git a/meta-isar/conf/machine/starfive-visionfive2.conf b/meta-isar/conf/machine/starfive-visionfive2.conf
index 806d914c..c7f72bb3 100644
--- a/meta-isar/conf/machine/starfive-visionfive2.conf
+++ b/meta-isar/conf/machine/starfive-visionfive2.conf
@@ -8,18 +8,12 @@ DISTRO_ARCH = "riscv64"
 KERNEL_NAME ?= "starfive"
 
 IMAGE_FSTYPES ?= "wic"
-
 WKS_FILE ?= "starfive-visionfive2.wks.in"
 IMAGER_INSTALL:wic += " \
-    jh7110-u-boot-spl-image \
-    visionfive2-u-boot-firmware \
+    u-boot-starfive-visionfive2 \
     ${SYSTEMD_BOOTLOADER_INSTALL}"
-IMAGER_BUILD_DEPS += " \
-    jh7110-u-boot-spl-image \
-    visionfive2-u-boot-firmware"
+IMAGER_BUILD_DEPS += "u-boot-starfive-visionfive2"
 
-# DTB file for OpenSBI
-DTB_UBOOT_JH7110_VF2 = "starfive_visionfive2.dtb"
 # DTB file for booting
 DTB_VISIONFIVE2 = "jh7110-visionfive-v2.dtb"
 DTB_FILES = "starfive/${DTB_VISIONFIVE2}"
diff --git a/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules b/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules
new file mode 100644
index 00000000..452ff356
--- /dev/null
+++ b/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules
@@ -0,0 +1,12 @@
+#!/usr/bin/make -f
+
+ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
+endif
+
+override_dh_auto_build:
+	CFLAGS= LDFLAGS= $(MAKE) $(PARALLEL_MAKE) \
+		PLATFORM=generic FW_TEXT_START=0x40000000 FW_OPTIONS=0
+
+%:
+	dh $@
diff --git a/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules.tmpl b/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules.tmpl
deleted file mode 100644
index 5f35c1c2..00000000
--- a/meta-isar/recipes-bsp/opensbi/files/starfive-visionfive2-rules.tmpl
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/make -f
-
-ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
-export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
-endif
-
-UBOOT_DTB_FILE := /usr/share/u-boot/starfive-visionfive2/${DTB_UBOOT_JH7110_VF2}
-FW_TEXT_START := 0x40000000
-
-override_dh_auto_build:
-	CFLAGS= LDFLAGS= $(MAKE) $(PARALLEL_MAKE) PLATFORM=generic \
-		FW_PAYLOAD_PATH=/usr/lib/u-boot/starfive-visionfive2/u-boot.bin \
-		FW_FDT_PATH=$(UBOOT_DTB_FILE) \
-		FW_TEXT_START=$(FW_TEXT_START)
-
-%:
-	dh $@
diff --git a/meta-isar/recipes-bsp/opensbi/opensbi-starfive-visionfive2_1.2+20230310.bb b/meta-isar/recipes-bsp/opensbi/opensbi-starfive-visionfive2_1.2+20230310.bb
index f6d6905a..afbba0f3 100644
--- a/meta-isar/recipes-bsp/opensbi/opensbi-starfive-visionfive2_1.2+20230310.bb
+++ b/meta-isar/recipes-bsp/opensbi/opensbi-starfive-visionfive2_1.2+20230310.bb
@@ -9,25 +9,18 @@ DESCRIPTION = "OpenSBI firmware for StarFive VisionFive 2"
 
 SRC_URI = " \
     git://github.com/riscv-software-src/opensbi.git;destsuffix=opensbi-${PV};protocol=https;branch=master \
-    file://starfive-visionfive2-rules.tmpl"
+    file://starfive-visionfive2-rules"
 # required patches are not yet part of a release, but will be in 1.3
 SRCREV = "2868f26131308ff345382084681ea89c5b0159f1"
 
 S = "${WORKDIR}/opensbi-${PV}"
-TEMPLATE_FILES += "starfive-visionfive2-rules.tmpl"
-TEMPLATE_VARS += "DTB_UBOOT_JH7110_VF2"
-
-DEPENDS = "u-boot-starfive-visionfive2"
-DEBIAN_BUILD_DEPENDS = " \
-    u-boot-starfive-visionfive2, \
-    u-boot-starfive-visionfive2-dev"
 
 do_prepare_build[cleandirs] += "${S}/debian"
 do_prepare_build() {
     cp ${WORKDIR}/starfive-visionfive2-rules ${WORKDIR}/rules
     deb_debianize
 
-    echo "build/platform/generic/firmware/fw_payload.bin /usr/lib/opensbi/starfive-visionfive2/" > ${S}/debian/install
+    echo "build/platform/generic/firmware/fw_dynamic.bin /usr/lib/opensbi/starfive-visionfive2/" > ${S}/debian/install
 }
 
 COMPATIBLE_MACHINE = "starfive-visionfive2"
diff --git a/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2-rules.tmpl b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2-rules.tmpl
new file mode 100755
index 00000000..01bb9156
--- /dev/null
+++ b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2-rules.tmpl
@@ -0,0 +1,35 @@
+#!/usr/bin/make -f
+
+# Debian rules for custom U-Boot build
+#
+# This software is a part of ISAR.
+# Copyright (c) Siemens AG, 2018-2021
+#
+# SPDX-License-Identifier: MIT
+
+ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
+SET_CROSS_BUILD_TOOLS=CROSS_BUILD_TOOLS=y
+endif
+
+override_dh_auto_build:
+	$(MAKE) $(PARALLEL_MAKE) ${U_BOOT_CONFIG}
+	$(MAKE) $(PARALLEL_MAKE) flash.bin OPENSBI=/usr/lib/opensbi/starfive-visionfive2/fw_dynamic.bin
+	spl_tool -c -f spl/u-boot-spl.bin
+	$(MAKE) -n u-boot-initial-env >/dev/null 2>&1; if [ $$? -ne 2 ]; then \
+		$(MAKE) $(PARALLEL_MAKE) u-boot-initial-env; \
+	else \
+		./scripts/get_default_envs.sh >u-boot-initial-env; \
+	fi
+	$(MAKE) $(PARALLEL_MAKE) $(SET_CROSS_BUILD_TOOLS) NO_SDL=1 tools-only envtools
+
+override_dh_auto_install:
+	mv tools/env/lib.a tools/env/libubootenv.a
+
+override_dh_auto_test:
+
+override_dh_strip:
+	dh_strip -X libubootenv.a
+
+%:
+	dh $@ --parallel
diff --git a/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2021.10+VF2-3.0.4.bb b/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2021.10+VF2-3.0.4.bb
deleted file mode 100644
index 9e1b7251..00000000
--- a/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2021.10+VF2-3.0.4.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# Copyright (c) Siemens AG, 2023
-#
-# SPDX-License-Identifier: MIT
-
-require recipes-bsp/u-boot/u-boot-custom.inc
-
-SRC_URI += "git://github.com/starfive-tech/u-boot.git;nobranch=1;protocol=https;destsuffix=u-boot-${PV}"
-SRCREV = "b6e2b0e85c774a18ae668223a6e5f7d335895243"
-
-DEBIAN_BUILD_DEPENDS .= ", libssl-dev, libssl-dev:native"
-
-U_BOOT_CONFIG = "starfive_visionfive2_defconfig"
-U_BOOT_BIN = "u-boot.bin"
-U_BOOT_SPL_BIN = "spl/u-boot-spl.bin"
-
-S = "${WORKDIR}/u-boot-${PV}"
-
-# install dtb files for opensbi
-do_prepare_build[cleandirs] += "${S}/debian"
-do_prepare_build:append() {
-    # also build and install spl component
-    sed -i 's|${U_BOOT_BIN}|${U_BOOT_BIN} ${U_BOOT_SPL_BIN}|g' ${S}/debian/rules
-    echo "${U_BOOT_SPL_BIN} usr/lib/u-boot/${MACHINE}/" \
-        >> ${S}/debian/u-boot-${MACHINE}.install
-    # install device tree
-    echo "arch/riscv/dts/*.dtb usr/share/u-boot/${MACHINE}/" \
-        >> ${S}/debian/u-boot-${MACHINE}-dev.install
-}
-
-COMPATIBLE_MACHINE = "starfive-visionfive2"
diff --git a/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2023.10.bb b/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2023.10.bb
new file mode 100644
index 00000000..5428080a
--- /dev/null
+++ b/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2023.10.bb
@@ -0,0 +1,29 @@
+#
+# Copyright (c) Siemens AG, 2023
+#
+# SPDX-License-Identifier: MIT
+
+require recipes-bsp/u-boot/u-boot-custom.inc
+
+COMPATIBLE_MACHINE = "starfive-visionfive2"
+
+SRC_URI += "https://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2 \
+    file://starfive-visionfive2-rules.tmpl"
+SRC_URI[sha256sum] = "e00e6c6f014e046101739d08d06f328811cebcf5ae101348f409cbbd55ce6900"
+
+DEPENDS += "opensbi-starfive-visionfive2 jh7110-u-boot-spl-tool-native"
+DEBIAN_BUILD_DEPENDS .= ", opensbi-starfive-visionfive2, \
+    jh7110-u-boot-spl-tool:native, \
+    swig, python3-dev:native, python3-setuptools, \
+    libssl-dev:${DISTRO_ARCH}, libssl-dev:native"
+
+U_BOOT_CONFIG = "starfive_visionfive2_defconfig"
+U_BOOT_BIN = "u-boot.itb spl/u-boot-spl.bin.normal.out"
+
+TEMPLATE_FILES += "starfive-visionfive2-rules.tmpl"
+
+S = "${WORKDIR}/u-boot-${PV}"
+
+do_prepare_build:append() {
+	cp ${WORKDIR}/starfive-visionfive2-rules ${S}/debian/rules
+}
diff --git a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
index 99156f81..ed8a3b71 100644
--- a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
+++ b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
@@ -12,9 +12,9 @@
 # This is required to boot efi with the correct device tree, which is included in the fit image.
 
 # SPL
-part --source rawcopy --sourceparams "file=/usr/share/jh7110-uboot-spl-image/u-boot-spl.bin.normal.out" --ondisk mmcblk1 --fixed-size  2M --offset 2M --part-type 2E54B353-1271-4842-806F-E436D6AF6985
+part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/u-boot-spl.bin.normal.out" --fixed-size 2M --part-type 2E54B353-1271-4842-806F-E436D6AF6985
 # U-Boot FIT
-part --source rawcopy --sourceparams "file=/usr/share/visionfive2-u-boot-firmware/visionfive2_fw_payload.img" --ondisk mmcblk1 --fixed-size  4M --offset 4M --part-type 5B193300-FC78-40CD-8002-E86C45580B47
+part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/u-boot.itb" --fixed-size 4M --part-type BC13C2FF-59E6-4262-A352-B275FD6F7172
 # EFI
 part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot,dtb=${DTB_VISIONFIVE2}" --use-uuid --label efi --part-type EF00 --align 1024
 # rootfs
-- 
2.35.3


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

* [PATCH v2 6/8] meta-isar: starfive-visionfive2: Drop obsolete recipes
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
                   ` (4 preceding siblings ...)
  2024-01-09  7:33 ` [PATCH v2 5/8] meta-isar: starfive-visionfive2: Switch to upstream U-Boot Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 7/8] meta-isar: linux-mainline: Update to 6.6.10 Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel Jan Kiszka
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

We are now using U-Boot for what these recipes where once introduced.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 .../jh7110-u-boot-spl-image/files/install     |  1 -
 .../jh7110-u-boot-spl-image/files/rules       | 10 -----
 .../jh7110-u-boot-spl-image_0.1.bb            | 32 ---------------
 .../files/rules.tmpl                          | 12 ------
 .../files/visionfive2-u-boot-firmware.install |  1 -
 .../visionfive2-uboot-fit-image.its.tmpl      | 41 -------------------
 .../visionfive2-u-boot-firmware.bb            | 38 -----------------
 7 files changed, 135 deletions(-)
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/install
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
 delete mode 100644 meta-isar/recipes-bsp/jh7110-u-boot-spl-image/jh7110-u-boot-spl-image_0.1.bb
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl
 delete mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb

diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/install b/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/install
deleted file mode 100644
index c300f842..00000000
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/install
+++ /dev/null
@@ -1 +0,0 @@
-u-boot-spl.bin.normal.out usr/share/jh7110-uboot-spl-image
diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules b/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
deleted file mode 100644
index a8b2c6b8..00000000
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/files/rules
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/make -f
-
-U_BOOT_SPL_BIN := /usr/lib/u-boot/starfive-visionfive2/u-boot-spl.bin
-
-override_dh_auto_build:
-	cp $(U_BOOT_SPL_BIN) u-boot-spl.bin
-	spl_tool -c -f u-boot-spl.bin
-
-%:
-	dh \$@
diff --git a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/jh7110-u-boot-spl-image_0.1.bb b/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/jh7110-u-boot-spl-image_0.1.bb
deleted file mode 100644
index c004c86c..00000000
--- a/meta-isar/recipes-bsp/jh7110-u-boot-spl-image/jh7110-u-boot-spl-image_0.1.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# Copyright (c) Siemens AG, 2023
-#
-# SPDX-License-Identifier: MIT
-
-inherit dpkg
-
-SRC_URI = "file://rules file://install"
-
-DESCRIPTION = "StarFive VisionFive 2 u-boot SPL"
-DEPENDS = "jh7110-u-boot-spl-tool-native u-boot-starfive-visionfive2"
-DEBIAN_BUILD_DEPENDS = "jh7110-u-boot-spl-tool:native, u-boot-starfive-visionfive2:${DISTRO_ARCH}"
-
-# this is a host tool
-PACKAGE_ARCH = "${BUILD_ARCH}"
-
-do_prepare_build[cleandirs] += "${S}/debian"
-do_prepare_build(){
-    deb_debianize
-    cp ${WORKDIR}/install ${S}/debian/
-}
-
-do_deploy() {
-    dpkg --fsys-tarfile ${WORKDIR}/jh7110-u-boot-spl-image_${PV}*.deb | \
-        tar xOf - "./usr/share/jh7110-uboot-spl-image/u-boot-spl.bin.normal.out" \
-        > "${DEPLOY_DIR_IMAGE}/u-boot-spl.bin.normal.out"
-}
-
-addtask deploy after do_dpkg_build before do_build
-do_deploy[dirs] = "${DEPLOY_DIR_IMAGE}"
-
-COMPATIBLE_MACHINE = "starfive-visionfive2"
diff --git a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl
deleted file mode 100644
index 4826f7d6..00000000
--- a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/make -f
-
-KERNEL_VERSION=$(shell find /usr/lib/ -maxdepth 1 -type d -name 'linux-image-*' | head -1 | sed 's/.*linux-image-//g')
-
-override_dh_auto_configure:
-	sed -i 's|<KERNEL_VERSION>|$(KERNEL_VERSION)|g' visionfive2-uboot-fit-image.its
-
-override_dh_auto_build:
-	mkimage -A riscv -O u-boot -f ${IMAGE_ITS_FILE} visionfive2_fw_payload.img
-
-%:
-	dh $@
diff --git a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install
deleted file mode 100644
index d1bdf6d6..00000000
--- a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install
+++ /dev/null
@@ -1 +0,0 @@
-visionfive2_fw_payload.img usr/share/visionfive2-u-boot-firmware
diff --git a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl
deleted file mode 100644
index 4cbe9318..00000000
--- a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl
+++ /dev/null
@@ -1,41 +0,0 @@
-/dts-v1/;
-
-/ {
-	description = "U-boot-spl FIT image for JH7110 VisionFive2";
-	#address-cells = <2>;
-
-	images {
-		firmware {
-			description = "u-boot";
-			data = /incbin/("/usr/lib/opensbi/starfive-visionfive2/fw_payload.bin");
-			type = "firmware";
-			arch = "riscv";
-			os = "u-boot";
-			load = <0x0 0x40000000>;
-			entry = <0x0 0x40000000>;
-			compression = "none";
-		};
-		fdt {
-			description = "DTB";
-			data = /incbin/("/usr/lib/linux-image-<KERNEL_VERSION>/${DTB_FILES}");
-			type = "flat_dt";
-			arch = "riscv";
-			compression = "none";
-			load = <0x46000000>;
-			entry = <0x46000000>;
-			hash {
-				algo = "sha1";
-			};
-		};
-	};
-
-	configurations {
-		default = "config-1";
-
-		config-1 {
-			description = "U-boot-spl FIT config for JH7110 VisionFive2";
-			firmware = "firmware";
-			fdt = "fdt";
-		};
-	};
-};
diff --git a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb
deleted file mode 100644
index 4fe91b45..00000000
--- a/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb
+++ /dev/null
@@ -1,38 +0,0 @@
-#
-# Copyright (c) Siemens AG, 2023
-#
-# SPDX-License-Identifier: MIT
-
-inherit dpkg
-
-DESCRIPTION = "StarFive VisionFive 2 u-boot firmware"
-
-IMAGE_ITS_FILE = "visionfive2-uboot-fit-image.its"
-SRC_URI = " \
-    file://${IMAGE_ITS_FILE}.tmpl \
-    file://rules.tmpl \
-    file://visionfive2-u-boot-firmware.install"
-
-DEPENDS += "opensbi-starfive-visionfive2 linux-image-${KERNEL_NAME}"
-DEBIAN_BUILD_DEPENDS += "opensbi-starfive-visionfive2, u-boot-tools, device-tree-compiler, linux-image-${KERNEL_NAME}"
-
-TEMPLATE_FILES = "${IMAGE_ITS_FILE}.tmpl rules.tmpl"
-TEMPLATE_VARS = "IMAGE_ITS_FILE DTB_FILES"
-
-do_prepare_build[cleandirs] += "${S}/debian"
-do_prepare_build(){
-    cp ${WORKDIR}/${IMAGE_ITS_FILE} ${S}/
-    cp ${WORKDIR}/visionfive2-u-boot-firmware.install ${S}/debian/
-    deb_debianize
-}
-
-do_deploy() {
-    dpkg --fsys-tarfile ${WORKDIR}/visionfive2-u-boot-firmware_${PV}*.deb | \
-        tar xOf - "./usr/share/visionfive2-u-boot-firmware/visionfive2_fw_payload.img" \
-        > "${DEPLOY_DIR_IMAGE}/visionfive2_fw_payload.img"
-}
-
-addtask deploy after do_dpkg_build before do_build
-do_deploy[dirs] = "${DEPLOY_DIR_IMAGE}"
-
-COMPATIBLE_MACHINE = "starfive-visionfive2"
-- 
2.35.3


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

* [PATCH v2 7/8] meta-isar: linux-mainline: Update to 6.6.10
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
                   ` (5 preceding siblings ...)
  2024-01-09  7:33 ` [PATCH v2 6/8] meta-isar: starfive-visionfive2: Drop obsolete recipes Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-09  7:33 ` [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel Jan Kiszka
  7 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

This is needed for the BeaglePlay board and will allow to use the
mainline kernel also on the VisionFive 2.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 .../{linux-mainline_5.4.203.bb => linux-mainline_6.6.10.bb} | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
 rename meta-isar/recipes-kernel/linux/{linux-mainline_5.4.203.bb => linux-mainline_6.6.10.bb} (85%)

diff --git a/meta-isar/recipes-kernel/linux/linux-mainline_5.4.203.bb b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
similarity index 85%
rename from meta-isar/recipes-kernel/linux/linux-mainline_5.4.203.bb
rename to meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
index 47270cbb..059b8534 100644
--- a/meta-isar/recipes-kernel/linux/linux-mainline_5.4.203.bb
+++ b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
@@ -1,7 +1,7 @@
 # Example recipe for building the mainline kernel
 #
 # This software is a part of ISAR.
-# Copyright (c) Siemens AG, 2018-2020
+# Copyright (c) Siemens AG, 2018-2024
 #
 # SPDX-License-Identifier: MIT
 
@@ -10,13 +10,13 @@ require recipes-kernel/linux/linux-custom.inc
 ARCHIVE_VERSION = "${@ d.getVar('PV')[:-2] if d.getVar('PV').endswith('.0') else d.getVar('PV') }"
 
 SRC_URI += " \
-    https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${ARCHIVE_VERSION}.tar.xz \
+    https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-${ARCHIVE_VERSION}.tar.xz \
     file://x86_64_defconfig \
     file://ftpm-module.cfg \
     file://subdir/no-ubifs-fs.cfg \
     file://no-root-nfs.cfg;apply=no"
 
-SRC_URI[sha256sum] = "fc933f5b13066cfa54aacb5e86747a167bad1d8d23972e4a03ab5ee36c29798a"
+SRC_URI[sha256sum] = "9ee627e4c109aec7fca3eda5898e81d201af2c7eb2f7d9d7d94c1f0e1205546c"
 
 S = "${WORKDIR}/linux-${ARCHIVE_VERSION}"
 
-- 
2.35.3


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

* [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel
  2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
                   ` (6 preceding siblings ...)
  2024-01-09  7:33 ` [PATCH v2 7/8] meta-isar: linux-mainline: Update to 6.6.10 Jan Kiszka
@ 2024-01-09  7:33 ` Jan Kiszka
  2024-01-16 11:08   ` Jan Kiszka
  7 siblings, 1 reply; 10+ messages in thread
From: Jan Kiszka @ 2024-01-09  7:33 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

From: Jan Kiszka <jan.kiszka@siemens.com>

Using 6.6 as baseline means dropping support for PCIe (M.2), timer
(alternative clocksource), PWM, CAN, PWMDAC, Display, ISP (camera). We
still get a connected and generally working board this way, and we no
longer need to maintain a separate recipe. Also the example-module now
builds fine.

As mainline is fine with the DT provided by mainline U-Boot, stop using
the kernel's DT.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 .../conf/machine/starfive-visionfive2.conf    |  6 +-----
 .../linux/files/starfive2_extra.cfg           |  6 +++---
 .../linux/linux-mainline_6.6.10.bb            |  2 ++
 .../linux/linux-starfive_5.15-visionfive2.bb  | 19 -------------------
 .../canned-wks/starfive-visionfive2.wks.in    |  2 +-
 5 files changed, 7 insertions(+), 28 deletions(-)
 delete mode 100644 meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb

diff --git a/meta-isar/conf/machine/starfive-visionfive2.conf b/meta-isar/conf/machine/starfive-visionfive2.conf
index c7f72bb3..baae7ed8 100644
--- a/meta-isar/conf/machine/starfive-visionfive2.conf
+++ b/meta-isar/conf/machine/starfive-visionfive2.conf
@@ -5,7 +5,7 @@
 
 DISTRO_ARCH = "riscv64"
 
-KERNEL_NAME ?= "starfive"
+KERNEL_NAME ?= "mainline"
 
 IMAGE_FSTYPES ?= "wic"
 WKS_FILE ?= "starfive-visionfive2.wks.in"
@@ -13,7 +13,3 @@ IMAGER_INSTALL:wic += " \
     u-boot-starfive-visionfive2 \
     ${SYSTEMD_BOOTLOADER_INSTALL}"
 IMAGER_BUILD_DEPS += "u-boot-starfive-visionfive2"
-
-# DTB file for booting
-DTB_VISIONFIVE2 = "jh7110-visionfive-v2.dtb"
-DTB_FILES = "starfive/${DTB_VISIONFIVE2}"
diff --git a/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg b/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
index d11c28de..d7c42d73 100644
--- a/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
+++ b/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
@@ -1,3 +1,3 @@
-# additional configuration to support stock debian userlands
-CONFIG_BINFMT_MISC=y
-CONFIG_SQUASHFS=m
+# still needed in 6.6, see commit 07863871dfb162965b21bb8c2e4861bdb0019da3
+CONFIG_MMC_DW=y
+CONFIG_MMC_DW_STARFIVE=y
diff --git a/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
index 059b8534..649e1e86 100644
--- a/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
+++ b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
@@ -16,6 +16,8 @@ SRC_URI += " \
     file://subdir/no-ubifs-fs.cfg \
     file://no-root-nfs.cfg;apply=no"
 
+SRC_URI:append:riscv64 = " file://starfive2_extra.cfg"
+
 SRC_URI[sha256sum] = "9ee627e4c109aec7fca3eda5898e81d201af2c7eb2f7d9d7d94c1f0e1205546c"
 
 S = "${WORKDIR}/linux-${ARCHIVE_VERSION}"
diff --git a/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb b/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb
deleted file mode 100644
index e9e0bf4a..00000000
--- a/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Copyright (c) Siemens AG, 2023
-#
-# SPDX-License-Identifier: MIT
-
-require recipes-kernel/linux/linux-custom.inc
-
-SRC_URI += " \
-    git://github.com/starfive-tech/linux.git;protocol=https;branch=JH7110_VisionFive2_devel;destsuffix=linux-visionfive-${PV} \
-    file://starfive2_extra.cfg"
-SRCREV = "a87c6861c6d96621026ee53b94f081a1a00a4cc7"
-
-S = "${WORKDIR}/linux-visionfive-${PV}"
-
-KERNEL_DEFCONFIG = "starfive_visionfive2_defconfig"
-
-LINUX_VERSION_EXTENSION = "-isar"
-
-COMPATIBLE_MACHINE = "starfive-visionfive2"
diff --git a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
index ed8a3b71..2600580a 100644
--- a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
+++ b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
@@ -16,7 +16,7 @@ part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/
 # U-Boot FIT
 part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/u-boot.itb" --fixed-size 4M --part-type BC13C2FF-59E6-4262-A352-B275FD6F7172
 # EFI
-part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot,dtb=${DTB_VISIONFIVE2}" --use-uuid --label efi --part-type EF00 --align 1024
+part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot" --use-uuid --label efi --part-type EF00 --align 1024
 # rootfs
 part / --source rootfs --use-uuid --fstype ext4 --mkfs-extraopts "-T default" --label image --active --align 1024 --exclude-path=boot/
 
-- 
2.35.3


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

* Re: [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel
  2024-01-09  7:33 ` [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel Jan Kiszka
@ 2024-01-16 11:08   ` Jan Kiszka
  0 siblings, 0 replies; 10+ messages in thread
From: Jan Kiszka @ 2024-01-16 11:08 UTC (permalink / raw)
  To: isar-users; +Cc: Felix Moessbauer

On 09.01.24 08:33, 'Jan Kiszka' via isar-users wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> Using 6.6 as baseline means dropping support for PCIe (M.2), timer
> (alternative clocksource), PWM, CAN, PWMDAC, Display, ISP (camera). We
> still get a connected and generally working board this way, and we no
> longer need to maintain a separate recipe. Also the example-module now
> builds fine.
> 
> As mainline is fine with the DT provided by mainline U-Boot, stop using
> the kernel's DT.
> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  .../conf/machine/starfive-visionfive2.conf    |  6 +-----
>  .../linux/files/starfive2_extra.cfg           |  6 +++---
>  .../linux/linux-mainline_6.6.10.bb            |  2 ++
>  .../linux/linux-starfive_5.15-visionfive2.bb  | 19 -------------------
>  .../canned-wks/starfive-visionfive2.wks.in    |  2 +-
>  5 files changed, 7 insertions(+), 28 deletions(-)
>  delete mode 100644 meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb
> 
> diff --git a/meta-isar/conf/machine/starfive-visionfive2.conf b/meta-isar/conf/machine/starfive-visionfive2.conf
> index c7f72bb3..baae7ed8 100644
> --- a/meta-isar/conf/machine/starfive-visionfive2.conf
> +++ b/meta-isar/conf/machine/starfive-visionfive2.conf
> @@ -5,7 +5,7 @@
>  
>  DISTRO_ARCH = "riscv64"
>  
> -KERNEL_NAME ?= "starfive"
> +KERNEL_NAME ?= "mainline"
>  
>  IMAGE_FSTYPES ?= "wic"
>  WKS_FILE ?= "starfive-visionfive2.wks.in"
> @@ -13,7 +13,3 @@ IMAGER_INSTALL:wic += " \
>      u-boot-starfive-visionfive2 \
>      ${SYSTEMD_BOOTLOADER_INSTALL}"
>  IMAGER_BUILD_DEPS += "u-boot-starfive-visionfive2"
> -
> -# DTB file for booting
> -DTB_VISIONFIVE2 = "jh7110-visionfive-v2.dtb"
> -DTB_FILES = "starfive/${DTB_VISIONFIVE2}"
> diff --git a/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg b/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
> index d11c28de..d7c42d73 100644
> --- a/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
> +++ b/meta-isar/recipes-kernel/linux/files/starfive2_extra.cfg
> @@ -1,3 +1,3 @@
> -# additional configuration to support stock debian userlands
> -CONFIG_BINFMT_MISC=y
> -CONFIG_SQUASHFS=m
> +# still needed in 6.6, see commit 07863871dfb162965b21bb8c2e4861bdb0019da3
> +CONFIG_MMC_DW=y
> +CONFIG_MMC_DW_STARFIVE=y
> diff --git a/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
> index 059b8534..649e1e86 100644
> --- a/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
> +++ b/meta-isar/recipes-kernel/linux/linux-mainline_6.6.10.bb
> @@ -16,6 +16,8 @@ SRC_URI += " \
>      file://subdir/no-ubifs-fs.cfg \
>      file://no-root-nfs.cfg;apply=no"
>  
> +SRC_URI:append:riscv64 = " file://starfive2_extra.cfg"
> +
>  SRC_URI[sha256sum] = "9ee627e4c109aec7fca3eda5898e81d201af2c7eb2f7d9d7d94c1f0e1205546c"
>  
>  S = "${WORKDIR}/linux-${ARCHIVE_VERSION}"
> diff --git a/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb b/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb
> deleted file mode 100644
> index e9e0bf4a..00000000
> --- a/meta-isar/recipes-kernel/linux/linux-starfive_5.15-visionfive2.bb
> +++ /dev/null
> @@ -1,19 +0,0 @@
> -#
> -# Copyright (c) Siemens AG, 2023
> -#
> -# SPDX-License-Identifier: MIT
> -
> -require recipes-kernel/linux/linux-custom.inc
> -
> -SRC_URI += " \
> -    git://github.com/starfive-tech/linux.git;protocol=https;branch=JH7110_VisionFive2_devel;destsuffix=linux-visionfive-${PV} \
> -    file://starfive2_extra.cfg"
> -SRCREV = "a87c6861c6d96621026ee53b94f081a1a00a4cc7"
> -
> -S = "${WORKDIR}/linux-visionfive-${PV}"
> -
> -KERNEL_DEFCONFIG = "starfive_visionfive2_defconfig"
> -
> -LINUX_VERSION_EXTENSION = "-isar"
> -
> -COMPATIBLE_MACHINE = "starfive-visionfive2"
> diff --git a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
> index ed8a3b71..2600580a 100644
> --- a/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
> +++ b/meta-isar/scripts/lib/wic/canned-wks/starfive-visionfive2.wks.in
> @@ -16,7 +16,7 @@ part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/
>  # U-Boot FIT
>  part --source rawcopy --sourceparams "file=/usr/lib/u-boot/starfive-visionfive2/u-boot.itb" --fixed-size 4M --part-type BC13C2FF-59E6-4262-A352-B275FD6F7172
>  # EFI
> -part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot,dtb=${DTB_VISIONFIVE2}" --use-uuid --label efi --part-type EF00 --align 1024
> +part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot" --use-uuid --label efi --part-type EF00 --align 1024
>  # rootfs
>  part / --source rootfs --use-uuid --fstype ext4 --mkfs-extraopts "-T default" --label image --active --align 1024 --exclude-path=boot/
>  

Too bad: USB ports aren't working yet, most likely because they are
PCI-connected, and that support didn't hit upstream so far. I'll see the
other day if we can at least renovate the BSP kernel support.

Jan

-- 
Siemens AG, Technology
Linux Expert Center


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

end of thread, other threads:[~2024-01-16 11:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-09  7:33 [PATCH v2 0/8] Restore cross-build for RISC-V, update VisionFive 2 Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 1/8] crossvars: Account for PACKAGE_ARCH = "${BUILD_ARCH}" Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 2/8] meta-isar: jh7110-u-boot-spl-tool: Use BPN instead of PN Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 3/8] meta-isar: starfive-visionfive2: Use kernel DTB Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 4/8] meta-isar: jh7110-u-boot-spl-tool: Rework Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 5/8] meta-isar: starfive-visionfive2: Switch to upstream U-Boot Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 6/8] meta-isar: starfive-visionfive2: Drop obsolete recipes Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 7/8] meta-isar: linux-mainline: Update to 6.6.10 Jan Kiszka
2024-01-09  7:33 ` [PATCH v2 8/8] meta-isar: Switch VisionFive 2 to mainline kernel Jan Kiszka
2024-01-16 11:08   ` Jan Kiszka

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