Run.Flags: $(run_flags)\r
Run: $(should_run)\r
\r
+ QEMU_KERNEL_AARCH64_DEBUG:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "AARCH64"\r
+ Build.Flags: ""\r
+ Build.Target: "DEBUG"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+ QEMU_KERNEL_AARCH64_RELEASE:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "AARCH64"\r
+ Build.Flags: ""\r
+ Build.Target: "RELEASE"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+ QEMU_KERNEL_AARCH64_NOOPT:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "AARCH64"\r
+ Build.Flags: ""\r
+ Build.Target: "NOOPT"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+ QEMU_KERNEL_ARM_DEBUG:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "ARM"\r
+ Build.Flags: ""\r
+ Build.Target: "DEBUG"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+ QEMU_KERNEL_ARM_RELEASE:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "ARM"\r
+ Build.Flags: ""\r
+ Build.Target: "RELEASE"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+ QEMU_KERNEL_ARM_NOOPT:\r
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"\r
+ Build.Arch: "ARM"\r
+ Build.Flags: ""\r
+ Build.Target: "NOOPT"\r
+ Run.Flags: $(run_flags)\r
+ Run: $(should_run)\r
+\r
workspace:\r
clean: all\r
\r
args += " -cpu cortex-a57" # emulate cpu\r
elif(self.env.GetValue("TARGET_ARCH").upper() == "ARM"):\r
cmd = "qemu-system-arm"\r
- args = "-M virt"\r
+ args = "-M virt,highmem=off"\r
args += " -cpu cortex-a15" # emulate cpu\r
else:\r
raise NotImplementedError()\r
\r
# Common Args\r
- args += " -pflash " + Built_FV # path to fw\r
+ args += CommonPlatform.FvQemuArg + Built_FV # path to fw\r
args += " -m 1024" # 1gb memory\r
# turn off network\r
args += " -net none"\r
\r
DscName = os.path.join("ArmVirtPkg", "ArmVirtQemu.dsc")\r
\r
+ # this platform produces a bootable NOR flash image\r
+ FvQemuArg = " -pflash "\r
+\r
import PlatformBuildLib\r
PlatformBuildLib.CommonPlatform = CommonPlatform\r
--- /dev/null
+# @file\r
+# Script to Build OVMF UEFI firmware\r
+#\r
+# Copyright (c) Microsoft Corporation.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
+##\r
+import os\r
+import sys\r
+\r
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))\r
+from PlatformBuildLib import SettingsManager\r
+from PlatformBuildLib import PlatformBuilder\r
+\r
+ # ####################################################################################### #\r
+ # Common Configuration #\r
+ # ####################################################################################### #\r
+class CommonPlatform():\r
+ ''' Common settings for this platform. Define static data here and use\r
+ for the different parts of stuart\r
+ '''\r
+ PackagesSupported = ("ArmVirtPkg",)\r
+ ArchSupported = ("AARCH64", "ARM")\r
+ TargetsSupported = ("DEBUG", "RELEASE", "NOOPT")\r
+ Scopes = ('armvirt', 'edk2-build')\r
+ WorkspaceRoot = os.path.realpath(os.path.join(\r
+ os.path.dirname(os.path.abspath(__file__)), "..", ".."))\r
+\r
+ DscName = os.path.join("ArmVirtPkg", "ArmVirtQemuKernel.dsc")\r
+\r
+ # this platform produces an executable image that is invoked using\r
+ # the Linux/arm64 kernel boot protocol\r
+ FvQemuArg = " -kernel "\r
+\r
+import PlatformBuildLib\r
+PlatformBuildLib.CommonPlatform = CommonPlatform\r