diff options
Diffstat (limited to 'ArmVirtPkg')
-rw-r--r-- | ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml | 43 | ||||
-rw-r--r-- | ArmVirtPkg/PlatformCI/PlatformBuildLib.py | 4 | ||||
-rw-r--r-- | ArmVirtPkg/PlatformCI/QemuBuild.py | 3 | ||||
-rw-r--r-- | ArmVirtPkg/PlatformCI/QemuKernelBuild.py | 35 |
4 files changed, 83 insertions, 2 deletions
diff --git a/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml b/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml index 44a1d3d..2b6cc11 100644 --- a/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml +++ b/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml @@ -72,6 +72,49 @@ jobs: Run.Flags: $(run_flags)
Run: $(should_run)
+ QEMU_KERNEL_AARCH64_DEBUG:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "AARCH64"
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ QEMU_KERNEL_AARCH64_RELEASE:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "AARCH64"
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ QEMU_KERNEL_AARCH64_NOOPT:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "AARCH64"
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ QEMU_KERNEL_ARM_DEBUG:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "ARM"
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ QEMU_KERNEL_ARM_RELEASE:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "ARM"
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ QEMU_KERNEL_ARM_NOOPT:
+ Build.File: "$(package)/PlatformCI/QemuKernelBuild.py"
+ Build.Arch: "ARM"
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+
workspace:
clean: all
diff --git a/ArmVirtPkg/PlatformCI/PlatformBuildLib.py b/ArmVirtPkg/PlatformCI/PlatformBuildLib.py index 91aa9b3..405817c 100644 --- a/ArmVirtPkg/PlatformCI/PlatformBuildLib.py +++ b/ArmVirtPkg/PlatformCI/PlatformBuildLib.py @@ -226,13 +226,13 @@ class PlatformBuilder(UefiBuilder, BuildSettingsManager): args += " -cpu cortex-a57" # emulate cpu
elif(self.env.GetValue("TARGET_ARCH").upper() == "ARM"):
cmd = "qemu-system-arm"
- args = "-M virt"
+ args = "-M virt,highmem=off"
args += " -cpu cortex-a15" # emulate cpu
else:
raise NotImplementedError()
# Common Args
- args += " -pflash " + Built_FV # path to fw
+ args += CommonPlatform.FvQemuArg + Built_FV # path to fw
args += " -m 1024" # 1gb memory
# turn off network
args += " -net none"
diff --git a/ArmVirtPkg/PlatformCI/QemuBuild.py b/ArmVirtPkg/PlatformCI/QemuBuild.py index f4dcc1d..c651a95 100644 --- a/ArmVirtPkg/PlatformCI/QemuBuild.py +++ b/ArmVirtPkg/PlatformCI/QemuBuild.py @@ -27,5 +27,8 @@ class CommonPlatform(): DscName = os.path.join("ArmVirtPkg", "ArmVirtQemu.dsc")
+ # this platform produces a bootable NOR flash image
+ FvQemuArg = " -pflash "
+
import PlatformBuildLib
PlatformBuildLib.CommonPlatform = CommonPlatform
diff --git a/ArmVirtPkg/PlatformCI/QemuKernelBuild.py b/ArmVirtPkg/PlatformCI/QemuKernelBuild.py new file mode 100644 index 0000000..f340dfa --- /dev/null +++ b/ArmVirtPkg/PlatformCI/QemuKernelBuild.py @@ -0,0 +1,35 @@ +# @file
+# Script to Build OVMF UEFI firmware
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+import os
+import sys
+
+sys.path.append(os.path.dirname(os.path.abspath(__file__)))
+from PlatformBuildLib import SettingsManager
+from PlatformBuildLib import PlatformBuilder
+
+ # ####################################################################################### #
+ # Common Configuration #
+ # ####################################################################################### #
+class CommonPlatform():
+ ''' Common settings for this platform. Define static data here and use
+ for the different parts of stuart
+ '''
+ PackagesSupported = ("ArmVirtPkg",)
+ ArchSupported = ("AARCH64", "ARM")
+ TargetsSupported = ("DEBUG", "RELEASE", "NOOPT")
+ Scopes = ('armvirt', 'edk2-build')
+ WorkspaceRoot = os.path.realpath(os.path.join(
+ os.path.dirname(os.path.abspath(__file__)), "..", ".."))
+
+ DscName = os.path.join("ArmVirtPkg", "ArmVirtQemuKernel.dsc")
+
+ # this platform produces an executable image that is invoked using
+ # the Linux/arm64 kernel boot protocol
+ FvQemuArg = " -kernel "
+
+import PlatformBuildLib
+PlatformBuildLib.CommonPlatform = CommonPlatform
|