mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-07-20 05:07:13 +00:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b187fb9232 | |||
| c39bb4ce3b |
+17
-8
@@ -53,7 +53,7 @@ new file mode 100644
|
|||||||
index 0000000..840683a
|
index 0000000..840683a
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/deployments/se-proxy/opteesp/lse.S
|
+++ b/deployments/se-proxy/opteesp/lse.S
|
||||||
@@ -0,0 +1,19 @@
|
@@ -0,0 +1,28 @@
|
||||||
+// SPDX-License-Identifier: BSD-3-Clause
|
+// SPDX-License-Identifier: BSD-3-Clause
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
|
+ * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
|
||||||
@@ -61,18 +61,27 @@ index 0000000..840683a
|
|||||||
+
|
+
|
||||||
+.text
|
+.text
|
||||||
+.globl __aarch64_cas4_acq_rel
|
+.globl __aarch64_cas4_acq_rel
|
||||||
|
+.globl __aarch64_cas4_sync
|
||||||
+
|
+
|
||||||
+__aarch64_cas4_acq_rel:
|
+__aarch64_cas4_acq_rel:
|
||||||
+ mov w16, w0
|
+ mov w16, w0
|
||||||
+ ldaxr w0, [x2]
|
+ ldaxr w0, [x2]
|
||||||
+ cmp w0, w16
|
+ cmp w0, w16
|
||||||
+0: bne 1f
|
+0: bne 1f
|
||||||
+
|
+
|
||||||
+ stlxr w17, w1, [x2]
|
+ stlxr w17, w1, [x2]
|
||||||
+ cbnz w17, 0b
|
+ cbnz w17, 0b
|
||||||
+1: ret
|
+1: ret
|
||||||
+
|
+
|
||||||
|
+__aarch64_cas4_sync:
|
||||||
|
+ mov w16, w0
|
||||||
|
+ ldxr w0, [x2]
|
||||||
|
+ cmp w0, w16
|
||||||
|
+0: bne 1f
|
||||||
+
|
+
|
||||||
|
+ stlxr w17, w1, [x2]
|
||||||
|
+ cbnz w17, 0b
|
||||||
|
+1: ret
|
||||||
diff --git a/external/openamp/libmetal.cmake b/external/openamp/libmetal.cmake
|
diff --git a/external/openamp/libmetal.cmake b/external/openamp/libmetal.cmake
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000..3a647e6
|
index 0000000..3a647e6
|
||||||
|
|||||||
@@ -77,9 +77,14 @@ export BTOOLS_PATH = "${EDK_TOOLS_PATH}/BinWrappers/PosixLike"
|
|||||||
|
|
||||||
EDK_COMPILER ?= "GCC5"
|
EDK_COMPILER ?= "GCC5"
|
||||||
export GCC5_AARCH64_PREFIX = "${TARGET_PREFIX}"
|
export GCC5_AARCH64_PREFIX = "${TARGET_PREFIX}"
|
||||||
|
export GCC5_ARM_PREFIX = "${TARGET_PREFIX}"
|
||||||
|
|
||||||
EDK_COMPILER:toolchain-clang = "CLANG38"
|
EDK_COMPILER:toolchain-clang = "CLANG38"
|
||||||
export CLANG38_AARCH64_PREFIX = "${TARGET_PREFIX}"
|
export CLANG38_AARCH64_PREFIX = "${TARGET_PREFIX}"
|
||||||
|
export CLANG38_ARM_PREFIX = "${TARGET_PREFIX}"
|
||||||
|
|
||||||
|
#FIXME - arm32 doesn't work with clang due to a linker issue
|
||||||
|
TOOLCHAIN:arm = "gcc"
|
||||||
|
|
||||||
do_configure:prepend() {
|
do_configure:prepend() {
|
||||||
sed -i -e "s#-target ${HOST_ARCH}-linux-gnu*#-target ${HOST_SYS}#" ${S}/BaseTools/Conf/tools_def.template
|
sed -i -e "s#-target ${HOST_ARCH}-linux-gnu*#-target ${HOST_SYS}#" ${S}/BaseTools/Conf/tools_def.template
|
||||||
|
|||||||
@@ -3,6 +3,15 @@ EDK2_PLATFORM:qemuarm64-secureboot = "ArmVirtQemu-AARCH64"
|
|||||||
EDK2_PLATFORM_DSC:qemuarm64-secureboot = "ArmVirtPkg/ArmVirtQemu.dsc"
|
EDK2_PLATFORM_DSC:qemuarm64-secureboot = "ArmVirtPkg/ArmVirtQemu.dsc"
|
||||||
EDK2_BIN_NAME:qemuarm64-secureboot = "QEMU_EFI.fd"
|
EDK2_BIN_NAME:qemuarm64-secureboot = "QEMU_EFI.fd"
|
||||||
|
|
||||||
|
COMPATIBLE_MACHINE:qemuarm64 = "qemuarm64"
|
||||||
|
EDK2_PLATFORM:qemuarm64 = "ArmVirtQemu-AARCH64"
|
||||||
|
EDK2_PLATFORM_DSC:qemuarm64 = "ArmVirtPkg/ArmVirtQemu.dsc"
|
||||||
|
EDK2_BIN_NAME:qemuarm64 = "QEMU_EFI.fd"
|
||||||
|
|
||||||
|
COMPATIBLE_MACHINE:qemuarm = "qemuarm"
|
||||||
|
EDK2_PLATFORM:qemuarm = "ArmVirtQemu-ARM"
|
||||||
|
EDK2_PLATFORM_DSC:qemuarm = "ArmVirtPkg/ArmVirtQemu.dsc"
|
||||||
|
EDK2_BIN_NAME:qemuarm = "QEMU_EFI.fd"
|
||||||
|
|
||||||
COMPATIBLE_MACHINE:qemu-generic-arm64 = "qemu-generic-arm64"
|
COMPATIBLE_MACHINE:qemu-generic-arm64 = "qemu-generic-arm64"
|
||||||
DEPENDS:append:qemu-generic-arm64 = " trusted-firmware-a coreutils-native"
|
DEPENDS:append:qemu-generic-arm64 = " trusted-firmware-a coreutils-native"
|
||||||
@@ -21,3 +30,11 @@ do_install:append:qemu-generic-arm64() {
|
|||||||
# QEMU requires that the images be minimum of 256M in size
|
# QEMU requires that the images be minimum of 256M in size
|
||||||
truncate -s 256M ${D}/firmware/SBSA_FLASH*.fd
|
truncate -s 256M ${D}/firmware/SBSA_FLASH*.fd
|
||||||
}
|
}
|
||||||
|
|
||||||
|
do_install:append:qemuarm64() {
|
||||||
|
install ${B}/Build/${EDK2_PLATFORM}/${EDK2_BUILD_MODE}_${EDK_COMPILER}/FV/${EDK2_BIN_NAME} ${D}/firmware/
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install:append:qemuarm() {
|
||||||
|
install ${B}/Build/${EDK2_PLATFORM}/${EDK2_BUILD_MODE}_${EDK_COMPILER}/FV/${EDK2_BIN_NAME} ${D}/firmware/
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
CONFIG_ACPI=y
|
||||||
|
CONFIG_EFI=y
|
||||||
@@ -11,3 +11,9 @@ SRC_URI:append:qemuarm64-secureboot = " \
|
|||||||
file://skip-unavailable-memory.patch \
|
file://skip-unavailable-memory.patch \
|
||||||
file://tee.cfg \
|
file://tee.cfg \
|
||||||
"
|
"
|
||||||
|
|
||||||
|
FILESEXTRAPATHS:prepend:qemuarm64 = "${ARMFILESPATHS}"
|
||||||
|
SRC_URI:append:qemuarm64 = " file://efi.cfg"
|
||||||
|
|
||||||
|
FILESEXTRAPATHS:prepend:qemuarm = "${ARMFILESPATHS}"
|
||||||
|
SRC_URI:append:qemuarm = " file://efi.cfg"
|
||||||
|
|||||||
Reference in New Issue
Block a user