mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-07-17 16:17:09 +00:00
Compare commits
16 Commits
yocto-4.0.2
...
4.0.7
| Author | SHA1 | Date | |
|---|---|---|---|
| c3e9fb12aa | |||
| 10c27f061b | |||
| 5c33ed794a | |||
| 2384dc1a9a | |||
| 5d759ca68d | |||
| 58a33d0860 | |||
| 5c4f98bbc5 | |||
| 6b2d97cecd | |||
| 936c02ec13 | |||
| bf98ef902e | |||
| 260e3adc2b | |||
| 1c9ba5d495 | |||
| 668df530a5 | |||
| d7b7b6fb6c | |||
| b187fb9232 | |||
| c39bb4ce3b |
+27
-11
@@ -7,6 +7,10 @@ variables:
|
||||
# by default
|
||||
FF_USE_LEGACY_KUBERNETES_EXECUTION_STRATEGY: 0
|
||||
FF_KUBERNETES_HONOR_ENTRYPOINT: 1
|
||||
# The directory to use as the persistent cache (the root for DL_DIR,
|
||||
# SSTATE_DIR, etc). The default is the build tree which will not be
|
||||
# persistent, so this should be set in the runner.
|
||||
CACHE_DIR: $CI_PROJECT_DIR
|
||||
|
||||
stages:
|
||||
- prep
|
||||
@@ -20,23 +24,19 @@ stages:
|
||||
interruptible: true
|
||||
variables:
|
||||
KAS_WORK_DIR: $CI_PROJECT_DIR/work
|
||||
KAS_REPO_REF_DIR: $CI_BUILDS_DIR/persist/repos
|
||||
SSTATE_DIR: $CI_BUILDS_DIR/persist/sstate
|
||||
DL_DIR: $CI_BUILDS_DIR/persist/downloads
|
||||
KAS_BUILD_DIR: $KAS_WORK_DIR/build
|
||||
KAS_REPO_REF_DIR: ""
|
||||
SSTATE_DIR: $CACHE_DIR/sstate
|
||||
DL_DIR: $CACHE_DIR/downloads
|
||||
BB_LOGCONFIG: $CI_PROJECT_DIR/ci/logging.yml
|
||||
TOOLCHAIN_DIR: $CI_BUILDS_DIR/persist/toolchains
|
||||
TOOLCHAIN_DIR: $CACHE_DIR/toolchains
|
||||
IMAGE_DIR: $CI_PROJECT_DIR/work/build/tmp/deploy/images
|
||||
TOOLCHAIN_LINK_DIR: $CI_PROJECT_DIR/work/build/toolchains
|
||||
before_script:
|
||||
- echo KAS_WORK_DIR = $KAS_WORK_DIR
|
||||
- echo SSTATE_DIR = $SSTATE_DIR
|
||||
- echo DL_DIR = $DL_DIR
|
||||
- rm -rf $KAS_WORK_DIR
|
||||
- mkdir --verbose --parents $KAS_WORK_DIR $KAS_REPO_REF_DIR $SSTATE_DIR $DL_DIR $TOOLCHAIN_DIR $TOOLCHAIN_LINK_DIR
|
||||
# Must do this here, as it's the only way to make sure the toolchain is installed on the same builder
|
||||
- ./ci/get-binary-toolchains $DL_DIR $TOOLCHAIN_DIR $TOOLCHAIN_LINK_DIR
|
||||
# This can be removed with Kas 3.2
|
||||
- sudo apt-get update && sudo apt-get install --yes python3-subunit
|
||||
|
||||
# Generalised fragment to do a Kas build
|
||||
.build:
|
||||
@@ -66,14 +66,25 @@ stages:
|
||||
|
||||
|
||||
#
|
||||
# Prep stage, update repositories once
|
||||
# Prep stage, update repositories once.
|
||||
# Set the CI variable CI_CLEAN_REPOS=1 to refetch the respositories from scratch
|
||||
#
|
||||
update-repos:
|
||||
extends: .setup
|
||||
stage: prep
|
||||
script:
|
||||
- flock --verbose --timeout 60 $KAS_REPO_REF_DIR ./ci/update-repos
|
||||
- |
|
||||
exit_code=0
|
||||
|
||||
printenv
|
||||
|
||||
if [ -n "$KAS_REPO_REF_DIR" ]; then
|
||||
flock --verbose --timeout 60 $KAS_REPO_REF_DIR --command ./ci/update-repos || exit_code=$?
|
||||
# Exit now if that failed, unless the status was 128 (fetch failed)
|
||||
test $exit_code != 0 -a $exit_code != 128 && exit 1
|
||||
fi
|
||||
|
||||
exit $exit_code
|
||||
#
|
||||
# Build stage, the actual build jobs
|
||||
#
|
||||
@@ -248,6 +259,11 @@ check-layers:
|
||||
|
||||
pending-updates:
|
||||
extends: .setup
|
||||
# Only run this job for the default branch (master), or if forced with
|
||||
# BUILD_FORCE_PENDING_UPDATES.
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $BUILD_FORCE_PENDING_UPDATES != null
|
||||
artifacts:
|
||||
paths:
|
||||
- update-report
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ repos:
|
||||
meta-arm-toolchain:
|
||||
|
||||
poky:
|
||||
url: https://git.yoctoproject.org/git/poky
|
||||
url: https://git.yoctoproject.org/poky
|
||||
layers:
|
||||
meta:
|
||||
meta-poky:
|
||||
|
||||
@@ -5,4 +5,4 @@ header:
|
||||
|
||||
repos:
|
||||
meta-virtualization:
|
||||
url: git://git.yoctoproject.org/meta-virtualization
|
||||
url: https://git.yoctoproject.org/meta-virtualization
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@ header:
|
||||
|
||||
repos:
|
||||
meta-zephyr:
|
||||
url: https://git.yoctoproject.org/git/meta-zephyr
|
||||
url: https://git.yoctoproject.org/meta-zephyr
|
||||
layers:
|
||||
meta-zephyr-core:
|
||||
|
||||
|
||||
+10
-4
@@ -4,6 +4,7 @@
|
||||
|
||||
import sys
|
||||
import os
|
||||
import shutil
|
||||
import subprocess
|
||||
import pathlib
|
||||
|
||||
@@ -19,10 +20,10 @@ def repo_shortname(url):
|
||||
.replace('*', '.'))
|
||||
|
||||
repositories = (
|
||||
"https://git.yoctoproject.org/git/poky",
|
||||
"https://git.yoctoproject.org/poky",
|
||||
"https://git.openembedded.org/meta-openembedded",
|
||||
"https://git.yoctoproject.org/git/meta-virtualization",
|
||||
"https://git.yoctoproject.org/git/meta-zephyr",
|
||||
"https://git.yoctoproject.org/meta-virtualization",
|
||||
"https://git.yoctoproject.org/meta-zephyr",
|
||||
"https://github.com/kraj/meta-clang",
|
||||
)
|
||||
|
||||
@@ -35,9 +36,14 @@ if __name__ == "__main__":
|
||||
|
||||
for repo in repositories:
|
||||
repodir = base_repodir / repo_shortname(repo)
|
||||
|
||||
if "CI_CLEAN_REPOS" in os.environ:
|
||||
print("Cleaning %s..." % repo)
|
||||
shutil.rmtree(repodir, ignore_errors=True)
|
||||
|
||||
if repodir.exists():
|
||||
print("Updating %s..." % repo)
|
||||
subprocess.run(["git", "-C", repodir, "fetch"], check=True)
|
||||
subprocess.run(["git", "-C", repodir, "-c", "gc.autoDetach=false", "fetch"], check=True)
|
||||
else:
|
||||
print("Cloning %s..." % repo)
|
||||
subprocess.run(["git", "clone", "--bare", repo, repodir], check=True)
|
||||
|
||||
@@ -11,10 +11,11 @@ INHIBIT_DEFAULT_DEPS = "1"
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
COMPATIBLE_MACHINE = "n1sdp"
|
||||
|
||||
SRC_URI = "https://git.linaro.org/landing-teams/working/arm/n1sdp-board-firmware.git/snapshot/${BPN}-N1SDP-${PV}.tar.gz"
|
||||
SRC_URI[sha256sum] = "57feba404026f2d6d49c167d63e0e84653ad8b808b13e2244b81fea9e0d58d66"
|
||||
SRC_URI = "git://git.linaro.org/landing-teams/working/arm/n1sdp-board-firmware.git;protocol=https;branch=master"
|
||||
|
||||
S = "${WORKDIR}/${BPN}-N1SDP-${PV}"
|
||||
SRCREV = "9a095cbdf8ef59a7433e2769e4e2e92782b68c50"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
INSTALL_DIR = "/n1sdp-board-firmware_source"
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
CONFIG_MTD_NAND_FSL_IFC=n
|
||||
@@ -91,7 +91,10 @@ COMPATIBLE_MACHINE:juno = "juno"
|
||||
KBUILD_DEFCONFIG:juno = "defconfig"
|
||||
KCONFIG_MODE:juno = "--alldefconfig"
|
||||
FILESEXTRAPATHS:prepend:juno := "${ARMBSPFILESPATHS}"
|
||||
SRC_URI:append:juno = " file://juno-dts-mhu-doorbell.patch"
|
||||
SRC_URI:append:juno = " \
|
||||
file://juno-dts-mhu-doorbell.patch \
|
||||
file://no-fsl-ifc-nand.cfg \
|
||||
"
|
||||
|
||||
#
|
||||
# Musca B1/S2 can't run Linux
|
||||
@@ -116,6 +119,7 @@ SRC_URI:append:n1sdp = " \
|
||||
file://enable-realtek-R8169.cfg \
|
||||
file://enable-usb_conn_gpio.cfg \
|
||||
file://usb_xhci_pci_renesas.cfg \
|
||||
file://no-fsl-ifc-nand.cfg \
|
||||
"
|
||||
# Since we use the intree defconfig and the preempt-rt turns off some configs
|
||||
# do_kernel_configcheck will display warnings. So, lets disable it.
|
||||
|
||||
+17
-8
@@ -53,7 +53,7 @@ new file mode 100644
|
||||
index 0000000..840683a
|
||||
--- /dev/null
|
||||
+++ b/deployments/se-proxy/opteesp/lse.S
|
||||
@@ -0,0 +1,19 @@
|
||||
@@ -0,0 +1,28 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
+ * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
|
||||
@@ -61,18 +61,27 @@ index 0000000..840683a
|
||||
+
|
||||
+.text
|
||||
+.globl __aarch64_cas4_acq_rel
|
||||
+.globl __aarch64_cas4_sync
|
||||
+
|
||||
+__aarch64_cas4_acq_rel:
|
||||
+ mov w16, w0
|
||||
+ ldaxr w0, [x2]
|
||||
+ cmp w0, w16
|
||||
+0: bne 1f
|
||||
+ mov w16, w0
|
||||
+ ldaxr w0, [x2]
|
||||
+ cmp w0, w16
|
||||
+0: bne 1f
|
||||
+
|
||||
+ stlxr w17, w1, [x2]
|
||||
+ cbnz w17, 0b
|
||||
+1: ret
|
||||
+ stlxr w17, w1, [x2]
|
||||
+ cbnz w17, 0b
|
||||
+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
|
||||
new file mode 100644
|
||||
index 0000000..3a647e6
|
||||
|
||||
@@ -3,7 +3,7 @@ LICENSE = "BSD-3-Clause"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bb63326febfb5fb909226c8e7ebcef5c"
|
||||
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git;branch=master"
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git;branch=master;protocol=https"
|
||||
SRCREV = "1044c77062573985f7c994c3b6cef5695f57e955"
|
||||
|
||||
PV = "git${SRCPV}"
|
||||
|
||||
@@ -101,9 +101,9 @@ def remove_options_tail (in_string):
|
||||
from itertools import takewhile
|
||||
return ' '.join(takewhile(lambda x: not x.startswith('-'), in_string.split(' ')))
|
||||
|
||||
EXTRA_OEMAKE += "LD=${@remove_options_tail(d.getVar('LD'))}"
|
||||
EXTRA_OEMAKE += "LD='${@remove_options_tail(d.getVar('LD'))}'"
|
||||
|
||||
EXTRA_OEMAKE += "CC=${@remove_options_tail(d.getVar('CC'))}"
|
||||
EXTRA_OEMAKE += "CC='${@remove_options_tail(d.getVar('CC'))}'"
|
||||
|
||||
# Verbose builds, no -Werror
|
||||
EXTRA_OEMAKE += "V=1 E=0"
|
||||
|
||||
@@ -77,9 +77,14 @@ export BTOOLS_PATH = "${EDK_TOOLS_PATH}/BinWrappers/PosixLike"
|
||||
|
||||
EDK_COMPILER ?= "GCC5"
|
||||
export GCC5_AARCH64_PREFIX = "${TARGET_PREFIX}"
|
||||
export GCC5_ARM_PREFIX = "${TARGET_PREFIX}"
|
||||
|
||||
EDK_COMPILER:toolchain-clang = "CLANG38"
|
||||
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() {
|
||||
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_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"
|
||||
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
|
||||
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/
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ LICENSE = "BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=ad8cb685eb324d2fa2530b985a43f3e5"
|
||||
|
||||
SRC_URI = "git://github.com/Linaro/OpenCSD;protocol=https;branch=master"
|
||||
SRCREV = "dac554d62d514b202174506995afc0e109ef3fea"
|
||||
SRCREV = "539fea3eabd4ce7574494981cd3d0906cfdc5f18"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
CONFIG_ACPI=y
|
||||
CONFIG_EFI=y
|
||||
@@ -0,0 +1 @@
|
||||
CONFIG_MTD_NAND_FSL_IFC=n
|
||||
@@ -4,6 +4,7 @@ COMPATIBLE_MACHINE:generic-arm64 = "generic-arm64"
|
||||
FILESEXTRAPATHS:prepend:generic-arm64 = "${ARMFILESPATHS}"
|
||||
SRC_URI:append:generic-arm64 = " \
|
||||
file://tcpci.cfg \
|
||||
file://no-fsl-ifc-nand.cfg \
|
||||
"
|
||||
|
||||
FILESEXTRAPATHS:prepend:qemuarm64-secureboot = "${ARMFILESPATHS}"
|
||||
@@ -11,3 +12,9 @@ SRC_URI:append:qemuarm64-secureboot = " \
|
||||
file://skip-unavailable-memory.patch \
|
||||
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"
|
||||
|
||||
@@ -9,6 +9,6 @@ DEPENDS:append = "\
|
||||
|
||||
EXTRA_OEMAKE:append = "${@bb.utils.contains('MACHINE_FEATURES', \
|
||||
'optee-ftpm', \
|
||||
'CFG_EARLY_TA=y EARLY_TA_PATHS="${STAGING_DIR_TARGET}/lib/optee_armtz/${FTPM_UUID}.stripped.elf"', \
|
||||
'CFG_EARLY_TA=y EARLY_TA_PATHS="${STAGING_DIR_TARGET}/${base_libdir}/optee_armtz/${FTPM_UUID}.stripped.elf"', \
|
||||
'', \
|
||||
d)} "
|
||||
|
||||
Reference in New Issue
Block a user