Reviewed-by: Abner Chang <abner.ch...@hpe.com> > -----Original Message----- > From: Schaefer, Daniel > Sent: Tuesday, February 9, 2021 11:44 PM > To: devel@edk2.groups.io > Cc: G Edhaya Chandran <edhaya.chand...@arm.com>; Barton Gao > <gao...@byosoft.com.cn>; Samer El-Haj-Mahmoud <Samer.El-Haj- > mahm...@arm.com>; Eric Jin <eric....@intel.com>; Arvin Chen > <arvinx.c...@intel.com>; Leif Lindholm <l...@nuviainc.com>; Heinrich > Schuchardt <xypron.g...@gmx.de>; Chang, Abner (HPS SW/FW Technologist) > <abner.ch...@hpe.com> > Subject: [edk2-test PATCHv2 3/5] SctPkg: Add RISCV64 build support > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3042 > > Cc: G Edhaya Chandran <edhaya.chand...@arm.com> > Cc: Barton Gao <gao...@byosoft.com.cn> > Cc: Samer El-Haj-Mahmoud <samer.el-haj-mahm...@arm.com> > Cc: Eric Jin <eric....@intel.com> > Cc: Arvin Chen <arvinx.c...@intel.com> > Cc: Leif Lindholm <l...@nuviainc.com> > Cc: Heinrich Schuchardt <xypron.g...@gmx.de> > Cc: Abner Chang <abner.ch...@hpe.com> > Signed-off-by: Daniel Schaefer <daniel.schae...@hpe.com> > --- > uefi-sct/SctPkg/Application/InstallSct/InstallSctDef.h > | 4 > ++ > uefi-sct/SctPkg/Library/SctLib/SctLib.inf > | 6 ++ > uefi-sct/SctPkg/SCRT/SCRTApp/SCRTApp.inf > | 5 ++ > uefi-sct/SctPkg/SCRT/SCRTDriver/SCRTDriver.inf > | 6 > ++ > uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/DebugSupport/BlackBoxTest/Debug > SupportBBTest.inf | 6 ++ > uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/Usb2Hc/BlackBoxTest/Usb2HcTest.in > f | 4 ++ > uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/UsbHc/BlackBoxTest/UsbHcTest.inf > | 4 ++ > uefi-sct/SctPkg/TestInfrastructure/SCT/Framework/ENTS/EasLib/EntsLib.inf > | 5 ++ > uefi-sct/SctPkg/Tools/Source/GenBin/GNUmakefile > | > 4 ++ > uefi-sct/SctPkg/UEFI/IHV_SCT.dsc > | 17 +++++- > uefi-sct/SctPkg/UEFI/Protocol/DebugSupport.h > | 61 > +++++++++++++++++++- > uefi-sct/SctPkg/UEFI/UEFI_SCT.dsc > | 18 +++++- > uefi-sct/SctPkg/build.sh > | 11 +++- > 13 files changed, 144 insertions(+), 7 deletions(-) > > diff --git a/uefi-sct/SctPkg/Application/InstallSct/InstallSctDef.h b/uefi- > sct/SctPkg/Application/InstallSct/InstallSctDef.h > index a7815580..02f0283e 100644 > --- a/uefi-sct/SctPkg/Application/InstallSct/InstallSctDef.h > +++ b/uefi-sct/SctPkg/Application/InstallSct/InstallSctDef.h > @@ -3,6 +3,7 @@ > Copyright 2006 - 2017 Unified EFI, Inc.<BR> Copyright (c) 2010 - 2017, > Intel > Corporation. All rights reserved.<BR> Portions copyright (c) 2014, ARM Ltd. > All rights reserved.<BR>+ (C) Copyright 2021 Hewlett Packard Enterprise > Development LP<BR> This program and the accompanying materials are > licensed and made available under the terms and conditions of the BSD > License@@ -32,6 +33,9 @@ > #elif defined(EFIAARCH64) #define > INSTALL_SCT_PLATFORM_SHORT_NAME L"aarch64" #define > INSTALL_SCT_PLATFORM_NAME L"AARCH64"+#elif > defined(EFIRISCV64)+ #define INSTALL_SCT_PLATFORM_SHORT_NAME > L"riscv64"+ #define INSTALL_SCT_PLATFORM_NAME L"RISCV64" #else > #error "Architecture not supported" #endifdiff --git a/uefi- > sct/SctPkg/Library/SctLib/SctLib.inf > b/uefi-sct/SctPkg/Library/SctLib/SctLib.inf > index 23cb77fb..7527b203 100644 > --- a/uefi-sct/SctPkg/Library/SctLib/SctLib.inf > +++ b/uefi-sct/SctPkg/Library/SctLib/SctLib.inf > @@ -3,6 +3,7 @@ > # Copyright 2006 - 2016 Unified EFI, Inc.<BR> # Copyright (c) 2013 - 2014, > ARM Ltd. All rights reserved.<BR> # Copyright (c) 2014 - 2019, Intel > Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett Packard > Enterprise Development LP<BR> # # This program and the accompanying > materials # are licensed and made available under the terms and conditions > of the BSD License@@ -62,6 +63,11 @@ > Aarch64/initplat.c Math.c +[sources.RISCV64]+ Riscv64/SctLibPlat.h+ > Riscv64/initplat.c+ Math.c+ [sources.ia32] ia32/SctLibPlat.h > ia32/initplat.cdiff --git a/uefi-sct/SctPkg/SCRT/SCRTApp/SCRTApp.inf b/uefi- > sct/SctPkg/SCRT/SCRTApp/SCRTApp.inf > index 7aca6e30..8104a4ef 100644 > --- a/uefi-sct/SctPkg/SCRT/SCRTApp/SCRTApp.inf > +++ b/uefi-sct/SctPkg/SCRT/SCRTApp/SCRTApp.inf > @@ -2,6 +2,7 @@ > # # Copyright 2006 - 2016 Unified EFI, Inc.<BR> # Copyright (c) 2010 - > 2016, > Intel Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett > Packard Enterprise Development LP<BR> # # This program and the > accompanying materials # are licensed and made available under the terms > and conditions of the BSD License@@ -39,6 +40,10 @@ > Aarch64/GoVirtual.asm | RVCT Aarch64/GoVirtual.S | GCC > +[sources.RISCV64]+ Riscv64/VirtualMemory.c+ Riscv64/GoVirtual.S | GCC+ > [sources.ia32] ia32/VirtualMemory.c ia32/GoVirtual.asm | MSFTdiff --git > a/uefi-sct/SctPkg/SCRT/SCRTDriver/SCRTDriver.inf b/uefi- > sct/SctPkg/SCRT/SCRTDriver/SCRTDriver.inf > index ad0eb0f8..a3ef454e 100644 > --- a/uefi-sct/SctPkg/SCRT/SCRTDriver/SCRTDriver.inf > +++ b/uefi-sct/SctPkg/SCRT/SCRTDriver/SCRTDriver.inf > @@ -2,6 +2,7 @@ > # # Copyright 2006 - 2016 Unified EFI, Inc.<BR> # Copyright (c) 2010 - > 2016, > Intel Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett > Packard Enterprise Development LP<BR> # # This program and the > accompanying materials # are licensed and made available under the terms > and conditions of the BSD License@@ -69,6 +70,11 @@ > Aarch64/Dump.c Aarch64/Debug.c +[sources.RISCV64]+ Riscv64/Io.c+ > Riscv64/Dump.c+ Riscv64/Debug.c+ [sources.common] Guid.h Guid.cdiff -- > git a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/DebugSupport/BlackBoxTest/Debug > SupportBBTest.inf b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/DebugSupport/BlackBoxTest/Debug > SupportBBTest.inf > index 799f86fd..03bf7ccf 100644 > --- a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/DebugSupport/BlackBoxTest/Debug > SupportBBTest.inf > +++ b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/DebugSupport/BlackBoxTe > +++ st/DebugSupportBBTest.inf > @@ -3,6 +3,7 @@ > # Copyright 2006 - 2012 Unified EFI, Inc.<BR> # Copyright (c) 2010 - 2012, > Intel Corporation. All rights reserved.<BR> # Copyright (c) 2019, ARM Ltd. > All > rights reserved.<BR>+# (C) Copyright 2021 Hewlett Packard Enterprise > Development LP<BR> # # This program and the accompanying materials # > are licensed and made available under the terms and conditions of the BSD > License@@ -67,6 +68,11 @@ > Aarch64/DebugSupportBBTestExceptionCallbackFunction.c > Aarch64/DebugSupportBBTestCacheFunction.c +[sources.RISCV64]+ > Riscv64/PlatformIsa.c+ > Riscv64/DebugSupportBBTestExceptionCallbackFunction.c+ > Riscv64/DebugSupportBBTestCacheFunction.c+ [Packages] > SctPkg/SctPkg.dec SctPkg/UEFI/UEFI.decdiff --git a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/Usb2Hc/BlackBoxTest/Usb2HcTest.in > f b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/Usb2Hc/BlackBoxTest/Usb2HcTest.in > f > index e8118739..95ae593e 100644 > --- a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/Usb2Hc/BlackBoxTest/Usb2HcTest.in > f > +++ b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/Usb2Hc/BlackBoxTest/Usb > +++ 2HcTest.inf > @@ -2,6 +2,7 @@ > # # Copyright 2006 - 2016 Unified EFI, Inc.<BR> # Copyright (c) 2010 - > 2016, > Intel Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett > Packard Enterprise Development LP<BR> # # This program and the > accompanying materials # are licensed and made available under the terms > and conditions of the BSD License@@ -55,6 +56,9 @@ > #[sources.Aarch64] # IPF/TimerInterrupt.c +#[sources.Riscv64]+# > IPF/TimerInterrupt.c+ [Packages] MdePkg/MdePkg.dec > SctPkg/SctPkg.decdiff --git a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/UsbHc/BlackBoxTest/UsbHcTest.inf > b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/UsbHc/BlackBoxTest/UsbHcTest.inf > index efc438c1..d3bcd5ce 100644 > --- a/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/UsbHc/BlackBoxTest/UsbHcTest.inf > +++ b/uefi- > sct/SctPkg/TestCase/UEFI/EFI/Protocol/UsbHc/BlackBoxTest/UsbH > +++ cTest.inf > @@ -2,6 +2,7 @@ > # # Copyright 2006 - 2012 Unified EFI, Inc.<BR> # Copyright (c) 2010 - > 2012, > Intel Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett > Packard Enterprise Development LP<BR> # # This program and the > accompanying materials # are licensed and made available under the terms > and conditions of the BSD License@@ -55,6 +56,9 @@ > [sources.Aarch64] Aarch64/TimerInterrupt.c +[sources.RISCV64]+ > Riscv64/TimerInterrupt.c+ [Packages] MdePkg/MdePkg.dec > SctPkg/SctPkg.decdiff --git a/uefi- > sct/SctPkg/TestInfrastructure/SCT/Framework/ENTS/EasLib/EntsLib.inf > b/uefi- > sct/SctPkg/TestInfrastructure/SCT/Framework/ENTS/EasLib/EntsLib.inf > index 23f12d1a..b60e90b2 100644 > --- a/uefi- > sct/SctPkg/TestInfrastructure/SCT/Framework/ENTS/EasLib/EntsLib.inf > +++ b/uefi- > sct/SctPkg/TestInfrastructure/SCT/Framework/ENTS/EasLib/EntsL > +++ ib.inf > @@ -3,6 +3,7 @@ > # Copyright 2006 - 2012 Unified EFI, Inc.<BR> # Copyright (c) 2010 - 2012, > Intel Corporation. All rights reserved.<BR> # Copyright (c) 2019, ARM Ltd. > All > rights reserved.<BR>+# (C) Copyright 2021 Hewlett Packard Enterprise > Development LP<BR> # # This program and the accompanying materials # > are licensed and made available under the terms and conditions of the BSD > License@@ -66,6 +67,10 @@ > Aarch64/EntsLibPlat.h Aarch64/InitPlat.c +[sources.RISCV64]+ > Riscv64/EntsLibPlat.h+ Riscv64/InitPlat.c+ [Packages] MdePkg/MdePkg.dec > SctPkg/SctPkg.decdiff --git a/uefi- > sct/SctPkg/Tools/Source/GenBin/GNUmakefile b/uefi- > sct/SctPkg/Tools/Source/GenBin/GNUmakefile > index c235f313..c492d441 100644 > --- a/uefi-sct/SctPkg/Tools/Source/GenBin/GNUmakefile > +++ b/uefi-sct/SctPkg/Tools/Source/GenBin/GNUmakefile > @@ -1,6 +1,7 @@ > # # Copyright 2006 - 2010 Unified EFI, Inc.<BR> # Copyright (c) 2010 Intel > Corporation. All rights reserved.<BR>+# (C) Copyright 2021 Hewlett Packard > Enterprise Development LP<BR> # # This program and the accompanying > materials # are licensed and made available under the terms and conditions > of the BSD License@@ -31,6 +32,9 @@ ifndef ARCH > ifneq (,$(findstring arm,$(uname_m))) ARCH=ARM endif+ ifneq > (,$(findstring riscv64,$(uname_m)))+ ARCH=RISCV64+ endif ifndef ARCH > $(info Could not detected ARCH from uname results) $(error ARCH is not > defined!)diff --git a/uefi-sct/SctPkg/UEFI/IHV_SCT.dsc b/uefi- > sct/SctPkg/UEFI/IHV_SCT.dsc > index f9e86264..94bb5c36 100644 > --- a/uefi-sct/SctPkg/UEFI/IHV_SCT.dsc > +++ b/uefi-sct/SctPkg/UEFI/IHV_SCT.dsc > @@ -3,6 +3,7 @@ > # Copyright 2006 - 2016 Unified EFI, Inc.<BR> # Copyright (c) 2010 - 2016, > Intel Corporation. All rights reserved.<BR> # Copyright (c) 2019,Microchip > Technology Inc.<BR>+# (C) Copyright 2021 Hewlett Packard Enterprise > Development LP<BR> # # This program and the accompanying materials # > are licensed and made available under the terms and conditions of the BSD > License@@ -42,7 +43,7 @@ > PLATFORM_VERSION = 0.1 DSC_SPECIFICATION = > 0x00010005 OUTPUT_DIRECTORY = Build/IhvSct- > SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64+ > SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64|RISCV64 > BUILD_TARGETS = DEBUG|RELEASE SKUID_IDENTIFIER > = > DEFAULT @@ -109,6 +110,12 @@ > *_*_AARCH64_PP_FLAGS = -D EFIAARCH64 $(GCC_VER_MACRO) > RVCT:*_*_AARCH64_DLINK_FLAGS = --muldefweak + > *_*_RISCV64_CC_FLAGS = -D EFIRISCV64 $(GCC_VER_MACRO)+ > GCC:*_*_RISCV64_CC_FLAGS = -D EFIRISCV64 $(GCC_VER_MACRO) - > ffreestanding -nostdinc -nostdlib -Wno-error=unused-function -Wno- > error=unused-but-set-variable -Wno-error+ *_*_RISCV64_VFRPP_FLAGS > = -D EFIRISCV64 $(GCC_VER_MACRO)+ *_*_RISCV64_APP_FLAGS = -D > EFIRISCV64 $(GCC_VER_MACRO)+ *_*_RISCV64_PP_FLAGS = -D > EFIRISCV64 $(GCC_VER_MACRO)+ DEBUG_*_*_CC_FLAGS = -DEFI_DEBUG > RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG @@ -124,6 +131,9 @@ > [Libraries.AARCH64] > ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf > +[Libraries.RISCV64]+ > ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf+ > [Libraries.IA32,Libraries.X64] [LibraryClasses.common]@@ -146,6 +156,9 @@ > [LibraryClasses.AARCH64] > NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf > +[LibraryClasses.RISCV64]+ > NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf+ > [LibraryClasses.IA32] > ########################################################## > #####################@@ -228,4 +241,4 @@ > SctPkg/TestInfrastructure/SCT/Framework/Sct.inf > [Components.IA32, Components.X64] > SctPkg/TestCase/UEFI/IHV/Protocol/PlatformDriverOverride/BlackBoxTest/I > hvPlatformDriverOverrideBBTest.inf- > SctPkg/TestCase/UEFI/IHV/Protocol/PlatformToDriverConfiguration/BlackBo > xTest/IhvPlatformToDriverConfigurationBBTest.inf > \ No newline at end of file > +SctPkg/TestCase/UEFI/IHV/Protocol/PlatformToDriverConfiguration/BlackB > o > +xTest/IhvPlatformToDriverConfigurationBBTest.inf > diff --git a/uefi-sct/SctPkg/UEFI/Protocol/DebugSupport.h b/uefi- > sct/SctPkg/UEFI/Protocol/DebugSupport.h > index 7fba87ae..1963d619 100644 > --- a/uefi-sct/SctPkg/UEFI/Protocol/DebugSupport.h > +++ b/uefi-sct/SctPkg/UEFI/Protocol/DebugSupport.h > @@ -2,6 +2,7 @@ > Copyright 2006 - 2016 Unified EFI, Inc.<BR> Copyright (c) 2010 - 2016, > Intel > Corporation. All rights reserved.<BR> + (C) Copyright 2021 Hewlett Packard > Enterprise Development LP<BR> This program and the accompanying > materials are licensed and made available under the terms and conditions of > the BSD License@@ -607,6 +608,60 @@ typedef struct { > UINT64 FAR; // Fault Address Register } EFI_SYSTEM_CONTEXT_AARCH64; > +///+/// RISC-V processor exception types.+///+#define > EXCEPT_RISCV_INST_MISALIGNED 0+#define > EXCEPT_RISCV_INST_ACCESS_FAULT 1+#define > EXCEPT_RISCV_ILLEGAL_INST 2+#define > EXCEPT_RISCV_BREAKPOINT 3+#define > EXCEPT_RISCV_LOAD_ADDRESS_MISALIGNED 4+#define > EXCEPT_RISCV_LOAD_ACCESS_FAULT 5+#define > EXCEPT_RISCV_STORE_AMO_ADDRESS_MISALIGNED 6+#define > EXCEPT_RISCV_STORE_AMO_ACCESS_FAULT 7+#define > EXCEPT_RISCV_ENV_CALL_FROM_UMODE 8+#define > EXCEPT_RISCV_ENV_CALL_FROM_SMODE 9+#define > EXCEPT_RISCV_ENV_CALL_FROM_HMODE 10+#define > EXCEPT_RISCV_ENV_CALL_FROM_MMODE 11++#define > EXCEPT_RISCV_SOFTWARE_INT 0x0+#define EXCEPT_RISCV_TIMER_INT > 0x1++typedef struct {+ UINT64 X0;+ UINT64 X1;+ UINT64 X2;+ UINT64 > X3;+ UINT64 X4;+ UINT64 X5;+ UINT64 X6;+ UINT64 X7;+ UINT64 X8;+ > UINT64 X9;+ UINT64 X10;+ UINT64 X11;+ UINT64 X12;+ UINT64 X13;+ > UINT64 X14;+ UINT64 X15;+ UINT64 X16;+ UINT64 X17;+ UINT64 X18;+ > UINT64 X19;+ UINT64 X20;+ UINT64 X21;+ UINT64 X22;+ UINT64 X23;+ > UINT64 X24;+ UINT64 X25;+ UINT64 X26;+ UINT64 X27;+ UINT64 X28;+ > UINT64 X29;+ UINT64 X30;+ UINT64 X31;+} > EFI_SYSTEM_CONTEXT_RISCV64;+ // // Universal EFI_SYSTEM_CONTEXT > definition //@@ -618,6 +673,7 @@ union { > EFI_SYSTEM_CONTEXT_IPF *SystemContextIpf; > EFI_SYSTEM_CONTEXT_ARM *SystemContextArm; > EFI_SYSTEM_CONTEXT_AARCH64 *SystemContextAArch64;+ > EFI_SYSTEM_CONTEXT_RISCV64 *SystemContextRiscV64; } > EFI_SYSTEM_CONTEXT; //@@ -645,6 +701,8 @@ VOID > #define IMAGE_FILE_MACHINE_EBC 0x0EBC #define > IMAGE_FILE_MACHINE_ARMTHUMB_MIXED 0x01c2 #define > IMAGE_FILE_MACHINE_ARM64 0xAA64+#define > IMAGE_FILE_MACHINE_RISCV64 0x5064+ typedef enum {@@ -653,7 > +711,8 @@ enum { > IsaIpf = IMAGE_FILE_MACHINE_IA64, IsaEbc = > IMAGE_FILE_MACHINE_EBC, IsaArm = > IMAGE_FILE_MACHINE_ARMTHUMB_MIXED, ///< 0x01c2- IsaAArch64 = > IMAGE_FILE_MACHINE_ARM64 ///< 0xAA64+ IsaAArch64 = > IMAGE_FILE_MACHINE_ARM64, ///< 0xAA64+ IsaRiscv64 = > IMAGE_FILE_MACHINE_RISCV64 ///< 0x5064 } > EFI_INSTRUCTION_SET_ARCHITECTURE; typedef struct > _EFI_DEBUG_SUPPORT_PROTOCOL EFI_DEBUG_SUPPORT_PROTOCOL;;diff - > -git a/uefi-sct/SctPkg/UEFI/UEFI_SCT.dsc b/uefi- > sct/SctPkg/UEFI/UEFI_SCT.dsc > index 2e97687b..e13e40e4 100644 > --- a/uefi-sct/SctPkg/UEFI/UEFI_SCT.dsc > +++ b/uefi-sct/SctPkg/UEFI/UEFI_SCT.dsc > @@ -2,7 +2,7 @@ > # # Copyright 2006 - 2017 Unified EFI, Inc.<BR> # Copyright (c) 2010 - > 2018, > Intel Corporation. All rights reserved.<BR>-# (C) Copyright 2017 Hewlett > Packard Enterprise Development LP<BR>+# (C) Copyright 2017 - 2021 > Hewlett Packard Enterprise Development LP<BR> # # This program and the > accompanying materials # are licensed and made available under the terms > and conditions of the BSD License@@ -42,7 +42,7 @@ > PLATFORM_VERSION = 0.1 DSC_SPECIFICATION = > 0x00010005 OUTPUT_DIRECTORY = Build/UefiSct- > SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64+ > SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64|RISCV64 > BUILD_TARGETS = DEBUG|RELEASE SKUID_IDENTIFIER > = > DEFAULT @@ -112,6 +112,12 @@ > *_*_AARCH64_PP_FLAGS = -D EFIAARCH64 $(GCC_VER_MACRO) > RVCT:*_*_AARCH64_DLINK_FLAGS = --muldefweak + > *_*_RISCV64_CC_FLAGS = -D EFIRISCV64 $(GCC_VER_MACRO)+ > GCC:*_*_RISCV64_CC_FLAGS = -D EFIRISCV64 $(GCC_VER_MACRO) - > ffreestanding -nostdinc -nostdlib -Wno-error=unused-function -Wno- > error=unused-but-set-variable -Wno-error+ *_*_RISCV64_VFRPP_FLAGS > = -D EFIRISCV64 $(GCC_VER_MACRO)+ *_*_RISCV64_APP_FLAGS = -D > EFIRISCV64 $(GCC_VER_MACRO)+ *_*_RISCV64_PP_FLAGS = -D > EFIRISCV64 $(GCC_VER_MACRO)+ DEBUG_*_*_CC_FLAGS = -DEFI_DEBUG > RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG @@ -129,6 +135,9 @@ > [Libraries.AARCH64] > ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf > +[Libraries.RISCV64]+ > ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf+ > [LibraryClasses.common] > UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiA > pplicationEntryPoint.inf > UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntry > Point.inf@@ -157,6 +166,9 @@ > [LibraryClasses.AARCH64] > NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf > +[LibraryClasses.RISCV64]+ > NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf+ > ########################################################## > ##################### # # These are the components that will be built > by the master makefile@@ -483,4 +495,4 @@ > SctPkg/TestCase/RIVL/Protocol/Http/Http/HttpENTSTest.inf > > SctPkg/TestCase/RIVL/Protocol/Http/HttpServiceBinding/HttpServiceBinding > ENTSTest.inf [Components.IA32, Components.X64]- > SctPkg/TestCase/UEFI/EFI/Generic/ExeMode/BlackBoxTest/ExeModeBBTes > t.inf > \ No newline at end of file > +SctPkg/TestCase/UEFI/EFI/Generic/ExeMode/BlackBoxTest/ExeModeBBTe > st.inf > diff --git a/uefi-sct/SctPkg/build.sh b/uefi-sct/SctPkg/build.sh index > 37667711..f7c5e4bd 100755 > --- a/uefi-sct/SctPkg/build.sh > +++ b/uefi-sct/SctPkg/build.sh > @@ -2,6 +2,7 @@ > # > # Copyright 2006 - 2015 Unified EFI, Inc.<BR> # Copyright (c) 2011 - 2020, > ARM Ltd. All rights reserved.<BR> > +# (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR> > # > # This program and the accompanying materials # are licensed and made > available under the terms and conditions of the BSD License @@ -22,6 +23,8 > @@ function get_build_arch > BUILD_ARCH=ARM;; > aarch64*) > BUILD_ARCH=AARCH64;; > + riscv64*) > + BUILD_ARCH=RISCV64;; > *) > BUILD_ARCH=other;; > esac > @@ -47,6 +50,12 @@ function set_cross_compile > else > TEMP_CROSS_COMPILE=arm-linux-gnueabihf- > fi > + elif [ "$SCT_TARGET_ARCH" == "RISCV64" ]; then > + if [ X"$CROSS_COMPILE_64" != X"" ]; then > + TEMP_CROSS_COMPILE="$CROSS_COMPILE_64" > + else > + TEMP_CROSS_COMPILE=riscv64-unknown-elf- > + fi > else > echo "Unsupported target architecture '$SCT_TARGET_ARCH'!" > >&2 > fi > @@ -110,7 +119,7 @@ PrintUsage() { > #Print Help > # > echo "Usage:" > - echo " $0 <architecture (ARM, AARCH64, X64, etc)> \ > + echo " $0 <architecture (ARM, AARCH64, X64, RISCV64, etc)> \ > <toolchain name (RVCT or ARMGCC or GCC*)> \ [build type (RELEASE OR > DEBUG, DEFAULT: DEBUG)]" > } > -- > 2.30.0
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#72181): https://edk2.groups.io/g/devel/message/72181 Mute This Topic: https://groups.io/mt/80507447/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-