From patchwork Sun Jan 29 05:38:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "MOESSBAUER, Felix" X-Patchwork-Id: 2561 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Sun, 29 Jan 2023 06:40:00 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f55.google.com (mail-lf1-f55.google.com [209.85.167.55]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 30T5e09o011226 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 29 Jan 2023 06:40:00 +0100 Received: by mail-lf1-f55.google.com with SMTP id f17-20020ac25091000000b004b565e69540sf3923377lfm.12; Sat, 28 Jan 2023 21:40:00 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1674970795; cv=pass; d=google.com; s=arc-20160816; b=j5fA5BJv/7Gqg+AX0SDYn1zCgwhtu2Op6eS8kd0Xx5hLiAo4qlbI3DQdxd/nR9DNCw LjQDbkMISieV4+jMkdKhNUcG6KJsex1+r0vly3RzQQBeLE/oWQ9LEg+HiChLU+3K9Nyh nUORT0nJN0P7f+UxzhOMNibqjRf536G9xdTA1NoSXOdck/dl+xa1As70o3ttTQHmCqis nMONdQumuJrOitnpvjBcb1TKCJ763oQu/WTM0FuYPgEt0b/mtWLRTa1/Xt06503niW0X QxqMWy+6xO99Hm9ZYZ6B3y0hx5yjuXZy0V5AJzUN7tbxMHEtDjf+r6hYL2tP5YI2Pazt w4ig== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:feedback-id:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:sender :dkim-signature; bh=2l0oluomTAsXH5f57MSArPU/3jz3dnlG43JRcIORTRs=; b=M5TpMJ+oaImIv0/fn4U5vreGg46oZOPlQEs1OX955ydtvCX/Wf4/klAzXssOpyhEPe YsSpoBDs9AhRD/LhEojSMJEWmAjATzr4vHNvt7oKG0bmgMEQm0dQEu0ZH2+Eg9TbJZfX K2O38y6+EE6TlWJ07JoNfce64iUlqmJYLL8I9rK9ZLwHTa1RZzBRzB8NCkqjvzW43y20 845uHWw4/rqBK79VLhoh9h1Yze8+gNNOj/+AGMkH3DfXsGGz9Iu4jZiSaGF5Q8SmVTgL nUvKallwTzu1m+EsiEi51uLfGiDykjW2QNGlVoQhreZNIlVR50lg03xgeUv3ArUP4YMq 9xkw== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=qNmxcES0; spf=pass (google.com: domain of fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20210112; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:feedback-id:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:sender:from:to:cc:subject:date :message-id:reply-to; bh=2l0oluomTAsXH5f57MSArPU/3jz3dnlG43JRcIORTRs=; b=fhkybEq/+oUCJ5DuIOsd+Y0GS0JGtUEhoKhVGHltlRTeFTEau31g6a6buDxi0dvlQo vg8Lne4fpR+Vl/NjbGYvLNmivUziAqNW7DHJgynfhkboC8M72EWNhFhY4GukDghapoBn vSg2lN8JAX8wLex8oBZWptbq4G8YVTazmAexoHemvgyQYLWneOiFjNJ3a+EpTJ0cWKuX Obd5y3vSvOXsX5EnN4yxZcNy80C1pJtcFMSInQNZ5p7oCcwo4bvuQaROqXCvqDcEdTDr evVxjyrlTneZfmd839RqK7gfbVp5uqu/drDQzdDR8dIj+bzjcRVBJQNXwUZUwBGuXrJ2 H1qg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-gm-message-state:sender:from:to:cc:subject:date:message-id :reply-to; bh=2l0oluomTAsXH5f57MSArPU/3jz3dnlG43JRcIORTRs=; b=QjKnUq9q+8l7RFCimAsl0nTCDsmyb/brDgvXqUv/qNryQxmAdK53d9pHfXzfyTsWcL 5ftOkHmqhxwdBVMWCncmDirzedx+N2cNdImWwi6uNVXwv8Kyfh0K+nY++cVhQ6xUGljK lyC54ptzzB3DDqfhRItk1d7MUghgBv0u2443IayyiyQ2Mv/9/tkE2jm8VwpsiNTLKSEF vKmi6765sf+qYQZ9/kuLuAV5c5kEjOsxMnySDcza17RdHbXLutaK6Kxk7Mhv1pJJjnV/ B2C9Ry2EgmRD5iRZA5IPNx5cM8pmTwBoq3R2UjIXh7rDXcxzD/MNQL1seW+EKo7e5BHQ mY2A== Sender: isar-users@googlegroups.com X-Gm-Message-State: AFqh2kqTq8TWWreEzpnwc3xdnWPKevdRnx2vbSXFozieSsMR6odgeK71 qBXf4dBDaKH9hUwM21QtpSo= X-Google-Smtp-Source: AMrXdXsGWLxwZbmshH5rLsAu0GMvnr+8DVX7Rcpf0A31okMAh0H4zfTIl6w7GQxFxrnxdcKNgvV5Zw== X-Received: by 2002:a05:6512:31d3:b0:4d5:8521:5d68 with SMTP id j19-20020a05651231d300b004d585215d68mr5688392lfe.319.1674970794644; Sat, 28 Jan 2023 21:39:54 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:1146:b0:4cf:ff9f:bbfd with SMTP id m6-20020a056512114600b004cfff9fbbfdls57395lfg.1.-pod-prod-gmail; Sat, 28 Jan 2023 21:39:53 -0800 (PST) X-Received: by 2002:a05:6512:3182:b0:4b5:b705:9bf7 with SMTP id i2-20020a056512318200b004b5b7059bf7mr14448810lfe.11.1674970792906; Sat, 28 Jan 2023 21:39:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674970792; cv=none; d=google.com; s=arc-20160816; b=MnORAI7AiDIpz+4VTOqo9VREwTmvQSnOuqi+JFAUHo6WuBuxDF4UcdEkqoN3cZ4rVX RJ//CVmLuuhKPFGd6HM+ExWeAs3y5rZARmodprxi+tl9HD0CkjXEMEAORgkfm5P0QekK lVU23uwzte/AZXidOwOtuH47mfjjUedby7RULBBHZe/dNPlIlrZGTt3Js/1ODehou9YE AThFgSerWu9J0XZD/n/VQQXBni8NRCAqhhWs58GNimcefKiKeE0LWkVXDGlfvisSrsoJ pId4kjyM4q3HqtUdIvyavNxDBEIEDxgaj8/um/rqhUJM8NhVHxDoTqLkI6LqOxhV/qYR Ew5g== 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=ikwEnr/hrlHgXaed//Hx4Yko6FwItn/DgblpfTxJv9A=; b=z1yOZ14EZh7Gbyvie1/VGUVfH750yp9vuFKc9PP8IYHVIUNoEr6HCLGV0VWDt4Flox ifYfi1u+yW6mUzSKHjASMvONEnWwav+gdNcb+bcdf1Nylf1qiYg74xBKOJVVU1qX5+Lh jkTyyYTKeumc+RgUv8kcrf5Fy3sAz98FXXG4wT94TUjEwWPf9ijKrkeFuLYO9Vhhxfm6 MO392+Uzreq3g+HH1paZrVrK10sMOfe1EfTKo8q2IeUklva4Q+r0it6jybDsYZVEWhyl kjl88gMVNPRvz/CmnHaPGjcUN2Phux/wvxvoVHAj+V0bhgfHh6K9oc+nq/55rNB+RxvN 6KRA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=qNmxcES0; spf=pass (google.com: domain of fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net. [185.136.64.227]) by gmr-mx.google.com with ESMTPS id g2-20020a0565123b8200b004d3d4e49b7dsi472859lfv.13.2023.01.28.21.39.52 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 28 Jan 2023 21:39:52 -0800 (PST) Received-SPF: pass (google.com: domain of fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) client-ip=185.136.64.227; Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 202301290539529c7f4820e435322965 for ; Sun, 29 Jan 2023 06:39:52 +0100 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 2/7] starfive-visionfive2: package u-boot Date: Sun, 29 Jan 2023 05:38:51 +0000 Message-Id: <20230129053856.4014419-3-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 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=qNmxcES0; spf=pass (google.com: domain of fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-72506-202301290539529c7f4820e435322965-m5qsxi@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= This patch adds the u-boot firmware for the starfive visionfive2 board. As the image is signed at build time, but verified at runtime, we get a rather complex cross dependency chain around openssl. To not diverge from the official visionfive2 BSP example, we keep the image signing. Signed-off-by: Felix Moessbauer --- ...x-offset-of-env-data-block-on-jh7110.patch | 30 +++++++ ...iscv-Fix-build-against-binutils-2.38.patch | 55 ++++++++++++ ...upport-building-double-float-modules.patch | 89 +++++++++++++++++++ ...five-visionfive2_2022.01-rc4+VF2-v2.8.0.bb | 37 ++++++++ 4 files changed, 211 insertions(+) create mode 100644 meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-fix-offset-of-env-data-block-on-jh7110.patch create mode 100644 meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-riscv-Fix-build-against-binutils-2.38.patch create mode 100644 meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0002-riscv-support-building-double-float-modules.patch create mode 100644 meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2022.01-rc4+VF2-v2.8.0.bb diff --git a/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-fix-offset-of-env-data-block-on-jh7110.patch b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-fix-offset-of-env-data-block-on-jh7110.patch new file mode 100644 index 00000000..9e1ad2a5 --- /dev/null +++ b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-fix-offset-of-env-data-block-on-jh7110.patch @@ -0,0 +1,30 @@ +From 3849b7fa6b35a5a1729c9d605d448d97862bcb5d Mon Sep 17 00:00:00 2001 +From: Felix Moessbauer +Date: Fri, 27 Jan 2023 12:36:13 +0800 +Subject: [PATCH 1/1] fix offset of env data block on jh7110 + +Xref: https://github.com/starfive-tech/u-boot/issues/39 + +Signed-off-by: Felix Moessbauer +--- + configs/starfive_visionfive2_defconfig | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configs/starfive_visionfive2_defconfig b/configs/starfive_visionfive2_defconfig +index 45c1767d34..032d208e77 100644 +--- a/configs/starfive_visionfive2_defconfig ++++ b/configs/starfive_visionfive2_defconfig +@@ -1,8 +1,8 @@ + CONFIG_RISCV=y + CONFIG_SYS_MALLOC_F_LEN=0x10000 + CONFIG_NR_DRAM_BANKS=1 +-CONFIG_ENV_SIZE=0x10000 +-CONFIG_ENV_OFFSET=0xF0000 ++CONFIG_ENV_SIZE=0x100000 ++CONFIG_ENV_OFFSET=0xF00000 + CONFIG_SPL_DM_SPI=y + CONFIG_DEFAULT_DEVICE_TREE="starfive_visionfive2" + CONFIG_SPL_MMC_SUPPORT=y +-- +2.30.2 + diff --git a/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-riscv-Fix-build-against-binutils-2.38.patch b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-riscv-Fix-build-against-binutils-2.38.patch new file mode 100644 index 00000000..6f8a2ae0 --- /dev/null +++ b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0001-riscv-Fix-build-against-binutils-2.38.patch @@ -0,0 +1,55 @@ +From 5df4b2299f86933fa79aa3bc6a3986fc7e55b7e0 Mon Sep 17 00:00:00 2001 +From: Alexandre Ghiti +Date: Mon, 3 Oct 2022 18:07:54 +0200 +Subject: [PATCH 1/2] riscv: Fix build against binutils 2.38 + +The following description is copied from the equivalent patch for the +Linux Kernel proposed by Aurelien Jarno: + +>From version 2.38, binutils default to ISA spec version 20191213. This +means that the csr read/write (csrr*/csrw*) instructions and fence.i +instruction has separated from the `I` extension, become two standalone +extensions: Zicsr and Zifencei. As the kernel uses those instruction, +this causes the following build failure: + +arch/riscv/cpu/mtrap.S: Assembler messages: +arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause' +arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc' +arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval' +arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0' + +Signed-off-by: Alexandre Ghiti +Reviewed-by: Bin Meng +Tested-by: Heinrich Schuchardt +Tested-by: Heiko Stuebner +Tested-by: Christian Stewart +Reviewed-by: Rick Chen +--- + arch/riscv/Makefile | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile +index 0b80eb8d86..53d1194ffb 100644 +--- a/arch/riscv/Makefile ++++ b/arch/riscv/Makefile +@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y) + CMODEL = medany + endif + +-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \ ++RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C) ++ ++# Newer binutils versions default to ISA spec version 20191213 which moves some ++# instructions from the I extension to the Zicsr and Zifencei extensions. ++toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei) ++ifeq ($(toolchain-need-zicsr-zifencei),y) ++ RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei ++endif ++ ++ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \ + -mcmodel=$(CMODEL) + + PLATFORM_CPPFLAGS += $(ARCH_FLAGS) +-- +2.30.2 + diff --git a/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0002-riscv-support-building-double-float-modules.patch b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0002-riscv-support-building-double-float-modules.patch new file mode 100644 index 00000000..ec7d7d32 --- /dev/null +++ b/meta-isar/recipes-bsp/u-boot/files/starfive-visionfive2/0002-riscv-support-building-double-float-modules.patch @@ -0,0 +1,89 @@ +From 5aefdcad0950c244d826988a8bd2f90584399849 Mon Sep 17 00:00:00 2001 +From: Heinrich Schuchardt +Date: Wed, 12 Oct 2022 14:59:51 +0200 +Subject: [PATCH 2/2] riscv: support building double-float modules + +The riscv32 toolchain for GCC-12 provided by kernel.org contains libgcc.a +compiled for double-float. To link to it we have to adjust how we build +U-Boot. + +As U-Boot actually does not use floating point at all this should not +make a significant difference for the produced binaries. + +Signed-off-by: Heinrich Schuchardt +Reviewed-by: Rick Chen +Reviewed-by: Leo Yu-Chi Liang +--- + arch/riscv/Kconfig | 15 +++++++++++++++ + arch/riscv/Makefile | 15 ++++++++++++--- + 2 files changed, 27 insertions(+), 3 deletions(-) + +diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig +index 0cf51799fe..25ed0ba1cf 100644 +--- a/arch/riscv/Kconfig ++++ b/arch/riscv/Kconfig +@@ -161,6 +161,21 @@ config RISCV_ISA_C + when building U-Boot, which results in compressed instructions in the + U-Boot binary. + ++config RISCV_ISA_F ++ bool "Standard extension for Single-Precision Floating Point" ++ default y ++ help ++ Adds "F" to the ISA string passed to the compiler. ++ ++config RISCV_ISA_D ++ bool "Standard extension for Double-Precision Floating Point" ++ depends on RISCV_ISA_F ++ default y ++ help ++ Adds "D" to the ISA string passed to the compiler and changes the ++ riscv32 ABI from ilp32 to ilp32d and the riscv64 ABI from lp64 to ++ lp64d. ++ + config RISCV_ISA_A + def_bool y + +diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile +index 53d1194ffb..4963b5109b 100644 +--- a/arch/riscv/Makefile ++++ b/arch/riscv/Makefile +@@ -5,15 +5,22 @@ + + ifeq ($(CONFIG_ARCH_RV64I),y) + ARCH_BASE = rv64im +- ABI = lp64 ++ ABI_BASE = lp64 + endif + ifeq ($(CONFIG_ARCH_RV32I),y) + ARCH_BASE = rv32im +- ABI = ilp32 ++ ABI_BASE = ilp32 + endif + ifeq ($(CONFIG_RISCV_ISA_A),y) + ARCH_A = a + endif ++ifeq ($(CONFIG_RISCV_ISA_F),y) ++ ARCH_F = f ++endif ++ifeq ($(CONFIG_RISCV_ISA_D),y) ++ ARCH_D = d ++ ABI_D = d ++endif + ifeq ($(CONFIG_RISCV_ISA_C),y) + ARCH_C = c + endif +@@ -24,7 +31,9 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y) + CMODEL = medany + endif + +-RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C) ++ ++RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_F)$(ARCH_D)$(ARCH_C) ++ABI = $(ABI_BASE)$(ABI_D) + + # Newer binutils versions default to ISA spec version 20191213 which moves some + # instructions from the I extension to the Zicsr and Zifencei extensions. +-- +2.30.2 + diff --git a/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2022.01-rc4+VF2-v2.8.0.bb b/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2022.01-rc4+VF2-v2.8.0.bb new file mode 100644 index 00000000..a2824a0a --- /dev/null +++ b/meta-isar/recipes-bsp/u-boot/u-boot-starfive-visionfive2_2022.01-rc4+VF2-v2.8.0.bb @@ -0,0 +1,37 @@ +# +# 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;branch=JH7110_VisionFive2_devel;destsuffix=u-boot-${PV} \ + file://starfive-visionfive2/0001-riscv-Fix-build-against-binutils-2.38.patch \ + file://starfive-visionfive2/0002-riscv-support-building-double-float-modules.patch \ + file://starfive-visionfive2/0001-fix-offset-of-env-data-block-on-jh7110.patch \ + " +SRCREV = "f1d959f0b02e16842181a4c1723ba3ea30d2e04a" + +DEBIAN_BUILD_DEPENDS .= ", libssl-dev:${HOST_ARCH}, libssl-dev:${DISTRO_ARCH}" + +# TODO: analyze the strange cross gcc include chain +DEBIAN_BUILD_DEPENDS .= ", libc6-dev-i386:${HOST_ARCH}" + +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 +}