Skip to content

Commit b2af374

Browse files
committed
Merge branch 'feature/ffa_enablement' into install_env
2 parents 338024e + 7ea80f7 commit b2af374

File tree

6 files changed

+121
-1
lines changed

6 files changed

+121
-1
lines changed

Platforms/QemuSbsaPkg/PlatformBuild.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
from io import StringIO
1313
from pathlib import Path
1414
import json
15+
import shutil
1516

1617
from edk2toolext.environment import shell_environment
1718
from edk2toolext.environment.uefi_build import UefiBuilder
@@ -360,6 +361,17 @@ def PatchRegion(self, fdfile, mainStart, size, srcfile):
360361
return 0
361362

362363
def PlatformPostBuild(self):
364+
src_dir = os.path.join(self.GetWorkspaceRoot (), "Platforms/QemuSbsaPkg/mu")
365+
dest_dir = os.path.join(self.GetWorkspaceRoot (), "Silicon/Arm/HAF/project/mu")
366+
367+
# Remove the directory if it exists
368+
if os.path.exists(dest_dir):
369+
shutil.rmtree(dest_dir)
370+
371+
# Copy the mu directory and its contents
372+
logging.info("Copying mu directory to Silicon/Arm/HAF/project")
373+
shutil.copytree(src_dir, dest_dir)
374+
363375
# Add a post build step to build BL31 and assemble the FD files
364376
op_fv = os.path.join(self.env.GetValue("BUILD_OUTPUT_BASE"), "FV")
365377

Platforms/QemuSbsaPkg/mu/AUTHORS

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# This is the list of Hafnium authors for copyright purposes.
2+
#
3+
# This does not necessarily list everyone who has contributed code, since in
4+
# some cases, their employer may be the copyright holder. To see the full list
5+
# of contributors, see the revision history in source control.
6+
#
7+
# Please keep the list sorted alphabetically.
8+
Arm Ltd.
9+
Google LLC
10+
Microsoft

Platforms/QemuSbsaPkg/mu/BUILD.gn

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Copyright 2018 The Hafnium Authors.
2+
# Copyright (c) Microsoft Corporation.
3+
#
4+
# Use of this source code is governed by a BSD-style
5+
# license that can be found in the LICENSE file or at
6+
# https://opensource.org/licenses/BSD-3-Clause.
7+
8+
import("//build/toolchain/embedded.gni")
9+
import("//build/toolchain/host.gni")
10+
11+
group("secure_qemu_aarch64") {
12+
deps = [ "//src:hafnium(:secure_qemu_aarch64_clang)" ]
13+
}
14+
15+
group("root") {
16+
deps = [
17+
":secure_qemu_aarch64",
18+
]
19+
}
20+
21+
group("test_root") {
22+
testonly = true
23+
24+
deps = [
25+
"//src:unit_tests(:host_fake_clang)",
26+
]
27+
}
28+
29+
# Describe each of the platforms used in this project.
30+
31+
host_toolchain("host_fake") {
32+
use_platform = true
33+
heap_pages = 60
34+
max_cpus = 4
35+
max_vms = 6
36+
}
37+
38+
aarch64_toolchains("secure_qemu_aarch64") {
39+
cpu = "cortex-a57"
40+
origin_address = "0x30000000"
41+
memory_protect = "//src/memory_protect:absent"
42+
boot_flow = "//src/boot_flow:spmc"
43+
console = "//src/arch/aarch64/pl011"
44+
iommu = "//src/iommu:absent"
45+
gic_version = 3
46+
gicd_base_address = "0x40060000"
47+
gicr_base_address = "0x40080000"
48+
gicr_frames = 8
49+
heap_pages = 180
50+
max_cpus = 8
51+
max_vms = 16
52+
toolchain_args = {
53+
ffa_role = "//src/ffa:spmc"
54+
plat_psci = "//src/arch/aarch64/plat/psci:spmc"
55+
plat_interrupts = "//src/arch/aarch64/plat/interrupts:gicv3"
56+
secure_world = "1"
57+
pl011_base_address = "0x60000000"
58+
plat_log_level = "LOG_LEVEL_VERBOSE"
59+
plat_num_virtual_interrupts_ids = 1024
60+
}
61+
}

Platforms/QemuSbsaPkg/mu/LICENSE

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
Copyright 2020 The Hafnium Authors
2+
Copyright (c) Microsoft Corporation.
3+
4+
Redistribution and use in source and binary forms, with or without
5+
modification, are permitted provided that the following conditions are
6+
met:
7+
8+
* Redistributions of source code must retain the above copyright
9+
notice, this list of conditions and the following disclaimer.
10+
* Redistributions in binary form must reproduce the above
11+
copyright notice, this list of conditions and the following disclaimer
12+
in the documentation and/or other materials provided with the
13+
distribution.
14+
* Neither the name of the copyright holder nor the names of its
15+
contributors may be used to endorse or promote products derived from
16+
this software without specific prior written permission.
17+
18+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Copyright 2023 The Hafnium Authors.
2+
# Copyright (c) Microsoft Corporation.
3+
#
4+
# Use of this source code is governed by a BSD-style
5+
# license that can be found in the LICENSE file or at
6+
# https://opensource.org/licenses/BSD-3-Clause.
7+
8+
source_set("secure_qemu_aarch64") {
9+
}

Silicon/Arm/HAF

Submodule HAF updated 128 files

0 commit comments

Comments
 (0)