From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7193944713273016320 X-Received: by 2002:a05:6512:2825:b0:4d8:6470:695b with SMTP id cf37-20020a056512282500b004d86470695bmr230110lfb.248.1674970839339; Sat, 28 Jan 2023 21:40:39 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:ac2:4891:0:b0:4d1:8575:2d31 with SMTP id x17-20020ac24891000000b004d185752d31ls57968lfc.0.-pod-prod-gmail; Sat, 28 Jan 2023 21:40:37 -0800 (PST) X-Google-Smtp-Source: AMrXdXtqiX1bznXb3G9cOjoygqXwF600Arp3OZgstfv/Z1jVBYW1ew/e7kUs0c4Jx+SH9l9p+qEm X-Received: by 2002:a05:6512:3f18:b0:4b5:3200:eb37 with SMTP id y24-20020a0565123f1800b004b53200eb37mr13760612lfa.43.1674970837682; Sat, 28 Jan 2023 21:40:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674970837; cv=none; d=google.com; s=arc-20160816; b=ormYpvWYZKcVMotOn3VsixZfej0uySd8c/mWqkS7MW/UO4spnRpyb53v6ix/J7+te4 Jf7a0qT3YVZu5zgoQ4Pl7JaDPujptMSA0fbvAJMzv6aMFUEyHuf3y4gxS76vx/AzS/NM hLXLcH/nGItVeTns1fBdYosR1TbSX1OQodNHb5Q0kqFDCxxgd0IywRGMpY5wxB0Ahxl2 sOGn692z73pyUrUs6qriT+7W81RBP3ZuBtbDtzLm0zMW7ZafA6SedWMNTZFvPzHkN/+7 Ys9mum8er1yYHhjrOS9a7lSaCD8NlhxDgVTFujQxloSsEFM7NeH5JUuU8kbLE/ju+2S0 4Sww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=6yw6PoMxviPNdh1/rRlM7gUGKbY+M8cgQ5dAhRrbLyI=; b=CZ6PDcXTM0jjyggmD308GpqfdIMBtors7wkS+8kBx3BK5WE3TTQTk7TNIqZ9KPH7w3 Y8jBS9Gyq/7dMV27YXZGuIfJLjLGfv6DaTGqN2xXd8ImUeWDBLvq7s8rv/JxQSDRZqld 75dHL2OO61V2vepNPl1RpytIqQ9xwctj1gDTRb8d78D1szFgQgZQir1+yqHQbD5JczsH YU+dM8suofH4YQBkI31FNkAYlWkuvVMqaIFVRwTbTMeNav5cJo3soMKTWhgtjjAhuF2y gEVdgP6ODEM90E6Gopt2tqWnLwml+TUd+HUWfwiUFBBZ3BDRDbEt+688ZMmqim5tZowB hwZA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="K/4l8JRN"; spf=pass (google.com: domain of fm-72506-20230129054036e263efe36bfdbca3c3-6_7dsv@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20230129054036e263efe36bfdbca3c3-6_7dSV@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net. [185.136.64.226]) by gmr-mx.google.com with ESMTPS id h6-20020ac25966000000b004d5786b729esi535247lfp.9.2023.01.28.21.40.37 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 28 Jan 2023 21:40:37 -0800 (PST) Received-SPF: pass (google.com: domain of fm-72506-20230129054036e263efe36bfdbca3c3-6_7dsv@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) client-ip=185.136.64.226; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="K/4l8JRN"; spf=pass (google.com: domain of fm-72506-20230129054036e263efe36bfdbca3c3-6_7dsv@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20230129054036e263efe36bfdbca3c3-6_7dSV@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 20230129054036e263efe36bfdbca3c3 for ; Sun, 29 Jan 2023 06:40:37 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=felix.moessbauer@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=6yw6PoMxviPNdh1/rRlM7gUGKbY+M8cgQ5dAhRrbLyI=; b=K/4l8JRNWJIOm4jomNcZpp5u4V34fOwNJZso3qVfQsGc+hBpOLrWtw5gY+nCChq7MJ0bJC LgeSyH06A1Sprj8h89FbYSf9SJYeKUYwa1khQtMQJblZld9UOX0afYC+0XptFvwaG7t7QADl 9C7QW2yPLnGg8kQGBSuHB3U+/PzZ8=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: daniel.bovensiepen@siemens.com, jan.kiszka@siemens.com, florian.bezdeka@siemens.com, Felix Moessbauer Subject: [PATCH 6/7] starfive-visionfive2: create u-boot firmware Date: Sun, 29 Jan 2023 05:38:55 +0000 Message-Id: <20230129053856.4014419-7-felix.moessbauer@siemens.com> In-Reply-To: <20230129053856.4014419-1-felix.moessbauer@siemens.com> References: <20230129053856.4014419-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-TUID: ZMMtJm3/TZkZ Signed-off-by: Felix Moessbauer --- .../files/rules.tmpl | 12 ++++++ .../files/visionfive2-u-boot-firmware.install | 1 + .../visionfive2-uboot-fit-image.its.tmpl | 41 +++++++++++++++++++ .../visionfive2-u-boot-firmware.bb | 36 ++++++++++++++++ 4 files changed, 90 insertions(+) create mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl create mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install create mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl create mode 100644 meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb 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 new file mode 100644 index 00000000..7af08044 --- /dev/null +++ b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/rules.tmpl @@ -0,0 +1,12 @@ +#!/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)|g' visionfive2-uboot-fit-image.its + +override_dh_auto_build: + mkimage -A riscv -O u-boot -T multi -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 new file mode 100644 index 00000000..d1bdf6d6 --- /dev/null +++ b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-u-boot-firmware.install @@ -0,0 +1 @@ +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 new file mode 100644 index 00000000..8b00288b --- /dev/null +++ b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/files/visionfive2-uboot-fit-image.its.tmpl @@ -0,0 +1,41 @@ +/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-/${DTB_FILES}"); + type = "flat_dt"; + arch = "riscv64"; + compression = "gzip"; + 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 new file mode 100644 index 00000000..b2303968 --- /dev/null +++ b/meta-isar/recipes-bsp/visionfive2-u-boot-firmware/visionfive2-u-boot-firmware.bb @@ -0,0 +1,36 @@ +# +# 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}" -- 2.34.1