add riscv support from upstream v4.17

This commit is contained in:
lvxiaoqian 2023-06-28 12:34:00 +08:00 committed by laokz
parent 6b3c79145a
commit b3fb7068c3
2 changed files with 85 additions and 1 deletions

View File

@ -0,0 +1,80 @@
From 889235fee41dc9b565407ce923e5af100c839b97 Mon Sep 17 00:00:00 2001
From: Tzafrir Cohen <nvidia@cohens.org.il>
Date: Fri, 5 Feb 2021 10:36:33 +0200
Subject: [PATCH] Allow building on riscv64
---
common/compatibility.h | 4 +++-
mtcr_ul/packets_common.h | 4 +++-
tools_layouts/adb_to_c_utils.h | 4 +++-
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/common/compatibility.h b/common/compatibility.h
index f8bc817..d163478 100644
--- a/common/compatibility.h
+++ b/common/compatibility.h
@@ -63,6 +63,8 @@
# define ARCH_arm64
# elif defined(__arm__)
# define ARCH_arm6l
+# elif defined(__riscv)
+# define ARCH_riscv
# else
# error Unknown CPU architecture using the linux OS
# endif
@@ -109,7 +111,7 @@
# define U48H_FMT "0x%012llx"
# define U64D_FMT_GEN "llu"
# endif
-#elif defined(ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(ARCH_arm64)
+#elif defined(ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(ARCH_arm64) || defined(ARCH_riscv)
# define U64D_FMT "%lu"
# define U64H_FMT "0x%016lx"
# define U48H_FMT "0x%012lx"
diff --git a/mtcr_ul/packets_common.h b/mtcr_ul/packets_common.h
index 4df05ef..7f43b59 100644
--- a/mtcr_ul/packets_common.h
+++ b/mtcr_ul/packets_common.h
@@ -152,6 +152,8 @@
# define ARCH_arm64
# elif defined(__arm__)
# define ARCH_arm6l
+# elif defined(__riscv)
+# define ARCH_riscv
# else
# error Unknown CPU architecture using the linux OS
# endif
@@ -165,7 +167,7 @@
/* define macros for print fields */
//#if defined (ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(__MINGW64__)
/*
- #if !defined(UEFI_BUILD) && (defined (ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(__MINGW64__))
+ #if !defined(UEFI_BUILD) && (defined (ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(__MINGW64__) || defined(ARCH_riscv))
# define U64H_FMT "0x%016lx"
# define U64D_FMT "%lu"
# define U32H_FMT "0x%08x"
diff --git a/tools_layouts/adb_to_c_utils.h b/tools_layouts/adb_to_c_utils.h
index 2e7a1ef..61af52f 100644
--- a/tools_layouts/adb_to_c_utils.h
+++ b/tools_layouts/adb_to_c_utils.h
@@ -140,6 +140,8 @@ extern "C" {
# define ARCH_arm64
# elif defined(__arm__)
# define ARCH_arm6l
+# elif defined(__riscv)
+# define ARCH_riscv
# else
# error Unknown CPU architecture using the linux OS
# endif
@@ -183,7 +185,7 @@ extern "C" {
# define U64H_FMT "0x%016llx"
# define U48H_FMT "0x%012llx"
# endif
-#elif defined (ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(ARCH_arm64)
+#elif defined (ARCH_ia64) || defined(ARCH_x86_64) || defined(ARCH_ppc64) || defined(ARCH_arm64) || defined(ARCH_riscv)
# define U64D_FMT "%lu"
# define U64H_FMT "0x%016lx"
# define U48H_FMT "0x%012lx"
--
2.40.1

View File

@ -1,7 +1,7 @@
Name: mstflint
Summary: Firmware Burning and Diagnostics Tools
Version: 4.10.0
Release: 11
Release: 12
License: GPLv2+ or BSD
Url: https://github.com/Mellanox/mstflint
Source: https://github.com/Mellanox/%{name}/releases/download/v4.10.0-2/%{name}-%{version}.tar.gz
@ -10,6 +10,7 @@ Patch0001: fix-return-local-addr.patch
Patch0002: backport-0001-Title-Fix-error-while-burning-mcc-enabled.patch
Patch0003: backport-0001-Title-Fix-errors-found-with-checkpatch-script.patch
Patch0004: 0002-fix-build-failure-due-to-gcc-updated.patch
Patch0005: 0005-Allow-building-on-riscv64.patch
BuildRequires: libstdc++-devel zlib-devel rdma-core-devel gcc-c++ gcc
BuildRequires: libcurl-devel boost-devel libxml2-devel openssl-devel
Obsoletes: openib-mstflint <= 1.4 openib-tvflash <= 0.9.2 tvflash <= 0.9.0
@ -46,6 +47,9 @@ strip %{buildroot}/%{_libdir}/mstflint/python_tools/*.so
%{_mandir}/man1/*
%changelog
* Wed Jul 19 2023 lvxiaoqian <xiaoqian@nj.iscas.ac.cn> - 4.10.0-12
- Add riscv patch from v4.17
* Tue Jul 04 2023 Ge Wang <wang__ge@126.com> - 4.10.0-11
- Fix build failure due to gcc updated