summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MdePkg/Library/BasePeCoffLib/RiscV/PeCoffLoaderEx.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/MdePkg/Library/BasePeCoffLib/RiscV/PeCoffLoaderEx.c b/MdePkg/Library/BasePeCoffLib/RiscV/PeCoffLoaderEx.c
index adbfe9ccf5..67c4af1d65 100644
--- a/MdePkg/Library/BasePeCoffLib/RiscV/PeCoffLoaderEx.c
+++ b/MdePkg/Library/BasePeCoffLib/RiscV/PeCoffLoaderEx.c
@@ -104,7 +104,15 @@ PeCoffLoaderImageFormatSupported (
IN UINT16 Machine
)
{
- if (Machine == IMAGE_FILE_MACHINE_RISCV64) {
+ /*
+ * ARM64 and X64 may allow such foreign images to be used when
+ * a driver implementing EDKII_PECOFF_IMAGE_EMULATOR_PROTOCOL is
+ * present.
+ */
+ if ((Machine == IMAGE_FILE_MACHINE_RISCV64) ||
+ (Machine == IMAGE_FILE_MACHINE_ARM64) ||
+ (Machine == IMAGE_FILE_MACHINE_X64))
+ {
return TRUE;
}