subtree updates Jan-13-2023
meta-openembedded: d04444509a..cd13881611:
Alex Kiernan (10):
mdns: Upgrade 1310.140.1 -> 1790.40.31
mdns: Set MDNS_VERSIONSTR_NODTS
mdns: Upgrade 1790.40.31 -> 1790.60.25
ostree: Upgrade 2022.5 -> 2022.7
ostree: Use systemd_system_unitdir for systemd units
ostree: Switch to fuse3 which is supported in ostree now
ostree: Fix comments for configuration/ptest
ostree: Handle musl's ERANGE mapping
usbguard: Remove pegtl from DEPENDS
usbguard: Upgrade 1.1.1 -> 1.1.2
Alex Stewart (2):
gvfs: stylize DEPENDS
gvfs: obviate the ssh-client requirement for gvfs
Alexander Kanavin (5):
frr: add a patch to correctly check presence of python from pkg-config
lirc: correctly use PYTHONPATH
libportal: move to oe-core
packagegroup-meta-python: drop python3-strict-rfc3339
nftables: fix builds with latest setuptools
Alexander Stein (1):
dool: Add patch to fix rebuild
Archana Polampalli (1):
Nodejs - Upgrade to 16.18.1
Bartosz Golaszewski (3):
python3-kmod: new package
python3-watchdogdev: new package
packagegroup-meta-python: add missing packages
Bruce Ashfield (1):
zfs: update to 2.1.7
Changqing Li (5):
linuxptp: fix do_compile error
keyutils: fix ptest failed since "+++ Can't Determine Endianness"
graphviz: Do not build tcl support for native
redis: 6.2.7 -> 6.2.8
redis: 7.0.5 -> 7.0.7
Chen Pei (2):
suitesparse:fix git branch in SRC_URI
botan: upgrade 2.19.2 -> 2.19.3
Chen Qi (4):
xfce4-verve-plugin: fix do_configure faiure about missing libpcre
networkmanager: fix dhcpcd PACKAGECONFIG
networkmanager: install config files into correct place
networkmanager: fix /etc/resolv.conf handling
Christian Eggers (1):
boost-url: remove recipe
Clément Péron (3):
navigation: bump proj to 9.1.0 library
proj: add a packageconfig to build as a static library
proj: avoid leaking host path in libproj
Devendra Tewari (1):
android-tools: Use echo instead of bbnote
Dmitry Baryshkov (1):
nss: fix cross-compilation error
Erwann Roussy (3):
python3-schedutils: add recipe
python3-linux-procfs: add recipe
tuna: add recipe
Fabio Estevam (2):
remmina: Update to 1.4.28
crucible: Upgrade to 2022.12.06
Geoff Parker (1):
python3-yappi: upgrade 1.3.6 -> 1.4.0, python 3.11 compatible
Gerbrand De Laender (1):
python3-aioserial: new package
Gianfranco Costamagna (2):
vbxguestdrivers: upgrade 7.0.2 -> 7.0.4
boinc-client: Update boinc from 7.18.1 to 7.20.4
Gianluigi Spagnuolo (1):
libbpf: add native and nativesdk BBCLASSEXTEND
Hains van den Bosch (2):
python3-twisted: Add python3-asyncio to RDEPENDS
python3-twisted: Add python3-typing-extensions to RDEPENDS
He Zhe (1):
protobuf: upgrade 3.21.5 -> 3.21.10
Jose Quaresma (1):
lshw: bump to 42fef565
Kai Kang (31):
freeradius: fix multilib systemd service start failure
wxwidgets: 3.1.5 -> 3.2.1
python3-attrdict3: add recipe with version 2.0.2
python3-wxgtk4: 4.1.1 -> 4.2.0
xfce4-settings: 4.16.3 -> 4.16.5
python3-m2crypto: fix CVE-2020-25657 and buildpaths qa issue
fixup! wxwidgets: 3.1.5 -> 3.2.1
postfix: fix multilib conflict of sample-main.cf
python3-wxgtk4: replace deprecated inspect.getargspec
libxfce4ui: 4.16.1 -> 4.18.0
thunar-volman: 4.16.0 -> 4.18.0
xfce4-cpufreq-plugin: 1.2.7 -> 1.2.8
xfce4-wavelan-plugin: 0.6.2 -> 0.6.3
xfce4-cpugraph-plugin: 1.2.6 -> 1.2.7
xfce4-sensors-plugin: 1.4.3 -> 1.4.4
thunar-shares-plugin: Bump GLib minimum required to 2.26
xfce4-dev-tools: 4.16.0 -> 4.18.0
libxfce4util: 4.16.0 -> 4.18.0
exo: 4.16.4 -> 4.18.0
garcon: 4.16.1 -> 4.18.0
xfce4-panel: 4.16.3 -> 4.18.0
thunar: 4.16.9 -> 4.18.0
tumbler: 4.16.0 -> 4.18.0
xfconf: 4.16.0 -> 4.18.0
xfce4-appfinder: 4.16.1 -> 4.18.0
xfce4-settings: 4.16.5 -> 4.18.0
xfce4-power-manager: 4.16.0 -> 4.18.0
xfce4-session: 4.16.0 -> 4.18.0
xfwm4: 4.16.1 -> 4.18.0
xfdesktop: 4.16.0 -> 4.18.0
xorg-lib: set XORG_EXT for recipes
Khem Raj (91):
gnome-text-editor: Add missing libpcre build time depenedency
ettercap: Add missing dependency on libpcre
xcb-util-cursor: Update to 0.1.4
lldpd: Use github release assets for SRC_URI
aufs-util: Fix build with large file support enabled systems
volume-key: Inherit python3targetconfig
proj: Enable apps when building native variant
python3-pyproj: Export PROJ_DIR
satyr: Inherit python3targetconfig
rest: Re-add 0.8.1
gfbgraph: Use rest 0.8.1
audit: Inherit python3targetconfig
opensaf: Check for _FILE_OFFSET_BITS instead of __TIMESIZE
flite: Add missing deps on alsa-lib and chrpath
python3-pystemd: Regenerate .c sources using newer cython
libreport: Inherit python3targetconfig
uw-imap: Disable parallelism
gnome-calendar: Upgrade to 43.1
gnome-photos: Upgrade to 43.0
libgweather: Remove 40.0
waf-samba.bbclass: point PYTHON_CONFIG to target python3-config
amtk: Add missing dep on python3-pygments-native
fontforge: Inherit python3targetconfig
tepl: Add missing dep on python3-pygments-native
alsa-oss: Remove recipe
opencv: Check for commercial_ffmpeg as well to enable ffmpeg
opencv: Fix build with ffmpeg 5.1+
fwts: Upgrade to 22.11.00
minio: Disable on mips
sip: Add recipe for 6.7.5
imapfilter: Upgrade to 2.7.6
perfetto: Do not pass TUNE_CCARGS to native/host compiler
stressapptest: Upgrade to latest tip
mariadb: Upgrade to 10.11.1
surf: Depend on gcr3
fatcat: Enable 64bit off_t
stressapptest: Fix build with largefile support and musl
nspr: Upgrade to 4.35
cryptsetup: Upgrade to 2.6.0
libyui,libyui-ncurses: Upgrade to 4.2.3
inotify-tools: Fix build on musl and lfs64
sdbus-c++-libsystemd: Upgrade to 250.9 systemd release
xfsprogs: Upgrade to 6.0.0
drbd,drbd-utils: Upgrade to 9.2.1 and drbd-utils to 9.22.0
libtraceevent: Add recipe
libtracefs: Add recipe
trace-cmd: Remove use of off64_t and lseek64
xfsdump: Add -D_LARGEFILE64_SOURCE on musl
xfstests: Add -D_LARGEFILE64_SOURCE on musl
mariadb: Alias lseek64/open64/ftruncate64 on musl systems
gperftools: Define off64_t on musl
android-tools: Define lseek64 = lseek on musl
php: Add -D_LARGEFILE64_SOURCE to cflags
spice-gtk: Use libucontext for coroutines on musl
wxwidgets: Fix build with musl
wxwidgets: Fix locale on musl
wxwidgets: Set HAVE_LARGEFILE_SUPPORT
python3-wxgtk4: Do not use GetAssertStackTrace with USE_STACKWALKER disabled
f2fs-tools: Upgrade to 1.15.0
trace-cmd: Pass ldflags to compiler
parole: Define DATADIRNAME
abseil-cpp: Replace off64_t with off_t
vsftpd_3.0.5.bb: Define _LARGEFILE64_SOURCE on musl
mozjs-102: Disable mozilla stackwalk on musl
fatresize: Fix build when 64bit time_t is enabled
boinc-client: Fix build when using 64bit time_t
python3-grpcio: Define -D_LARGEFILE64_SOURCE only for musl
gnome-online-accounts: Fix build race seen on musl systems
imagemagick: Do not set ac_cv_sys_file_offset_bits
spdlog: Do not use LFS64 functions with musl
mongodb: Do not use off64_t on musl
dracut: Do not undefine _FILE_OFFSET_BITS
libcamera: Diable 64bit time_t on glibc targets
v4l-utils: Diable 64bit time_t on glibc targets
opensaf: Fix the check for __fsblkcnt64_t size
libcereal,poco: Link with -latomic on ppc32 as well
sshpass: Use SPDX identified string for GPLv2
nftables: Upgrade to 1.0.6
mycroft: Check for pulseaudio in distro features
trace-cmd: Build libs before building rest
open-vm-tools: Fix build with 64-bit time_t
libtraceevent: Move plugins into package of its own
trace-cmd: Upgrade to 3.1.5
luajit: Update to latest on v2.1 branch
concurrencykit: Update to 0.7.0
concurrencykit: Set correct PLAT value for riscv32
concurrencykit: Fix build on riscv32 and riscv64
sysbench: Enable only on architectures supporting LuaJIT
packagegroup-meta-oe: Ensure sysbench is included in limited arches
hwloc: Update to 2.9.0
fluentbit: Link with libatomic on ppc32
Lei Maohui (1):
polkit: Fix multilib builds
Leon Anavi (9):
python3-watchdog: Upgrade 2.2.0 -> 2.2.1
python3-zeroconf: Upgrade 0.39.4 -> 0.47.1
python3-croniter: Upgrade 1.3.7 -> 1.3.8
python3-coverage: Upgrade 7.0.1 -> 7.0.3
python3-prompt-toolkit: Upgrade 3.0.31 -> 3.0.36
python3-simplejson: Upgrade 3.18.0 -> 3.18.1
python3-termcolor: Upgrade 2.1.1 -> 2.2.0
python3-cantools: Upgrade 37.2.0 -> 38.0.0
python3-marshmallow: Upgrade 3.18.0 -> 3.19.0
Livin Sunny (1):
libwebsockets: add ipv6 in PACKAGECONFIG
Markus Volk (88):
blueman: add RDEPEND on python3-fcntl
hwdata: add patch to use sysroot prefix for pkgdatadir
pipewire: upgrade 0.3.59 -> 0.3.60
spirv-cross: upgrade; fix build
blueman: upgrade 2.34 -> 2.35
pipewire: upgrade 0.3.60 -> 0.3.61
iwd: upgrade 1.30 -> 2.0
libgdata: use gcr3
libgweather: update 4.0.0 -> 4.2.0
gnome-online-accounts: use gcr3
geary: build with gcr3
gnome-keyring: use gcr3
evolution-data-server: update 3.44.2 -> 3.46.1
gnome-settings-daemon: update 42.1 -> 43.0
libnma: update 1.8.38 -> 1.10.4
geocode-glib: build with libsoup-3.0
gjs: update 1.72.2 -> 1.75.1
gnome-shell: update 42.0 -> 43.1
mutter: update 42.0 -> 43.1
polkit: add recipe for v122
mozjs: update 98 -> 102
appstream-glib: update 0.7.18 -> 0.8.2
gthumb: build with libsoup-3
amtk: update 5.3.1 -> 5.6.1
gedit: update 42.2 -> 43.2
evolution-data-server: remove libgdata dependency
tepl: update 6.0.0 -> 6.2.0
perfetto: pass TUNE_CCARGS to use machine tune
gnome-photos: update dependencies
thunar-archive-plugin: update 0.4.0 -> 0.5.0
libadwaita: remove deprecated sassc-native dependency
gnome-shell: remove deprecated sassc-native dependency
spice-gtk: add missing license information
pipewire: update 0.3.61 -> 0.3.62
gdm: update 42.0 -> 43.0
gnome-session: update 42.0 -> 43-0
geoclue: update to latest commit to allow to build with libsoup-3.0
gvfs: fix polkit homedir
editorconfig: add recipe
tracker: update 3.4.1 -> 3.4.2
gvfs: fix dependencies
gnome-calculator: update 42.2 -> 43.0.1
tracker-miners: update 3.4.1 -> 3.4.2
gnome-photos: add missing runtime dependency on tracker-miners
gtksourceview5: update 5.4.2 -> 5.6.1
remmina: build with libsoup-3.0
ostree: replace libsoup-2.4 by curl
gnome-text-editor: update 42.2 -> 43.1
gtk4: remove recipe
libxmlb: allow to build native
pipewire: update 0.3.62 -> 0.3.63
gnome-shell-extensions: update SRC_URI and remove sassc-native dep
grilo: update 0.3.14 -> 0.3.15
libstemmer: move recipe to meta-oe
xdg-desktop-portal: add recipe
bubblewrap: import recipe from meta-security
gnome-software: add recipe
basu: import recipe from meta-wayland
xdg-desktop-portal-wlr: add recipe
appstream: add recipe
flatpak: add recipe
flatpak-xdg-utils: add recipe
flatpak: add runtime dependency on flatpak-xdg-utils
wireplumber: update 0.4.12 -> 0.4.13
wireplumber: build with dbus support by default
xdg-desktop-portal-gnome: add recipe
libcloudproviders: add recipe
evince: update 42.3 -> 43.1
libportal: build libportal-gtk4 and vala support
nautilus: update 42.2 -> 43.1
gnome-desktop: update 42.0 -> 43
file-roller: update 3.42.0 -> 43.0
wireplumber: dont start systemd system service by default
gnome-bluetooth: update 42.4 -> 42.5
gnome-flashback: update 3.44.0 -> 3.46.0
libwnck3: update 40.1 -> 43.0
gnome-panel: update 3.44.0 -> 3.47.1
gnome-terminal: update 3.42.2 -> 3.46.7
dconf-editor: update 3.38.3 -> 43.0
gnome-shell: add missing RDEPENDS
gnome-control-center: update 42.0 -> 43.2
gnome-shell: add runtime dependency on adwaita-icon-theme
xdg-desktop-portal-gtk: add recipe
thunar: add tumbler to RRECOMMENDS
gnome:terminal add missing inherit meson
gnome-disk-utility: update 42.0 -> 43.0
eog: add recipe
libdecor: import recipe
Martin Jansa (3):
nss: fix SRC_URI
geoclue: fix polkit files only with modem-gps PACKAGECONFIG
layer.conf: update LAYERSERIES_COMPAT for mickledore
Mathieu Dubois-Briand (2):
nss: Add missing CVE product
nss: Whitelist CVEs related to libnssdbm
Matthias Klein (1):
paho-mqtt-c: upgrade 1.3.11 -> 1.3.12
Max Krummenacher (1):
opencv: follow changed name license_flags_accepted
Mingli Yu (25):
gnome-calculator: add opengl to REQUIRED_DISTRO_FEATURES
waylandpp: add opengl to REQUIRED_DISTRO_FEATURES
libnma: add opengl to REQUIRED_DISTRO_FEATURES
network-manager-applet: add opengl to REQUIRED_DISTRO_FEATURES
gssdp: check opengl is enabled or not
gtksourceview5: add opengl to REQUIRED_DISTRO_FEATURES
gnome-font-viewer: add opengl to REQUIRED_DISTRO_FEATURES
libxfce4ui: check opengl DISTRO_FEATURES
gnome-desktop: add opengl to REQUIRED_DISTRO_FEATURES
ibus: add opengl related check
nautilus: add opengl to REQUIRED_DISTRO_FEATURES
gnome-bluetooth: add opengl to REQUIRED_DISTRO_FEATURES
evince: add opengl to REQUIRED_DISTRO_FEATURES
gnome-calendar: add opengl to REQUIRED_DISTRO_FEATURES
xf86-video-amdgpu: add opengl to REQUIRED_DISTRO_FEATURES
spice-gtk: add opengl to REQUIRED_DISTRO_FEATURES
grail: add opengl to REQUIRED_DISTRO_FEATURES
frame: add opengl to REQUIRED_DISTRO_FEATURES
geis: add opengl to REQUIRED_DISTRO_FEATURES
evolution-data-server: add opengl to REQUIRED_DISTRO_FEATURES
libgweather4: add opengl to REQUIRED_DISTRO_FEATURES
geary: add opengl to REQUIRED_DISTRO_FEATURES
file-roller: add opengl to REQUIRED_DISTRO_FEATURES
gnome-photos: add opengl to REQUIRED_DISTRO_FEATURES
xdg-desktop-portal-wlr: add opengl to REQUIRED_DISTRO_FEATURES
Naveen Saini (3):
opencl-headers: add native and nativesdk
tcsh: add native nativesdk BBCLASSEXTEND
tbb: upgrade 2021.5.0 -> 2021.7.0
Omkar Patil (1):
ntfs-3g-ntfsprogs: Upgrade 2022.5.17 to 2022.10.3
Ovidiu Panait (1):
multipath-tools: upgrade 0.8.4 -> 0.9.3
Peter Bergin (1):
sysbench: Upgrade 0.4.12 -> 1.0.20
Peter Kjellerstedt (4):
chrony: Make it possible to enable editline support again
chrony: Remove the libcap and nss PACKAGECONFIGs
Revert "lldpd: Use github release assets for SRC_URI"
lldpd: Correct the checksum for the tar ball to match 1.0.16
Preeti Sachan (1):
fluidsynth: update SRC_URI to remove non-existing 2.2.x branch
Roger Knecht (1):
python3-rapidjson: add recipe
Sakib Sajal (1):
minio: fix license information
Samuli Piippo (1):
protobuf: stage protoc binary to sysroot
Tim Orling (4):
libio-pty-perl: upgrade 1.16 -> 1.17; enable ptest
libmozilla-ca-perl: add recipe for 20221114
libio-socket-ssl-perl: upgrade 2.075 -> 2.076
libtest-warnings-perl: move to oe-core
Tomasz Żyjewski (2):
python3-binwalk: add recipe for version 2.3.3
python3-uefi-firmware: add recipe for version 1.9
Wang Mingyu (190):
byacc: upgrade 20220128 -> 20221106
libforms: upgrade 1.2.4 -> 1.2.5pre1
libnftnl: upgrade 1.2.3 -> 1.2.4
mpich: upgrade 4.0.2 -> 4.0.3
python3-u-msgpack-python: upgrade 2.7.1 -> 2.7.2
python3-aiosignal: upgrade 1.2.0 -> 1.3.1
python3-eth-hash: upgrade 0.5.0 -> 0.5.1
python3-frozenlist: upgrade 1.3.1 -> 1.3.3
python3-google-auth: upgrade 2.14.0 -> 2.14.1
python3-greenlet: upgrade 2.0.0 -> 2.0.1
python3-imageio: upgrade 2.22.3 -> 2.22.4
python3-pycocotools: upgrade 2.0.5 -> 2.0.6
babl: upgrade 0.1.96 -> 0.1.98
ctags: upgrade 5.9.20221106.0 -> 5.9.20221113.0
gegl: upgrade 0.4.38 -> 0.4.40
freerdp: upgrade 2.8.1 -> 2.9.0
glibmm-2.68: upgrade 2.72.1 -> 2.74.0
googlebenchmark: upgrade 1.7.0 -> 1.7.1
gnome-backgrounds: upgrade 42.0 -> 43
nano: upgrade 6.4 -> 7.0
networkmanager-openvpn: upgrade 1.10.0 -> 1.10.2
python3-django: upgrade 4.1 -> 4.1.3
python3-flask-migrate: upgrade 3.1.0 -> 4.0.0
python3-eth-utils: upgrade 2.0.0 -> 2.1.0
python3-eventlet: upgrade 0.33.1 -> 0.33.2
python3-googleapis-common-protos: upgrade 1.56.4 -> 1.57.0
python3-google-api-python-client: upgrade 2.65.0 -> 2.66.0
python3-pymongo: upgrade 4.3.2 -> 4.3.3
lldpd: upgrade 1.0.15 -> 1.0.16
audit: upgrade 3.0.8 -> 3.0.9
ccid: upgrade 1.5.0 -> 1.5.1
colord: upgrade 1.4.5 -> 1.4.6
ctags: upgrade 5.9.20221113.0 -> 5.9.20221120.0
flatbuffers: upgrade 22.10.26 -> 22.11.23
libglvnd: upgrade 1.5.0 -> 1.6.0
gensio: upgrade 2.5.2 -> 2.6.1
mg: upgrade 20220614 -> 20221112
nbdkit: upgrade 1.33.2 -> 1.33.3
xfstests: upgrade 2022.10.30 -> 2022.11.06
pcsc-lite: upgrade 1.9.8 -> 1.9.9
python3-matplotlib-inline: upgrade 0.1.2 -> 0.1.6
python3-astroid: upgrade 2.12.12 -> 2.12.13
python3-asyncinotify: upgrade 2.0.5 -> 2.0.8
python3-charset-normalizer: upgrade 3.0.0 -> 3.0.1
python3-dateparser: upgrade 1.1.0 -> 1.1.4
python3-can: upgrade 4.0.0 -> 4.1.0
python3-flask-socketio: upgrade 5.3.1 -> 5.3.2
python3-ipython: upgrade 8.2.0 -> 8.6.0
python3-langtable: upgrade 0.0.60 -> 0.0.61
python3-jedi: upgrade 0.18.1 -> 0.18.2
python3-grpcio-tools: upgrade 1.50.0 -> 1.51.0
python3-grpcio: upgrade 1.50.0 -> 1.51.0
python3-networkx: upgrade 2.8.7 -> 2.8.8
python3-pyatspi: upgrade 2.38.2 -> 2.46.0
python3-pandas: upgrade 1.5.1 -> 1.5.2
python3-pybind11-json: upgrade 0.2.11 -> 0.2.13
python3-pychromecast: upgrade 12.1.4 -> 13.0.1
python3-pycodestyle: upgrade 2.9.1 -> 2.10.0
xterm: upgrade 373 -> 377
smarty: upgrade 4.2.1 -> 4.3.0
spdlog: upgrade 1.10.0 -> 1.11.0
python3-pyperf: upgrade 2.4.1 -> 2.5.0
python3-pyflakes: upgrade 2.5.0 -> 3.0.1
python3-pymisp: upgrade 2.4.157 -> 2.4.165.1
capnproto: upgrade 0.10.2 -> 0.10.3
libass: upgrade 0.16.0 -> 0.17.0
ctags: upgrade 5.9.20221120.0 -> 5.9.20221127.0
libio-socket-ssl-perl: upgrade 2.076 -> 2.077
python3-grpcio-tools: upgrade 1.51.0 -> 1.51.1
python3-asyncinotify: upgrade 2.0.8 -> 3.0.1
python3-grpcio: upgrade 1.51.0 -> 1.51.1
opensc: upgrade 0.22.0 -> 0.23.0
python3-ipython: upgrade 8.6.0 -> 8.7.0
ply: upgrade 2.2.0 -> 2.3.0
python3-apt: upgrade 2.3.0 -> 2.5.0
poppler: upgrade 22.11.0 -> 22.12.0
python3-asttokens: upgrade 2.1.0 -> 2.2.0
python3-cbor2: upgrade 5.4.3 -> 5.4.5
python3-geomet: upgrade 0.3.0 -> 1.0.0
python3-google-api-core: upgrade 2.10.2 -> 2.11.0
python3-google-api-python-client: upgrade 2.66.0 -> 2.68.0
python3-path: upgrade 16.5.0 -> 16.6.0
python3-google-auth: upgrade 2.14.1 -> 2.15.0
zabbix: upgrade 6.2.4 -> 6.2.5
xmlsec1: upgrade 1.2.36 -> 1.2.37
smcroute: upgrade 2.5.5 -> 2.5.6
python3-protobuf: upgrade 4.21.9 -> 4.21.10
python3-traitlets: upgrade 5.5.0 -> 5.6.0
python3-twine: upgrade 4.0.1 -> 4.0.2
python3-web3: upgrade 5.31.1 -> 5.31.2
python3-ujson: upgrade 5.5.0 -> 5.6.0
ctags: upgrade 5.9.20221127.0 -> 5.9.20221204.0
dnsmasq: upgrade 2.87 -> 2.88
flatbuffers: upgrade 22.11.23 -> 22.12.06
nbdkit: upgrade 1.33.3 -> 1.33.4
hwdata: upgrade 0.364 -> 0.365
evolution-data-server: update 3.46.1 -> 3.46.2
xfstests: upgrade 2022.11.06 -> 2022.11.27
python3-protobuf: upgrade 4.21.10 -> 4.21.11
python3-traitlets: upgrade 5.6.0 -> 5.7.0
python3-redis: upgrade 4.3.5 -> 4.4.0
python3-web3: upgrade 5.31.2 -> 5.31.3
python3-asttokens: upgrade 2.2.0 -> 2.2.1
python3-cbor2: upgrade 5.4.5 -> 5.4.6
python3-google-api-python-client: upgrade 2.68.0 -> 2.69.0
python3-gmpy2: upgrade 2.1.2 -> 2.1.3
python3-multidict: upgrade 6.0.2 -> 6.0.3
python3-watchdog: upgrade 2.1.9 -> 2.2.0
python3-pychromecast: upgrade 13.0.1 -> 13.0.2
python3-pymisp: upgrade 2.4.165.1 -> 2.4.166
python3-pytest-xdist: upgrade 3.0.2 -> 3.1.0
python3-yarl: upgrade 1.8.1 -> 1.8.2
zabbix: upgrade 6.2.5 -> 6.2.6
python3-yamlloader: upgrade 1.1.0 -> 1.2.2
tio: upgrade 2.3 -> 2.4
ctags: upgrade 5.9.20221204.0 -> 6.0.20221218.0
dash: upgrade 0.5.11.5 -> 0.5.12
nanopb: upgrade 0.4.6.4 -> 0.4.7
libio-socket-ssl-perl: upgrade 2.077 -> 2.078
libfile-slurper-perl: upgrade 0.013 -> 0.014
protobuf: upgrade 3.21.10 -> 3.21.12
python3-alembic: upgrade 1.8.1 -> 1.9.0
nano: upgrade 7.0 -> 7.1
python3-gmpy2: upgrade 2.1.3 -> 2.1.5
python3-eth-account: upgrade 0.7.0 -> 0.8.0
python3-google-api-python-client: upgrade 2.69.0 -> 2.70.0
python3-protobuf: upgrade 4.21.11 -> 4.21.12
python3-pycares: upgrade 4.2.2 -> 4.3.0
python3-pycurl: upgrade 7.45.1 -> 7.45.2
python3-pychromecast: upgrade 13.0.2 -> 13.0.4
python3-pyproj: upgrade 3.4.0 -> 3.4.1
python3-pydicti: upgrade 1.1.6 -> 1.2.0
python3-sentry-sdk: upgrade 1.11.1 -> 1.12.0
python3-traitlets: upgrade 5.7.0 -> 5.7.1
tio: upgrade 2.4 -> 2.5
python3-sqlalchemy: upgrade 1.4.44 -> 1.4.45
xfsdump: upgrade 3.1.11 -> 3.1.12
python3-isort: upgrade 5.10.1 -> 5.11.3
xfstests: upgrade 2022.11.27 -> 2022.12.11
ctags: upgrade 6.0.20221218.0 -> 6.0.20221225.0
gst-editing-services: upgrade 1.20.4 -> 1.20.5
logcheck: upgrade 1.3.24 -> 1.4.0
memtester: upgrade 4.5.1 -> 4.6.0
libmime-types-perl: upgrade 2.22 -> 2.23
metacity: upgrade 3.46.0 -> 3.46.1
python3-alembic: upgrade 1.9.0 -> 1.9.1
xfstests: upgrade 2022.12.11 -> 2022.12.18
python3-cytoolz: upgrade 0.12.0 -> 0.12.1
python3-asgiref: upgrade 3.5.2 -> 3.6.0
python3-autobahn: upgrade 22.7.1 -> 22.12.1
python3-coverage: upgrade 6.5.0 -> 7.0.1
python3-bitarray: upgrade 2.6.0 -> 2.6.1
python3-imageio: upgrade 2.22.4 -> 2.23.0
python3-isort: upgrade 5.11.3 -> 5.11.4
python3-multidict: upgrade 6.0.3 -> 6.0.4
python3-traitlets: upgrade 5.7.1 -> 5.8.0
python3-pymisp: upgrade 2.4.166 -> 2.4.167
python3-sentry-sdk: upgrade 1.12.0 -> 1.12.1
python3-supervisor: upgrade 4.2.4 -> 4.2.5
wolfssl: upgrade 5.5.3 -> 5.5.4
remmina: upgrade 1.4.28 -> 1.4.29
ser2net: upgrade 4.3.10 -> 4.3.11
tesseract: upgrade 5.2.0 -> 5.3.0
network-manager-applet: upgrade 1.26.0 -> 1.30.0
byacc: upgrade 20221106 -> 20221229
ctags: upgrade 6.0.20221225.0 -> 6.0.20230101.0
flashrom: upgrade 1.2 -> 1.2.1
fontforge: upgrade 20220308 -> 20230101
hunspell: upgrade 1.7.1 -> 1.7.2
libmime-types-perl: upgrade 2.23 -> 2.24
libnet-dns-perl: upgrade 1.35 -> 1.36
tepl: upgrade 6.2.0 -> 6.4.0
tcpdump: upgrade 4.99.1 -> 4.99.2
traceroute: upgrade 2.1.0 -> 2.1.1
openwsman: upgrade 2.7.1 -> 2.7.2
pcsc-tools: upgrade 1.6.0 -> 1.6.1
poppler: upgrade 22.12.0 -> 23.01.0
rsnapshot: upgrade 1.4.4 -> 1.4.5
tree: upgrade 2.0.4 -> 2.1.0
python3-bidict: upgrade 0.22.0 -> 0.22.1
python3-bitarray: upgrade 2.6.1 -> 2.6.2
python3-dateparser: upgrade 1.1.4 -> 1.1.5
python3-lz4: upgrade 4.0.2 -> 4.3.2
python3-mock: upgrade 4.0.3 -> 5.0.0
python3-pillow: upgrade 9.3.0 -> 9.4.0
python3-pydantic: upgrade 1.10.2 -> 1.10.4
python3-pyephem: upgrade 4.1.3 -> 4.1.4
python3-xlsxwriter: upgrade 3.0.3 -> 3.0.5
python3-xxhash: upgrade 3.1.0 -> 3.2.0
dnf-plugins/rpm.py: Fix grammar when RPM_PREFER_ELF_ARCH doesn't exit.
Xiangyu Chen (1):
lldpd: add ptest for lldpd package
Yi Zhao (13):
libpwquality: set correct pam plugin directory
ostree: add runtime dependency bubblewrap for PACKAGECONFIG[selinux]
ostree: fix selinux policy rebuild error on first deployment
frr: upgrade 8.3.1 -> 8.4.1
open-vm-tools: upgrade 12.1.0 -> 12.1.5
libtdb: upgrade 1.4.3 -> 1.4.7
libldb: upgrade 2.3.4 -> 2.6.1
libtalloc: upgrade 2.3.3 -> 2.3.4
libtevent: upgrade 0.10.2 -> 0.13.0
samba upgrade 4.14.14 -> 4.17.4
krb5: upgrade 1.17.2 -> 1.20.1
grubby: update to latest git rev
grubby: drop version 8.40
Zheng Qiu (1):
python3-inotify: add ptest
persianpros (1):
samba: Remove samba related PYTHONHASHSEED patches and use export function
zhengrq.fnst@fujitsu.com (15):
python3-pymodbus: upgrade 3.0.0 -> 3.0.2
python3-pywbemtools: upgrade 1.0.1 -> 1.1.0
python3-stevedore: upgrade 4.1.0 -> 4.1.1
ser2net: upgrade 4.3.9 -> 4.3.10
yelp-tools: upgrade 42.0 -> 42.1
python3-python-vlc: upgrade 3.0.16120 -> 3.0.18121
python3-sqlalchemy: upgrade 1.4.43 -> 1.4.44
python3-zopeinterface: upgrade 5.5.1 -> 5.5.2
python3-simplejson: upgrade 3.17.6 -> 3.18.0
python3-pywbemtools: upgrade 1.0.1 -> 1.1.1
python3-redis: upgrade 4.3.4 -> 4.3.5
python3-texttable: upgrade 1.6.4 -> 1.6.7
python3-sentry-sdk: upgrade 1.9.10 -> 1.11.1
python3-twitter: upgrade 4.10.1 -> 4.12.1
python3-termcolor: upgrade 2.1.0 -> 2.1.1
meta-security: 2aa48e6f4e..f991b20f56:
Alex Kiernan (1):
bubblewrap: Update 0.6.2 -> 0.7.0
Armin Kuster (2):
python3-privacyidea: update to 2.7.4
chipsec: update to 1.9.1
Michael Haener (1):
tpm2-tools: update to 5.3
meta-arm: d5f132b199..5c42f084f7:
Adam Johnston (1):
arm/trusted-services: Fix 'no such file' when building libts
Adrian Herrera (2):
atp: decouple m5readfile from m5ops
atp: move m5readfile to meta-gem5
Adrián Herrera Arcila (5):
atp: fix failing test_readme
gem5: support for EXTRAS
atp: separate recipe for gem5 models
atp: fix machine overrides in recipes
ci: add meta-atp to check-layers
David Bagonyi (1):
meta-arm-toolchain: Drop calls to datastore finalize
Diego Sueiro (2):
arm/classes: Introduce apply_local_src_patches bbclass
arm/trusted-firmware-m: Fix local source patches application
Emekcan (1):
arm/fvp: Upgrade Corstone1000 FVP
Emekcan Aras (6):
arm-bsp/documentation: corstone1000: update the user guide
arm/optee: Move optee-3.18 patches
arm/optee: support optee 3.19
arm-bsp/optee-os: Adds 3.19 bbappend
arm-bsp/optee-os: N1SDP support for optee-os 3.19
arm/qemuarm-secureboot: pin optee-os version
Jon Mason (5):
arm-bsp/trusted-services: rename bbappends with git version
arm/trusted-services: limit the ts compatible machines
arm-bsp/trusted-services: add n1sdp support
arm/trusted-firmware-m: update to 1.6.1
CI: define DEFAULT_TAG and CPU_REQUEST
Khem Raj (1):
gn: Replace lfs64 functions with original counterparts
Mohamed Omar Asaker (5):
arm-bsp/trusted-services: corstone1000: Use the stateless platform service calls
arm-bsp/trusted-firmware-m: Bump TFM to v1.7
arm-bsp/trusted-firmware-m: corstone1000: TFM 1.7
arm-bsp/musca_b1: Edit the platform name
arm-bsp/trusted-firmware-m: Remove TF-M 1.6 recipe
Peter Hoyes (3):
arm/fvp: Backport shlex.join from Python 3.8
arm/fvpboot: Disable timing annotation by default
arm/classes: Ensure patch files are sorted in apply_local_src_patches
Robbie Cao (1):
arm/fvp-base-r-aem: upgrade to version 11.20.15
Ross Burton (17):
CI: revert a meta-clang change which breaks pixman (thus, xserver)
CI: add variables needed for k8s runners
CI: add tags to all jobs
CI: no need to install telnet
CI: fix builds with clang
CI: use the .setup fragment in machine-coverage
arm/fvp-base-a-aem: upgrade to 11.20.15
arm-bsp/edk2-firmware: allow clang builds on juno
ci/get-binary-toolchains: rewrite, slightly
arm-bsp/documentation: update fvp-base documentation to use runfvp
CI: use qemuarm64 for pending-updates report job
meta-atp: remove
meta-gem5: remove
arm/fvp-envelope: name the FVP tarballs for checksums
arm/fvp-envelope: update HOMEPAGE
arm/fvp-base-a-aem: add support for aarch64 binaries
CI: don't pin fvp-base jobs to x86-64
poky: 44bb88cc86..0ce159991d:
Alejandro Hernandez Samaniego (6):
baremetal-image: Avoid overriding qemu variables from IMAGE_CLASSES
rust: Enable building rust from stable, beta and nightly channels
rust: Enable baremetal targets
baremetal-helloworld: Enable x86 and x86-64 ports
baremetal-helloworld: Move from skeleton to recipes-extended matching what rust-hello-world is doing
oe-selftest: Add baremetal toolchain test
Alex Kiernan (20):
rust: Install target.json for target rustc
rust: update 1.65.0 -> 1.66.0
oeqa/runtime/rust: Add basic compile/run test
libstd-rs: Merge .inc into .bb
libstd-rs: Move source directory to library/test
rust-llvm: Merge .inc into .bb
rust-llvm: Update LLVM_VERSION to match embedded version
packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
packagegroup-core-sdk: Add SDK toolchain language selection support
rust: Merge .inc into .bb
rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
cargo: Merge .inc into .bb
cargo: Extend DEBUG_PREFIX_MAP to cover vendor
cargo: Include crossbeam-utils patch
cargo: Drop exclude from world
packagegroup-rust-sdk-target: Add cargo
oeqa/runtime/rust: Add cargo test
classes: image: Set empty weak default IMAGE_LINGUAS
default-distrovars: Include "c" in IMAGE_LINGUAS for glibc
rust: Merge all rustc-source patches into rust-source.inc
Alex Stewart (2):
lsof: add update-alternatives logic
opkg: upgrade to version 0.6.1
Alexander Kanavin (155):
elfutils: update 0.187 -> 0.188
rsync: update 3.2.5 -> 3.2.7
swig: update 4.0.2 -> 4.1.0
tcl: update 8.6.11 -> 8.6.12
quota: update 4.06 -> 4.09
shadow: update 4.12.3 -> 4.13
texinfo: update 6.8 -> 7.0
libhandy: update 1.6.3 -> 1.8.0
xf86-input-mouse: update 1.9.3 -> 1.9.4
flac: update 1.4.0 -> 1.4.2
icu: update 71.1 -> 72-1
libgpg-error: update 1.45 -> 1.46
popt: update 1.18 -> 1.19
vte: update 0.68.0 -> 0.70.1
webkitgtk: update 2.36.7 -> 2.38.2
man-db: update 2.10.2 -> 2.11.1
gawk: update 5.1.1 -> 5.2.1
unfs: update 0.9.22 -> 0.10.0
qemu-helper: depend on unfs3 and pseudo directly
runqemu: do not hardcode the ip address of the nfs server when using tap
selftest/runqemu: reenable the nfs rootfs test
glibc-tests: correctly pull in the actual tests when installing -ptest package
python3: fix tests on x86 (32 bit)
ptest-packagelists.inc: do not run valgrind ptests on 32 bit x86
python3: use the standard shell version of python3-config
python3targetconfig.bbclass: use PYTHONPATH to point to the target config
bitbake: fetch2/wget.py: correctly match versioned directories
devtool/upgrade: correctly handle recipes where S is a subdir of upstream tree
python3-numpy: fix upstream version check
python3-poetry-core: update 1.3.2 -> 1.4.0
tcl: update 8.6.12 -> 8.6.13
libnewt: update 0.52.21 -> 0.52.23
libxdmcp: update 1.1.3 -> 1.1.4
libxpm: update 3.5.13 -> 3.5.14
libxrandr: update 1.5.2 -> 1.5.3
bluez: update 5.65 -> 5.66
libxcrypt: update PV to match SRCREV
python3-dbusmock: update 0.28.4 -> 0.28.6
ruby: merge .inc into .bb
ruby: update 3.1.2 -> 3.1.3
ghostscript: update 9.56.1 -> 10.0.0
tzdata: update 2022d -> 2022g
systemtap: upgrade 4.7 -> 4.8
gnupg: upgrade 2.3.7 -> 2.3.8
ptest-packagelists.inc: correctly assign fast and slow tests
ovmf: update edk2-stable202208 -> edk2-stable202211
llvm: update 15.0.4 -> 15.0.6
tcmode-default.inc: set LLVMVERSION to a major version wildcard
cmake: update 3.24.2 -> 3.25.1
python3-native: further tweak to sysconfig.py to find python includes correctly
libslirp: add recipe to continue slirp support in qemu
qemu: update 7.1.0 -> 7.2.0
systemd: update 251.8 -> 252.4
dpkg: update 1.21.9 -> 1.21.13
python3-installer: update 0.5.1 -> 0.6.0
python3: update 3.11.0 -> 3.11.1
weston: update 11.0.0 -> 11.0.1
xhost: update 1.0.8 -> 1.0.9
xinit: update 1.4.1 -> 1.4.2
xkbcomp: update 1.4.5 -> 1.4.6
xprop: update 1.2.5 -> 1.2.6
xset: update 1.2.4 -> 1.2.5
xvinfo: update 1.1.4 -> 1.1.5
xf86-video-vesa: update 2.5.0 -> 2.6.0
libice: update 1.0.10 -> 1.1.1
libxcomposite: update 0.4.5 -> 0.4.6
libxdamage: update 1.1.5 -> 1.1.6
libxres: update 1.2.1 -> 1.2.2
libxscrnsaver: update 1.2.3 -> 1.2.4
libxv: update 1.0.11 -> 1.0.12
jquery: upgrade 3.6.1 -> 3.6.2
libmodule-build-perl: update 0.4231 -> 0.4232
python3-chardet: upgrade 5.0.0 -> 5.1.0
libarchive: upgrade 3.6.1 -> 3.6.2
stress-ng: upgrade 0.15.00 -> 0.15.01
vulkan: upgrade 1.3.231.1 -> 1.3.236.0
Revert "python3-native: further tweak to sysconfig.py to find python includes correctly"
conf/machine/include: add x86-64-v3 tunes (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE)
go: update 1.19.3 -> 1.19.4
vulkan-samples: update to latest revision
boost-build-native: update 1.80.0 -> 1.81.0
qemu: disable sporadically failing test-io-channel-command
devtool: process local files only for the main branch
libportal: add from meta-openembedded/meta-gnome
libportal: convert from gtk-doc to gi-docgen
epiphany: update 42.4 -> 43.0
qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 from 2006
valgrind: disable tests that started failing after switching to x86-64-v3 target
glib-2.0: upgrade 2.74.3 -> 2.74.4
jquery: upgrade 3.6.2 -> 3.6.3
nasm: update 2.15.05 -> 2.16.01
ffmpeg: use nasm patched-in debug-prefix-map option to restore reproducibility
gtk+3: update 3.24.35 -> 3.24.36
libva-utils: update 2.16.0 -> 2.17.0
xcb-util: update 0.4.0 -> 0.4.1
gnupg: update 2.3.8 -> 2.4.0
libksba: update 1.6.2 -> 1.6.3
python3-pycryptodomex: upgrade 3.15.0 -> 3.16.0
piglit: upgrade to latest revision
python3-setuptools-scm: upgrade 7.0.5 -> 7.1.0
python3-attrs: upgrade 22.1.0 -> 22.2.0
webkitgtk: upgrade 2.38.2 -> 2.38.3
linux-firmware: upgrade 20221109 -> 20221214
harfbuzz: upgrade 5.3.1 -> 6.0.0
python3-pytz: upgrade 2022.6 -> 2022.7
strace: upgrade 6.0 -> 6.1
python3-pycryptodome: upgrade 3.15.0 -> 3.16.0
meson: upgrade 0.64.0 -> 1.0.0
xwayland: upgrade 22.1.5 -> 22.1.7
python3-pyrsistent: upgrade 0.19.2 -> 0.19.3
file: upgrade 5.43 -> 5.44
python3-subunit: upgrade 1.4.1 -> 1.4.2
python3-zipp: upgrade 3.10.0 -> 3.11.0
python3-cryptography: upgrade 38.0.3 -> 38.0.4
logrotate: upgrade 3.20.1 -> 3.21.0
python3-importlib-metadata: upgrade 5.0.0 -> 5.2.0
python3-numpy: upgrade 1.23.4 -> 1.24.1
xserver-xorg: upgrade 21.1.4 -> 21.1.6
puzzles: upgrade to latest revision
vte: upgrade 0.70.1 -> 0.70.2
libpsl: upgrade 0.21.1 -> 0.21.2
libtest-fatal-perl: upgrade 0.016 -> 0.017
python3-urllib3: upgrade 1.26.12 -> 1.26.13
python3-cryptography-vectors: upgrade 38.0.3 -> 38.0.4
python3-setuptools: upgrade 65.5.1 -> 65.6.3
libsdl2: upgrade 2.26.0 -> 2.26.1
python3-gitdb: upgrade 4.0.9 -> 4.0.10
diffoscope: upgrade 224 -> 230
python3-mako: upgrade 1.2.3 -> 1.2.4
python3-sphinx: upgrade 5.3.0 -> 6.0.0
libsolv: upgrade 0.7.22 -> 0.7.23
ruby: upgrade 3.1.3 -> 3.2.0
python3-lxml: upgrade 4.9.1 -> 4.9.2
python3-git: upgrade 3.1.29 -> 3.1.30
curl: upgrade 7.86.0 -> 7.87.0
kmscube: upgrade to latest revision
gobject-introspection: upgrade 1.72.0 -> 1.74.0
python3-dtschema: upgrade 2022.11 -> 2022.12
bash: upgrade 5.2.9 -> 5.2.15
kexec-tools: upgrade 2.0.25 -> 2.0.26
python3-jsonschema: upgrade 4.17.0 -> 4.17.3
python3-pycairo: upgrade 1.21.0 -> 1.23.0
nghttp2: upgrade 1.50.0 -> 1.51.0
python3-certifi: upgrade 2022.9.24 -> 2022.12.7
python3-hypothesis: upgrade 6.57.1 -> 6.61.0
libsndfile1: upgrade 1.1.0 -> 1.2.0
repo: upgrade 2.29.9 -> 2.31
libpcap: upgrade 1.10.1 -> 1.10.2
python3-jsonschema: depend on rfc3339-validator in all cases
python3-strict-rfc3339: remove the recipe
elfutils: do not error out on deprecated declarations
gcr3: limit version check to 3.x versions without odd-even rule
ncurses: restore version check as it's now again working due to release of 6.4
tiff: update 4.4.0 -> 4.5.0
qemu: fix recent reproducibility issues
Alexey Smirnov (1):
classes: make TOOLCHAIN more permissive for kernel
Anton Antonov (1):
rust: Do not use default compiler flags defined in CC crate
Antonin Godard (2):
busybox: always start do_compile with orig config files
busybox: rm temporary files if do_compile was interrupted
Atanas Bunchev (1):
qemu.rst: slirp port forwarding details
Bruce Ashfield (30):
linux-yocto-dev: bump to v6.0+
linux-yocto/5.19: update to v5.19.16
linux-yocto/5.15: update to v5.15.74
linux-yocto/5.19: update to v5.19.17
linux-yocto/5.15: update to v5.15.76
linux-yocto/5.19: cfg: intel and vesa updates
kern-tools: integrate ZFS speedup patch
linux-yocto-dev: bump to v6.1
kernel-devsrc: fix for v6.1+
lttng-modules: fix build for v6.1+
linux-yocto/5.19: security.cfg: remove configs which have been dropped
linux-yocto/5.15: update to v5.15.78
linux-yocto/5.19: fix CONFIG_CRYPTO_CCM mismatch warnings
linux-yocto/5.15: fix CONFIG_CRYPTO_CCM mismatch warnings
linux-yocto/5.19: fix elfutils run-backtrace-native-core ptest failure
linux-libc-headers: add 6.x fetch location
linux-libc-headers: bump to 6.1
linux-yocto/5.19: fix perf build with clang
linux-yocto/5.15: ltp and squashfs fixes
linux-yocto: introduce v6.1 reference kernel recipes
linux-yocto/5.15: fix perf build with clang
linux-yocto/5.15: libbpf: Fix build warning on ref_ctr_off
linux-yocto/5.15: update to v5.15.84
linux-yocto/6.1: update to v6.1.1
linux-yocto/5.15: powerpc: Fix reschedule bug in KUAP-unlocked user copy
linux-yocto/5.19: powerpc: Fix reschedule bug in KUAP-unlocked user copy
linux-yocto/6.1: update to v6.1.3
linux-yocto/6.1: cfg: remove CONFIG_ARM_CRYPTO
yocto-bsps/5.15: update to v5.15.78
linux-yocto/5.15: update to v5.15.80
Carlos Alberto Lopez Perez (3):
xwayland: libxshmfence is needed when dri3 is enabled
recipes: Enable nativesdk for gperf, unifdef, gi-docgen and its dependencies
mesa-gl: gallium is required when enabling x11
Changqing Li (2):
base.bbclass: Fix way to check ccache path
sqlite3: upgrade 3.40.0 -> 3.40.1
Charlie Johnston (1):
opkg: ensure opkg uses private gpg.conf when applying keys.
Chee Yang Lee (1):
migration-guides: add release-notes for 4.1.1
Chen Qi (10):
kernel.bbclass: make KERNEL_DEBUG_TIMESTAMPS work at rebuild
resolvconf: make it work
dhcpcd: fix to work with systemd
bitbake: command.py: cleanup bb.cache.parse_recipe
psplash: consider the situation of psplash not exist for systemd
bc: extend to nativesdk
rm_work: adjust dependency to make do_rm_work_all depend on do_rm_work
selftest: allow '-R' and '-r' be used together
dhcpcd: backport two patches to fix runtime error
libseccomp: fix typo in DESCRIPTION
Christian Eggers (1):
boost: add url lib
David Bagonyi (1):
u-boot: Fix u-boot signing when building with multiple u-boot configs
Dmitry Baryshkov (2):
linux-firmware: upgrade 20221012 -> 20221109
linux-firmware: add new fw file to ${PN}-qcom-adreno-a530
Enguerrand de Ribaucourt (1):
bitbake-layers: fix a typo
Enrico Jörns (1):
sstatesig: emit more helpful error message when not finding sstate manifest
Enrico Scholz (1):
sstate: show progress bar again
Fabre Sébastien (1):
u-boot: Add /boot in SYSROOT_DIRS
Frank de Brabander (4):
bitbake: README: Improve explanation about running the testsuite
bitbake: bin/utils: Ensure locale en_US.UTF-8 is available on the system
bitbake: process: log odd unlink events with bitbake.sock
bitbake: README: add required python version for bitbake
Harald Seiler (1):
opkg: Set correct info_dir and status_file in opkg.conf
Jagadeesh Krishnanjanappa (1):
qemuboot.bbclass: make sure runqemu boots bundled initramfs kernel image
Jan Kircher (1):
toolchain-scripts: compatibility with unbound variable protection
Javier Tia (1):
poky.conf: Add Fedora 36 as supported distro
Joe Slater (2):
python3: Fix CVE-2022-37460
libarchive: fix CVE-2022-36227
Jose Quaresma (2):
Revert "gstreamer1.0: disable flaky gstbin:test_watch_for_state_change test"
gstreamer1.0: Fix race conditions in gstbin tests
Joshua Watt (4):
qemu-helper-native: Correctly pass program name as argv[0]
bitbake: cooker: Use event to terminate parser threads
bitbake: cooker: Start sync thread a little earlier
bitbake: bitbake: Convert to argparse
Kai Kang (4):
xorg-lib-common.inc: set default value of XORG_EXT
libx11-compose-data: 1.6.8 -> 1.8.3
libx11: 1.8.1 -> 1.8.3
libsm: 1.2.3 > 1.2.4
Kasper Revsbech (1):
bitbake: fetch2/wget: handle username/password in uri
Khem Raj (47):
rsync: Delete pedantic errors re-ordering patch
pseudo: Disable LFS on 32bit arches
libxkbcommon: Extend to build native package
iso-codes: Extend to build native packages
xkeyboard-config: Extend to build native package
bluez5: enable position independent executables flag
rpcsvc-proto: Use autoconf knob to enable largefile support
gptfdisk: Enable largefile support functions
libpcre2: Upgrade to 10.42
erofs-utils: Convert from off64_t to off_t
pseudo: Remove 64bit time_t flags
unfs3: Define off64_t in terms of off_t on musl
acpid: Fix largefile enabled build
efivar: Replace off64_t with off_t
ltp: Fix largefile support
acl: Enable largefile support by default
libpciaccess: Do not use 64bit functions for largefile support
mdadm: Use _FILE_OFFSET_BITS to use largefile support
btrfs-tools: Do not use 64bit functions for largefile support
e2fsprogs: Do not use 64bit functions for largefile support
libbsd: Fix build with largefile support
gpgme: Fix with with largefile support
virglrenderer: Replace lseek64 with lseek
nfs-utils: Replace statfs64 with statfs
alsa-utils: Replace off64_t with off_t
lttng-tools: Fix build with largefile support
strace: Add knob to enable largefile support
numactl: Enable largefile support
qemu: Fix build with largefile support
systemd: Fix 252 release build on musl
rust: Do not use open64 on musl in getrandom crate
rust,libstd-rs: Fix build with latest musl
rust-llvm: Fix build on latest musl
cargo: Do not use open64 on musl anymore
llvm: Do not use lseek64
strace: Replace off64_t with off_t in sync_file_range.c test
vulkan-samples: Do not use LFS64 APIs in spdlog
pulseaudio: Do not use 64bit time_t flags
musl: Update to latest on tip of trunk
rust: Fix build with 64bit time_t
stress-ng: Do not enforce gold linker
time64.inc: Add GLIBC_64BIT_TIME_FLAGS on ppc/x86 as well
time64: Remove leading whitespace from GLIBC_64BIT_TIME_FLAGS
mpg123: Enable largefile support
site/powerpc32-linux: Do not cache statvfs64 across glibc and musl
tiff: Add packageconfig knob for webp
site/common-musl: Set ac_cv_sys_file_offset_bits default to 64
Lee Chee Yang (1):
migration-guides: add release-notes for 4.0.6
Luca Boccassi (2):
systemd: refresh patch to remove fuzz introduced by rebase on v252
systemd: ship pcrphase/measure tools and units in systemd-extra-utils
Luis (1):
rm_work.bbclass: use HOSTTOOLS 'rm' binary exclusively
Marek Vasut (5):
bitbake: fetch2/git: Prevent git fetcher from fetching gitlab repository metadata
package_rpm: Fix Linux 6.1.0 perf 1.0 version mistranslation
systemd: Make importd depend on glib-2.0 again
bitbake: bitbake-user-manual: Document override :append, :prepend, :remove order
bitbake: fetch2/git: Clarify the meaning of namespace
Markus Volk (12):
ell: upgrade 0.53 -> 0.54
libsdl2: update 2.24.2 -> 2.26.0
graphene: import from meta-oe
gtk4: import recipe from meta-gnome
gcr: rename gcr -> gcr3
gcr: add recipe for gcr-4, needed to build with gtk4
epiphany: use gcr3
gtk4: add tracker-miners runtime dependency
python3-dbusmock: allow to build native
gtk4: update 4.8.2 -> 4.8.3
gcr3: update 3.40.0 -> 3.41.1
librsvg: enable vapi build
Marta Rybczynska (2):
efibootmgr: update compilation with musl
cve-update-db-native: avoid incomplete updates
Martin Jansa (4):
libxml2: upgrade test data from 20080827 to 20130923
nativesdk-rpm: export RPM_ETCCONFIGDIR and MAGIC in environment like RPM_CONFIGDIR
nativesdk-rpm: don't create wrappers for WRAPPER_TOOLS
tune-x86-64-v3.inc: set QEMU_EXTRAOPTIONS like other tune-* files
Mathieu Dubois-Briand (1):
dbus: Add missing CVE product name
Michael Halstead (1):
uninative: Upgrade to 3.8.1 to include libgcc
Michael Opdenacker (34):
manuals: add missing references to classes
manuals: fix paragraphs with the "inherit" word
ref-manual/classes.rst: remove reference to sip.bbclass
manuals: simplify .gitignore files
manuals: split dev-manual/common-tasks.rst
dev-manual/sbom.rst: minor corrections
bitbake: bitbake-user-manual: update references to Yocto Project manual
bitbake.conf: remove SERIAL_CONSOLE variable
bitbake: bitbake-user-manual: add reference to bitbake git repository
ref-manual: add references to variables only documented in the BitBake manual
manuals: add reference to yocto-docs git repository to page footer
manuals: add missing references to variables
manuals: add missing SPDX license header to source files
manuals: fix double colons
ref-manual/resources.rst: fix formating
ref-manual: update references to release notes
manual: improve documentation about using external toolchains
ref-manual/images.rst: fix unnumbered list
manuals: define proper numbered lists
manuals: final removal of SERIAL_CONSOLE variable
ref-manual/resources.rst: improve description of mailing lists
ref-manual/system-requirements.rst: update buildtools instructions
manuals: create references to buildtools
documentation/poky.yaml.in: update minimum python version to 3.8
manuals: prepare 4.2 migration notes
bitbake: bitbake-user-manual: double colon fix
bitbake: bitbake-user-manual: remove "OEBasic" signature generator
migration-guides: fix 4.2 migration note issues
toaster-manual: fix description of introduction video
ref-manual/classes.rst: remove .bbclass from section titles
manuals: simplify references to classes
migration-1.6.rst: fix redundant reference
ref-manual/system-requirements.rst: recommend buildtools for not supported distros
.gitignore: ignore files generated by Toaster
Mikko Rapeli (5):
qemurunner.py: support setting slirp host IP address
runqemu: limit slirp host port forwarding to localhost 127.0.0.1
qemurunner.py: use IP address from command line
dev-manual/runtime-testing.rst: fix oeqa runtime test path
runqemu: add QB_SETUP_CMD and QB_CLEANUP_CMD
Mingli Yu (8):
tcl: correct the header location in tcl.pc
python3: make tkinter available when enabled
sudo: add selinux and audit PACKAGECONFIG
iproute2: add selinux PACKAGECONFIG
util-linux: add selinux PACKAGECONFIG
cronie: add selinux PACKAGECONFIG
psmisc: add selinux PACKAGECONFIG
gcr: add opengl to REQUIRED_DISTRO_FEATURES
Narpat Mali (2):
ffmpeg: fix for CVE-2022-3964
ffmpeg: fix for CVE-2022-3965
Ola x Nilsson (4):
kbd: Don't build tests
glibc: Add ppoll fortify symbol for 64 bit time_t
insane: Add QA check for 32 bit time and file offset functions
time64.conf: Include to enable 64 bit time flags
Ovidiu Panait (1):
kernel.bbclass: remove empty module directories to prevent QA issues
Patrick Williams (1):
kernel-fitimage: reduce dependency to the cpio
Pavel Zhukov (1):
oeqa/rpm.py: Increase timeout and add debug output
Peter Kjellerstedt (1):
recipes, classes: Avoid adding extra whitespace to PACKAGESPLITFUNCS
Peter Marko (2):
externalsrc: fix lookup for .gitmodules
oeqa/selftest/externalsrc: add test for srctree_hash_files
Petr Kubizňák (1):
harfbuzz: remove bindir only if it exists
Petr Vorel (1):
iputils: update to 20221126
Polampalli, Archana (1):
libpam: fix CVE-2022-28321
Qiu, Zheng (3):
valgrind: remove most hidden tests for arm64
tiff: Security fix for CVE-2022-3970
vim: upgrade 9.0.0820 -> 9.0.0947
Quentin Schulz (4):
cairo: update patch for CVE-2019-6461 with upstream solution
cairo: fix CVE patches assigned wrong CVE number
docs: kernel-dev: faq: update tip on how to not include kernel in image
docs: migration-guides: migration-4.0: specify variable name change for kernel inclusion in image recipe
Randy MacLeod (1):
valgrind: skip the boost_thread test on arm
Ranjitsinh Rathod (1):
curl: Correct LICENSE from MIT-open-group to curl
Ravula Adhitya Siddartha (2):
linux-yocto/5.15: update genericx86* machines to v5.15.78
linux-yocto/5.19: update genericx86* machines to v5.19.17
Richard Purdie (97):
bitbake: cache/cookerdata: Move recipe parsing functions from cache to databuilder
bitbake: cache: Drop broken/unused code
bitbake: cache: Drop unused function
bitbake: server: Ensure cooker profiling works
bitbake: worker/runqueue: Reduce initial data transfer in workerdata
bitbake: cache: Drop support for not saving the cache file
bitbake: runqueue: Add further debug for sstate reuse issues
bitbake: runqueue: Fix race issues around hash equivalence and sstate reuse
bitbake: data/siggen: Switch to use frozensets and optimize
bitbake: data_smart: Add debugging for overrides stability issue
bitbake: utils: Allow to_boolean to support int values
base: Drop do_package base definition
bitbake: data: Drop obsolete pydoc/path code
bitbake: BBHandler: Remove pointless global variable declarations
bitbake: runqueue: Improve error message for missing multiconfig
bitbake: data_smart: Small cache reuse optimization
bitbake.conf: Simplify CACHE setting
oeqa/selftest/tinfoil: Add test for separate config_data with recipe_parse_file()
qemu: Ensure libpng dependency is deterministic
bitbake: data: Tweak code layout
bitbake: cache/siggen: Simplify passing basehash data into the cache
bitbake: siggen/cache: Optionally allow adding siggen hash data to the bitbake cache
bitbake: parse: Add support for addpylib conf file directive and BB_GLOBAL_PYMODULES
bitbake: cookerdata: Ensure layers use LAYERSERIES_COMPAT fairly
base: Switch to use addpylib directive and BB_GLOBAL_PYMODULES
devtool/friends: Use LAYERSERIES_CORENAMES when generating LAYERSERIES_COMPAT entries
scripts/checklayer: Update to match bitbake changes
yocto-check-layer: Allow OE-Core to be tested
bitbake: main: Add timestamp to server retry messages
bitbake: main/server: Add lockfile debugging upon server retry
poky/poky-tiny: Drop largefile mentions
lib/sstatesig: Drop OEBasic siggen
bitbake: siggen: Drop non-multiconfig aware siggen support
bitbake: build/siggen/runqueue: Drop do_setscene references
bitbake: bitbake: Bump minimum python version requirement to 3.8
sanity: Update minimum python version to 3.8
bitbake: main/process: Add extra sockname debugging
Revert "kernel-fitimage: reduce dependency to the cpio"
bitbake: siggen: Directly store datacaches reference
bitbake: bitbake: siggen/runqueue: Switch to using RECIPE_SIGGEN_INFO feature for signature dumping
bitbake: siggen: Add dummy dataCaches from task context/datastore
bitbake: build/siggen: Rework stamps functions
bitbake: siggen: Clarify which fn is meant
bitbake: ast/data/codeparser: Add dependencies from python module functions
bitbake: codeparser/data: Add vardepsexclude support to module dependency code
bitbake.conf: Add module function vardepsexclude entries
time64: Rename to a .inc file to match the others
bitbake: command: Add ping command
bitbake: cache: Allow compression of the data in SiggenRecipeInfo
bitbake: siggen: Minor code improvement
bitbake: server/process: Add bitbake.sock race handling
oeqa/concurrencytest: Add number of failures to summary output
python3-poetry-core: Fix determinism issue breaking reproducibility
bitbake: cache/siggen: Fix cache issues with signature handling
bitbake: event: builtins fix for 'd' deletion
bitbake: cooker: Ensure cache is cleared for partial resets
bitbake: tinfoil: Ensure CommandExit is handled
bitbake: cache: Drop reciever side counting for SiggenRecipeInfo
bitbake: knotty: Avoid looping with tracebacks
bitbake: event: Add enable/disable heartbeat code
bitbake: cooker/cookerdata: Rework the way the datastores are reset
bitbake: server/process: Improve exception and idle function logging
bitbake: command: Tweak finishAsyncCommand ordering to avoid races
bitbake: cooker: Ensure commands clean up any parser processes
bitbake: server/process: Improve idle loop exit code
bitbake: event: Always use threadlock
bitbake: server/process: Add locking around idle functions accesses
bitbake: server/process: Run idle commands in a separate idle thread
bitbake: knotty: Ping the server/cooker periodically
bitbake: cookerdata: Fix cache/reparsing issue
bitbake: cookerdata: Fix previous commit to use a string, not a generator
bitbake: command: Ensure that failure cases call finishAsyncComand
layer.conf: Update to use mickledore as the layer series name
layer.conf: Mark master as compatible with mickledore
bitbake: lib/bb: Update thread/process locks to use a timeout
package: Move fixup_perms function to bb function library
package: Move get_conffiles/files_from_filevars functions to lib
package: Move pkgdata handling functions to oe.packagedata
package: Move emit_pkgdata to packagedata.py
package: Move package functions to function library
package: Drop unused function and obsolete comment
package: Move mapping_rename_hook to packagedata function library
python3-cython: Use PACKAGESPLITFUNCS instead of PACKAGEBUILDPKGD
package: Drop support for PACKAGEBUILDPKGD function customisation
recipes/classes: Drop prepend/append usage with PACKAGESPLITFUNCS
bitbake: cooker: Rework the parsing results submission
bitbake: cooker: Clean up inotify idle handler
uninative-tarball: Add libgcc
patchelf: Add fix submitted upstream for uninative segfaults
bitbake: cooker/command: Drop async command handler indirection via cooker
bitbake: process/cooker/command: Fix currentAsyncCommand locking/races
uninative: Ensure uninative is enabled in all cases for BuildStarted event
qemux86-64: Reduce tuning to core2-64
bitbake: tinfoil: Don't wait for events indefinitely
bitbake: knotty: Improve shutdown handling
bitbake: cooker: Fix exit handling issues
bitbake: server/process: Move heartbeat to idle thread
Robert Andersson (1):
go-crosssdk: avoid host contamination by GOCACHE
Ross Burton (28):
build-appliance-image: Update to master head revision
lib/buildstats: fix parsing of trees with reduced_proc_pressure directories
combo-layer: remove unused import
combo-layer: dont use bb.utils.rename
combo-layer: add sync-revs command
libxml2: upgrade 2.9.14 -> 2.10.3
libxml2: add more testing
python3-packaging: upgrade to 22.0
python3-hatchling: remove python3-tomli DEPENDS
python3-cryptography: remove python3-tomli RDEPENDS
meson: drop redundant is_debianlike() patch
meson: always use meson subcommands
libepoxy: remove upstreamed patch
gtk+3: upgrade 3.24.34 -> 3.24.35
gtk+3: port to Meson
meson: no need to rebuild on install
at-spi2-core: clean up x11 enabling
at-spi2-core: disable API docs if x11 is disabled
gtk+3: fix reproducible builds
lsof: upgrade 4.96.4 -> 4.96.5
pango: upgrade 1.50.11 -> 1.50.12
python3-hatch-vcs: upgrade 0.2.0 -> 0.3.0
python3-hatchling: upgrade 1.11.1 -> 1.12.1
python3-pathspec: upgrade 0.10.1 -> 0.10.3
rm_work: handle non-existant stamps directory
oeqa/selftest/debuginfod: improve testcase
elfutils: disable deprecation errors in all builds, not just native
curl: don't enable debug builds
Ryan Eatmon (1):
go: Update reproducibility patch to fix panic errors
Sandeep Gundlupet Raju (3):
libdrm: Remove libdrm-kms package
kernel-fitimage: Adjust order of dtb/dtbo files
kernel-fitimage: Allow user to select dtb when multiple dtb exists
Saul Wold (1):
at: Change when files are copied
Sergei Zhmylev (1):
oeqa/qemurunner: implement vmdk images support
Tim Orling (7):
python3-hypothesis: upgrade 6.56.4 -> 6.57.1
at-spi2-core: upgrade 2.44.1 -> 2.46.0
mirrors.bbclass: update CPAN_MIRROR
libtry-tiny-perl: add recipe for 0.31
libtest-fatal-perl: add recipe for 0.016
libtest-warnings-perl: move from meta-perl
liburi-perl: upgrade 5.08 -> 5.17
Trevor Woerner (1):
local.conf.sample: update bbclass locations
Vincent Davis Jr (1):
mesa: enable glvnd support
Wang Mingyu (49):
btrfs-tools: upgrade 6.0 -> 6.0.1
libpipeline: upgrade 1.5.6 -> 1.5.7
btrfs-tools: upgrade 6.0.1 -> 6.0.2
bind: upgrade 9.18.8 -> 9.18.9
ccache: upgrade 4.7.2 -> 4.7.4
dropbear: upgrade 2022.82 -> 2022.83
libinput: upgrade 1.21.0 -> 1.22.0
libxft: upgrade 2.3.6 -> 2.3.7
mpfr: upgrade 4.1.0 -> 4.1.1
glib-2.0: upgrade 2.74.1 -> 2.74.3
libxcrypt-compat: upgrade 4.4.30 -> 4.4.33
patchelf: upgrade 0.16.1 -> 0.17.0
pciutils: upgrade 3.8.0 -> 3.9.0
shaderc: upgrade 2022.3 -> 2022.4
sqlite3: upgrade 3.39.4 -> 3.40.0
stress-ng: upgrade 0.14.06 -> 0.15.00
swig: upgrade 4.1.0 -> 4.1.1
texinfo: upgrade 7.0 -> 7.0.1
usbutils: upgrade 014 -> 015
xz: upgrade 5.2.7 -> 5.2.9
wayland-protocols: upgrade 1.28 -> 1.31
gnu-config: upgrade to latest revision
libfontenc: upgrade 1.1.6 -> 1.1.7
libpcre2: upgrade 10.40 -> 10.41
libpng: upgrade 1.6.38 -> 1.6.39
libxau: upgrade 1.0.10 -> 1.0.11
libxkbfile: upgrade 1.1.1 -> 1.1.2
libxshmfence: upgrade 1.3.1 -> 1.3.2
xrandr: upgrade 1.5.1 -> 1.5.2
boost: upgrade 1.80.0 -> 1.81.0
ell: upgrade 0.54 -> 0.55
git: upgrade 2.38.1 -> 2.39.0
help2man: upgrade 1.49.2 -> 1.49.3
iproute2: upgrade 6.0.0 -> 6.1.0
libmpc: upgrade 1.2.1 -> 1.3.1
makedepend: upgrade 1.0.7 -> 1.0.8
psmisc: upgrade 23.5 -> 23.6
xz: upgrade 5.2.9 -> 5.4.0
gstreamer1.0: upgrade 1.20.4 -> 1.20.5
bind: upgrade 9.18.9 -> 9.18.10
btrfs-tools: upgrade 6.0.2 -> 6.1
librepo: upgrade 1.14.5 -> 1.15.1
libsdl2: upgrade 2.26.1 -> 2.26.2
libva-utils: upgrade 2.17.0 -> 2.17.1
libxkbcommon: upgrade 1.4.1 -> 1.5.0
mpfr: upgrade 4.1.1 -> 4.2.0
dpkg: upgrade 1.21.13 -> 1.21.17
rxvt-unicode: upgrade 9.30 -> 9.31
virglrenderer: upgrade 0.10.3 -> 0.10.4
Xiangyu Chen (3):
grub: backport patches to fix CVE-2022-28736
openssh: remove RRECOMMENDS to rng-tools for sshd package
grub2: backport patch to fix CVE-2022-2601 CVE-2022-3775
Yoann Congal (2):
bitbake: Group and reorder options in bitbake help
bitbake: main: Move --buildfile help at the end of "Execution" group
leimaohui (1):
libpng: Enable NEON for aarch64 to enensure consistency with arm32.
pgowda (1):
binutils: Add patch to fix CVE-2022-4285
张忠山 (1):
bitbake: data_smart: Use regex consistently for override matching
meta-raspberrypi: 93dadf336c..896566aa92:
Carlos Alberto Lopez Perez (1):
weston: disablepackageconfig options that fail to build with userland drivers
Khem Raj (2):
lirc: Drop upstreamed patch
linux-raspberrypi.inc: Weakly assign COMPATIBLE_MACHINE
Martin Jansa (2):
bluez5: update patches to apply on 5.66 version
layer.conf: update LAYERSERIES_COMPAT for mickledore
Vincent Davis Jr (5):
rpidistro-vlc,rpidistro-ffmpeg: update COMPATIBLE_HOST regex
rpidistro-vlc: upgrade 3.0.12 -> 3.0.17
rpi-default-providers: add libav and libpostproc
rpidistro-ffmpeg: upgrade 4.3.2 -> 4.3.4
rpidistro-ffmpeg: remove --enable-v4l2-request flag
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: Ied8537beedde0f83790e6e3595057db45f408107
diff --git a/meta-arm/.gitlab-ci.yml b/meta-arm/.gitlab-ci.yml
index 7d050a5..09ca8c4 100644
--- a/meta-arm/.gitlab-ci.yml
+++ b/meta-arm/.gitlab-ci.yml
@@ -1,11 +1,21 @@
image: ghcr.io/siemens/kas/kas:latest-release
+variables:
+ CPU_REQUEST: ""
+ DEFAULT_TAG: ""
+ # These are needed as the k8s executor doesn't respect the container entrypoint
+ # by default
+ FF_KUBERNETES_HONOR_ENTRYPOINT: 1
+ FF_USE_LEGACY_KUBERNETES_EXECUTION_STRATEGY: 0
+
stages:
- prep
- build
# Common job fragment to get a worker ready
.setup:
+ tags:
+ - $DEFAULT_TAG
stage: build
interruptible: true
variables:
@@ -25,11 +35,14 @@
- 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
- - sudo apt-get update && sudo apt-get install --yes telnet python3-subunit
+ # 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:
extends: .setup
+ variables:
+ KUBERNETES_CPU_REQUEST: $CPU_REQUEST
script:
- KASFILES=$(./ci/jobs-to-kas "$CI_JOB_NAME")
- kas shell --update --force-checkout $KASFILES -c 'cat conf/*.conf'
@@ -84,8 +97,6 @@
parallel:
matrix:
- TESTING: testimage
- tags:
- - x86_64
fvp-base-arm32:
extends: .build
@@ -93,8 +104,6 @@
matrix:
- TOOLCHAINS: [gcc, external-gccarm]
TESTING: testimage
- tags:
- - x86_64
fvp-baser-aemv8r64:
extends: .build
@@ -107,15 +116,6 @@
fvps:
extends: .build
-gem5-arm64:
- extends: .build
- parallel:
- matrix:
- - VIRT: [none, xen]
-
-gem5-atp-arm64:
- extends: .build
-
generic-arm64:
extends: .build
@@ -137,6 +137,7 @@
parallel:
matrix:
- TOOLCHAINS: [gcc, armgcc]
+ TS: [none, trusted-services]
qemu-generic-arm64:
extends: .build
@@ -210,7 +211,7 @@
"yocto-check-layer-wrapper $CI_PROJECT_DIR/$LAYER --dependency $CI_PROJECT_DIR/meta-* $KAS_WORK_DIR/meta-openembedded/meta-oe --no-auto-dependency"
parallel:
matrix:
- - LAYER: [meta-arm, meta-arm-bsp, meta-arm-toolchain, meta-gem5]
+ - LAYER: [meta-arm, meta-arm-bsp, meta-arm-toolchain]
pending-updates:
extends: .setup
@@ -220,16 +221,15 @@
script:
- rm -fr update-report
# This configuration has all of the layers we need enabled
- - kas shell ci/gem5-arm64.yml --command \
- "$CI_PROJECT_DIR/scripts/machine-summary.py -t report -o $CI_PROJECT_DIR/update-report $($CI_PROJECT_DIR/ci/listmachines.py meta-arm meta-arm-bsp meta-gem5)"
+ - kas shell ci/qemuarm64.yml:ci/meta-openembedded.yml --command \
+ "$CI_PROJECT_DIR/scripts/machine-summary.py -t report -o $CI_PROJECT_DIR/update-report $($CI_PROJECT_DIR/ci/listmachines.py meta-arm meta-arm-bsp)"
# Do this on x86 whilst the compilers are x86-only
tags:
- x86_64
# What percentage of machines in the layer do we build
machine-coverage:
- stage: build
- interruptible: true
+ extends: .setup
script:
- ./ci/check-machine-coverage
coverage: '/Coverage: \d+/'
diff --git a/meta-arm/README.md b/meta-arm/README.md
index 221633e..7779258 100644
--- a/meta-arm/README.md
+++ b/meta-arm/README.md
@@ -18,15 +18,6 @@
This layer contains recipes for Arm's binary toolchains (GCC and Clang for -A and -M), and a recipe to build Arm's GCC.
-* meta-atp
-
- This layer contains recipes for the Adaptive Traffic Generation integration into meta-gem5.
-
-* meta-gem5
-
- This layer contains recipes and machines for gem5, a system-level and processor simulator.
-
-
Other Directories
-----------------
diff --git a/meta-arm/ci/0001-Revert-pixman-Do-not-use-clang-assembler-for-now.patch b/meta-arm/ci/0001-Revert-pixman-Do-not-use-clang-assembler-for-now.patch
new file mode 100644
index 0000000..4ad6607
--- /dev/null
+++ b/meta-arm/ci/0001-Revert-pixman-Do-not-use-clang-assembler-for-now.patch
@@ -0,0 +1,26 @@
+This causes illegal instruction faults in pixman, so xserver crashes.
+https://github.com/kraj/meta-clang/issues/696
+
+From 8659c5c5bec39dd43a1988b19d4cf30507a44679 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Mon, 28 Nov 2022 16:52:50 +0000
+Subject: [PATCH] Revert "pixman: Do not use clang assembler for now"
+
+This reverts commit 84dbafa42d8141b00da75d6664aef07c252a52ee.
+---
+ conf/nonclangable.conf | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/conf/nonclangable.conf b/conf/nonclangable.conf
+index 04112f4..b5db848 100644
+--- a/conf/nonclangable.conf
++++ b/conf/nonclangable.conf
+@@ -347,5 +347,4 @@ DEPENDS:append:pn-pixman:mips:toolchain-clang = " openmp"
+ #| .endfunc
+ #| ^
+ CFLAGS:append:pn-pixman:arm:toolchain-clang = " -no-integrated-as"
+-CFLAGS:append:pn-pixman:aarch64:toolchain-clang = " -no-integrated-as"
+
+--
+2.34.1
+
diff --git a/meta-arm/ci/clang.yml b/meta-arm/ci/clang.yml
index e5e7dd5..6c90902 100644
--- a/meta-arm/ci/clang.yml
+++ b/meta-arm/ci/clang.yml
@@ -4,8 +4,16 @@
repos:
meta-clang:
url: https://github.com/kraj/meta-clang
- refspec: master
+ patches:
+ pixman:
+ repo: meta-arm
+ path: ci/0001-Revert-pixman-Do-not-use-clang-assembler-for-now.patch
local_conf_header:
clang: |
TOOLCHAIN = "clang"
+ # Backport d89e06ad94a46f6810d0a8787004b71b8ecaf87d to langdale
+ OBJCOPY:pn-linux-yocto:toolchain-clang = "${HOST_PREFIX}objcopy"
+ # Perf needs fixes backported, use GCC for now
+ # https://lore.kernel.org/linux-perf-users/Y5d4k7fDxfRP7hcN@kernel.org/T/#t
+ TOOLCHAIN:pn-perf = "gcc"
diff --git a/meta-arm/ci/gem5-arm64.yml b/meta-arm/ci/gem5-arm64.yml
deleted file mode 100644
index 90913f3..0000000
--- a/meta-arm/ci/gem5-arm64.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-header:
- version: 11
- includes:
- - ci/base.yml
- - ci/meta-openembedded.yml
-
-repos:
- meta-arm:
- layers:
- meta-gem5:
-
-machine: gem5-arm64
-
-target:
- - core-image-minimal
- - gem5-aarch64-native
diff --git a/meta-arm/ci/gem5-atp-arm64.yml b/meta-arm/ci/gem5-atp-arm64.yml
deleted file mode 100644
index 626947b..0000000
--- a/meta-arm/ci/gem5-atp-arm64.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-header:
- version: 11
- includes:
- - ci/gem5-arm64.yml
-
-repos:
- meta-arm:
- layers:
- meta-atp:
-
-machine: gem5-atp-arm64
-
-target:
- - atp-native
- - core-image-minimal
diff --git a/meta-arm/ci/get-binary-toolchains b/meta-arm/ci/get-binary-toolchains
index ed334bf..bf8bf3e 100755
--- a/meta-arm/ci/get-binary-toolchains
+++ b/meta-arm/ci/get-binary-toolchains
@@ -1,8 +1,9 @@
#!/bin/bash
-set -u
+set -u -e
-HOST_ARCH=$(uname -m)
-VER="11.3.rel1"
+BASENAME=arm-gnu-toolchain
+VER=${VER:-11.3.rel1}
+HOST_ARCH=${HOST_ARCH:-$(uname -m)}
DOWNLOAD_DIR=$1
TOOLCHAIN_DIR=$2
@@ -11,36 +12,39 @@
# These should be already created by .gitlab-ci.yml, but do here if run outside of that env
mkdir -p $DOWNLOAD_DIR $TOOLCHAIN_DIR $TOOLCHAIN_LINK_DIR
+download() {
+ TRIPLE=$1
+ URL=https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/$BASENAME-$VER-$HOST_ARCH-$TRIPLE.tar.xz
+ wget -P $DOWNLOAD_DIR -nc $URL
+}
+
if [ $HOST_ARCH = "aarch64" ]; then
- #AArch64 Linux hosted cross compilers
+ # AArch64 Linux hosted cross compilers
- #AArch32 target with hard float (arm-none-linux-gnueabihf)
- wget -P $DOWNLOAD_DIR -nc https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/arm-gnu-toolchain-$VER-$HOST_ARCH-arm-none-linux-gnueabihf.tar.xz
+ # AArch32 target with hard float
+ download arm-none-linux-gnueabihf
elif [ $HOST_ARCH = "x86_64" ]; then
- #x86_64 Linux hosted cross compilers
+ # x86_64 Linux hosted cross compilers
- #AArch32 target with hard float (arm-linux-none-gnueabihf)
- wget -P $DOWNLOAD_DIR -nc https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/arm-gnu-toolchain-$VER-$HOST_ARCH-arm-none-linux-gnueabihf.tar.xz
+ # AArch32 target with hard float
+ download arm-none-linux-gnueabihf
- #AArch64 GNU/Linux target (aarch64-none-linux-gnu)
- wget -P $DOWNLOAD_DIR -nc https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/arm-gnu-toolchain-$VER-$HOST_ARCH-aarch64-none-linux-gnu.tar.xz
-
- #AArch64 GNU/Linux target (aarch64_be-none-linux-gnu)
- wget -P $DOWNLOAD_DIR -nc https://developer.arm.com/-/media/Files/downloads/gnu/$VER/binrel/arm-gnu-toolchain-$VER-$HOST_ARCH-aarch64_be-none-linux-gnu.tar.xz
+ # AArch64 GNU/Linux target
+ download aarch64-none-linux-gnu
else
echo "ERROR - Unknown build arch of $HOST_ARCH"
exit 1
fi
-for i in arm aarch64 aarch64_be; do
- if [ ! -d $TOOLCHAIN_DIR/arm-gnu-toolchain-$VER-$HOST_ARCH-$i-none-linux-gnu*/ ]; then
- if [ ! -f $DOWNLOAD_DIR/arm-gnu-toolchain-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz ]; then
+for i in arm aarch64; do
+ if [ ! -d $TOOLCHAIN_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*/ ]; then
+ if [ ! -f $DOWNLOAD_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz ]; then
continue
fi
- tar -C $TOOLCHAIN_DIR -axvf $DOWNLOAD_DIR/arm-gnu-toolchain-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz
+ tar -C $TOOLCHAIN_DIR -axvf $DOWNLOAD_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu*.tar.xz
fi
# Setup a link for the toolchain to use local to the building machine (e.g., not in a shared location)
- ln -s $TOOLCHAIN_DIR/arm-gnu-toolchain-$VER-$HOST_ARCH-$i-none-linux-gnu* $TOOLCHAIN_LINK_DIR/$i
+ ln -s $TOOLCHAIN_DIR/$BASENAME-$VER-$HOST_ARCH-$i-none-linux-gnu* $TOOLCHAIN_LINK_DIR/$i
done
diff --git a/meta-arm/meta-arm-bsp/conf/machine/musca-b1.conf b/meta-arm/meta-arm-bsp/conf/machine/musca-b1.conf
index c5ef323..4e9cf82 100644
--- a/meta-arm/meta-arm-bsp/conf/machine/musca-b1.conf
+++ b/meta-arm/meta-arm-bsp/conf/machine/musca-b1.conf
@@ -20,4 +20,4 @@
QB_MEM = "512k"
QB_RNG = ""
-TFM_PLATFORM = "arm/musca_b1/sse_200"
+TFM_PLATFORM = "arm/musca_b1"
diff --git a/meta-arm/meta-arm-bsp/documentation/corstone1000/change-log.rst b/meta-arm/meta-arm-bsp/documentation/corstone1000/change-log.rst
index 7cdcd28..64e82aa 100644
--- a/meta-arm/meta-arm-bsp/documentation/corstone1000/change-log.rst
+++ b/meta-arm/meta-arm-bsp/documentation/corstone1000/change-log.rst
@@ -11,7 +11,7 @@
fixes in each release of Corstone-1000 software stack.
******************
-Version 2022.11.10
+Version 2022.11.23
******************
Changes
diff --git a/meta-arm/meta-arm-bsp/documentation/corstone1000/release-notes.rst b/meta-arm/meta-arm-bsp/documentation/corstone1000/release-notes.rst
index f657c26..89a4fa9 100644
--- a/meta-arm/meta-arm-bsp/documentation/corstone1000/release-notes.rst
+++ b/meta-arm/meta-arm-bsp/documentation/corstone1000/release-notes.rst
@@ -7,8 +7,21 @@
Release notes
#############
+
+*************************
+Disclaimer
+*************************
+
+You expressly assume all liabilities and risks relating to your use or operation
+of Your Software and Your Hardware designed or modified using the Arm Tools,
+including without limitation, Your software or Your Hardware designed or
+intended for safety-critical applications. Should Your Software or Your Hardware
+prove defective, you assume the entire cost of all necessary servicing, repair
+or correction.
+
+
**************************
-Release notes - 2022.11.10
+Release notes - 2022.11.23
**************************
Known Issues or Limitations
@@ -18,10 +31,13 @@
- Due to the performance uplimit of MPS3 FPGA and FVP, some Linux distros like Fedora Rawhide can not boot on Corstone-1000 (i.e. user may experience timeouts or boot hang).
- Below SCT FAILURE is a known issues in the FVP:
UEFI Compliant - Boot from network protocols must be implemented -- FAILURE
+ - Below SCT FAILURE is a known issue when a terminal emulator (in the system where the user connects to serial ports) does not support 80x25 or 80x50 mode:
+ EFI_SIMPLE_TEXT_OUT_PROTOCOL.SetMode - SetMode() with valid mode -- FAILURE
- Known limitations regarding ACS tests: The behavior after running ACS tests on FVP is not consistent. Both behaviors are expected and are valid;
The system might boot till the Linux prompt. Or, the system might wait after finishing the ACS tests.
In both cases, the system executes the entire test suite and writes the results as stated in the user guide.
+
Platform Support
-----------------
- This software release is tested on Corstone-1000 FPGA version AN550_v1
@@ -152,7 +168,9 @@
Support
-------
-For support email: support-subsystem-iot@arm.com
+For technical support email: support-subsystem-iot@arm.com
+
+For all security issues, contact Arm by email at arm-security@arm.com.
--------------
diff --git a/meta-arm/meta-arm-bsp/documentation/corstone1000/user-guide.rst b/meta-arm/meta-arm-bsp/documentation/corstone1000/user-guide.rst
index a6350bb..e173f24 100644
--- a/meta-arm/meta-arm-bsp/documentation/corstone1000/user-guide.rst
+++ b/meta-arm/meta-arm-bsp/documentation/corstone1000/user-guide.rst
@@ -18,9 +18,7 @@
Prerequisites
-------------
-These instructions assume your host PC is running Ubuntu Linux 18.04 or 20.04 LTS, with
-at least 32GB of free disk space and 16GB of RAM as minimum requirement. The
-following instructions expect that you are using a bash shell.
+These instructions assume your host PC is running Ubuntu Linux 18.04 or 20.04 LTS, with at least 32GB of free disk space and 16GB of RAM as minimum requirement. The following instructions expect that you are using a bash shell. All the paths stated in this document are absolute paths.
The following prerequisites must be available on the host system. To resolve these dependencies, run:
@@ -146,11 +144,13 @@
pip3 install kas
+If 'kas' command is not found in command-line, please make sure the user installation directories are visible on $PATH. If you have sudo rights, try 'sudo pip3 install kas'.
+
In the top directory of the workspace ``<_workspace>``, run:
::
- git clone https://git.yoctoproject.org/git/meta-arm -b CORSTONE1000-2022.11.10
+ git clone https://git.yoctoproject.org/git/meta-arm -b CORSTONE1000-2022.11.23
To build a Corstone-1000 image for MPS3 FPGA, run:
@@ -215,9 +215,10 @@
└── config.txt
Depending upon the MPS3 board version (printed on the MPS3 board) you should update the images.txt file
-(in corresponding HBI0309x folder) so that the file points to the images under SOFTWARE directory.
+(in corresponding HBI0309x folder. Boardfiles/MB/HBI0309<board_revision>/AN550/images.txt) so that the file points to the images under SOFTWARE directory.
-Here is an example
+The images.txt file that is compatible with the latest version of the software
+stack can be seen below;
::
@@ -289,6 +290,9 @@
booted completely, user can login to the shell using
**"root"** login.
+If system does not boot and only the ttyUSB1 logs are visible, please follow the steps in `Clean Secure Flash Before Testing (applicable to FPGA only)`_ under `SystemReady-IR tests`_ section. The previous image used in FPGA (MPS3) might have filled the Secure Flash completely. The best practice is to clean the secure flash in this case.
+
+
Running the software on FVP
---------------------------
@@ -299,8 +303,11 @@
The recipe is located at <_workspace>/meta-arm/meta-arm/recipes-devtools/fvp/fvp-corstone1000.bb
-The latest supported Fixed Virtual Platform (FVP) version is 11.19_21 and is automatically downloaded
-and installed when using the runfvp command as detailed below.
+The latest supported Fixed Virtual Platform (FVP) version is 11.19_21 and is automatically downloaded and installed when using the runfvp command as detailed below. The FVP version can be checked by running the following command:
+
+::
+
+<_workspace>/meta-arm/scripts/runfvp <_workspace>/build/tmp/deploy/images/corstone1000-fvp/corstone1000-image-corstone1000-fvp.fvpconf -- --version
The FVP can also be manually downloaded from the `Arm Ecosystem FVPs`_ page. On this page, navigate
to "Corstone IoT FVPs" section to download the Corstone-1000 platform FVP installer. Follow the
@@ -361,8 +368,8 @@
::
cd <_workspace>
- git clone https://git.yoctoproject.org/git/meta-arm -b CORSTONE1000-2022.11.10
- git clone https://git.gitlab.arm.com/arm-reference-solutions/systemready-patch.git
+ git clone https://git.yoctoproject.org/git/meta-arm -b CORSTONE1000-2022.11.23
+ git clone https://git.gitlab.arm.com/arm-reference-solutions/systemready-patch.git -b CORSTONE1000-2022.11.23
cp -f systemready-patch/embedded-a/corstone1000/erase_flash/0001-arm-bsp-trusted-firmware-m-corstone1000-Clean-Secure.patch meta-arm
cd meta-arm
git apply 0001-arm-bsp-trusted-firmware-m-corstone1000-Clean-Secure.patch
@@ -374,7 +381,8 @@
- The flash image: <_workspace>/build/tmp/deploy/images/corstone1000-mps3/corstone1000-image-corstone1000-mps3.wic.nopt
Now reboot the board. This step erases the Corstone-1000 SecureEnclave flash
-completely, the user should expect following message from TF-M log:
+completely, the user should expect following message from TF-M log (can be seen
+in ttyUSB1):
::
@@ -388,7 +396,7 @@
Run SystemReady-IR ACS tests
=============================
-ACS image contains two partitions. BOOT partition and RESULTS partition.
+ACS image contains two partitions. BOOT partition and RESULT partition.
Following packages are under BOOT partition
* SCT
@@ -398,8 +406,8 @@
* grub
* uefi manual capsule application
-RESULTS partition is used to store the test results.
-PLEASE MAKE SURE THAT THE RESULTS PARTITION IS EMPTY BEFORE YOU START THE TESTING. OTHERWISE THE TEST RESULTS
+RESULT partition is used to store the test results.
+PLEASE MAKE SURE THAT THE RESULT PARTITION IS EMPTY BEFORE YOU START THE TESTING. OTHERWISE THE TEST RESULTS
WILL NOT BE CONSISTENT
FPGA instructions for ACS image
@@ -441,6 +449,8 @@
ensure that only the USB stick with the ACS image is connected to the board,
and then boot the board.
+The FPGA will reset multiple times during the test, and it might take approx. 24-36 hours to finish the test. At the end of test, the FPGA host terminal will halt showing a shell prompt. Once test is finished the result can be copied following above instructions.
+
FVP instructions for ACS image and run
============================================
@@ -456,7 +466,7 @@
tmux
- <_workspace>/meta-arm/scripts/runfvp <_workspace>/build/tmp/deploy/images/corstone1000-fvp/corstone1000-image-corstone1000-fvp.fvpconf – -C board.msd_mmc.p_mmc_file="${<path-to-img>/ir_acs_live_image.img}"
+ <_workspace>/meta-arm/scripts/runfvp <_workspace>/build/tmp/deploy/images/corstone1000-fvp/corstone1000-image-corstone1000-fvp.fvpconf -- -C board.msd_mmc.p_mmc_file="${<path-to-img>/ir_acs_live_image.img}"
The test results can be fetched using following commands:
@@ -488,7 +498,7 @@
- FWTS
- BSA Linux
-The results can be fetched from the ``acs_results`` partition of the USB stick (FPGA) / SD Card (FVP).
+The results can be fetched from the ``acs_results`` folder in the RESULT partition of the USB stick (FPGA) / SD Card (FVP).
#####################################################
@@ -757,11 +767,29 @@
Negative scenario
=================
-In the negative case scenario, the user should see appropriate logs in
-the secure enclave terminal. If capsule pass initial verification, but fails
-verifications performed during boot time, secure enclave will try new images
-predetermined number of times (defined in the code), before reverting back to
-the previous good bank.
+In the negative case scenario (rollback the capsule version), the user should
+see appropriate logs in the secure enclave terminal.
+
+::
+
+ ...
+ uefi_capsule_retrieve_images: image 0 at 0xa0000070, size=15654928
+ uefi_capsule_retrieve_images: exit
+ flash_full_capsule: enter: image = 0x0xa0000070, size = 15654928, version = 10
+ ERROR: flash_full_capsule: version error
+ private_metadata_write: enter: boot_index = 1
+ private_metadata_write: success
+ fmp_set_image_info:133 Enter
+ FMP image update: image id = 0
+ FMP image update: status = 1version=11 last_attempt_version=10.
+ fmp_set_image_info:157 Exit.
+ corstone1000_fwu_flash_image: exit: ret = -1
+ ...
+
+
+If capsule pass initial verification, but fails verifications performed during
+boot time, secure enclave will try new images predetermined number of times
+(defined in the code), before reverting back to the previous good bank.
::
@@ -803,7 +831,7 @@
Debian/OpenSUSE install and boot (applicable to FPGA only)
***************************************************************************************
-To test Linux distro install and boot, the user should prepare two empty USB sticks.
+To test Linux distro install and boot, the user should prepare two empty USB sticks (minimum size should be 4GB and formatted with FAT32).
Download one of following Linux distro images:
- Debian installer image: https://cdimage.debian.org/cdimage/weekly-builds/arm64/iso-dvd/
@@ -819,7 +847,7 @@
::
- sudo dd if=</path/to/iso_file> of=/dev/sdb iflag=direct oflag=direct status=progress bs=1M; sync;
+ sudo dd if=<path-to-iso_file> of=/dev/sdb iflag=direct oflag=direct status=progress bs=1M; sync;
Boot the MSP3 board with the first USB stick connected. Open following minicom sessions:
@@ -828,9 +856,7 @@
sudo picocom -b 115200 /dev/ttyUSB0 # in one terminal
sudo picocom -b 115200 /dev/ttyUSB2 # in another terminal.
-Press <Ctrl+x>.
-
-Now plug in the second USB stick, the distro installation process will start.
+Now plug in the second USB stick (once installation screen is visible), the distro installation process will start. The installation prompt can be seen in ttyUSB2. If installer does not start, please try to reboot the board with both USB sticks connected and repeat the process.
**NOTE:** Due to the performance limitation of Corstone-1000 MPS3 FPGA, the
distro installation process can take up to 24 hours to complete.
@@ -922,7 +948,7 @@
::
- insmod /lib/modules/5.19.9-yocto-standard/extra/arm-ffa-tee.ko
+ insmod /lib/modules/5.19.14-yocto-standard/extra/arm-ffa-tee.ko
Then, check whether the FF-A TEE driver is loaded correctly by using the following command:
@@ -1034,7 +1060,7 @@
Tests results
-----------------------------------
-As a reference for the end user, reports for various tests for `Corstone-1000 software (CORSTONE1000-2022.11.10) <https://git.yoctoproject.org/meta-arm/tag/?h=CORSTONE1000-2022.11.10>`__
+As a reference for the end user, reports for various tests for `Corstone-1000 software (CORSTONE1000-2022.11.23) <https://git.yoctoproject.org/meta-arm/tag/?h=CORSTONE1000-2022.11.23>`__
can be found in `here <https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-test-report/-/tree/master/embedded-a/corstone1000>`__.
Running the software on FVP on Windows
diff --git a/meta-arm/meta-arm-bsp/documentation/fvp-base-arm32.md b/meta-arm/meta-arm-bsp/documentation/fvp-base-arm32.md
index 54408b0..141e61f 100644
--- a/meta-arm/meta-arm-bsp/documentation/fvp-base-arm32.md
+++ b/meta-arm/meta-arm-bsp/documentation/fvp-base-arm32.md
@@ -1,55 +1,24 @@
-# Armv7-A Base Platform FVP Support in meta-arm-bsp
+# Armv8-A Base Platform FVP (32-bit) Support in meta-arm-bsp
-## How to build and run
+## Howto Build and Run
### Configuration:
-In the local.conf file, MACHINE should be set as follows:
-MACHINE ?= "fvp-base-arm32"
+In the local.conf file, `MACHINE` should be set:
+```
+MACHINE = "fvp-base-arm32"
+```
### Build:
-```bash$ bitbake core-image-minimal```
+```
+$ bitbake core-image-base
+```
### Run:
-To Run the Fixed Virtual Platform simulation tool you must download "Armv8-A
-Base Platform FVP" from Arm developer (This might require the user to
-register) from this address:
-https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms
-and install it on your host PC.
-
-Fast Models Fixed Virtual Platforms (FVP) Reference Guide:
-https://developer.arm.com/docs/100966/latest
-
-Armv8‑A Foundation Platform User Guide:
-https://developer.arm.com/docs/100961/latest/
-
-
-Once done, do the following to build and run an image:
-```bash$ bitbake core-image-minimal```
-```bash$ export YOCTO_DEPLOY_IMGS_DIR="<yocto-build-dir/tmp/deploy/images/fvp-base-arm32>"```
-```bash$ cd <path-to-Base_RevC_AEMv8A_pkg-dir/models/Linux64_GCC-X.X/>```
-```
-bash$ ./FVP_Base_RevC-2xAEMv8A -C bp.virtio_net.enabled=1 \
- -C cache_state_modelled=0 \
- -C bp.secureflashloader.fname=${YOCTO_DEPLOY_IMGS_DIR}/bl1-fvp.bin \
- -C bp.flashloader0.fname=${YOCTO_DEPLOY_IMGS_DIR}/fip-fvp.bin \
- --data cluster0.cpu0=${YOCTO_DEPLOY_IMGS_DIR}/Image@0x80080000 \
- -C bp.virtioblockdevice.image_path=${YOCTO_DEPLOY_IMGS_DIR}/core-image-minimal-fvp-base-arm32.wic \
- -C cluster0.cpu0.CONFIG64=0 \
- -C cluster0.cpu1.CONFIG64=0 \
- -C cluster0.cpu2.CONFIG64=0 \
- -C cluster0.cpu3.CONFIG64=0 \
- -C cluster1.cpu0.CONFIG64=0 \
- -C cluster1.cpu1.CONFIG64=0 \
- -C cluster1.cpu2.CONFIG64=0 \
- -C cluster1.cpu3.CONFIG64=0 \
+The `fvp-base` machine has support for the `runfvp` script, so running is simple:
```
-
-
-If you have built a configuration without a ramdisk, you can use the following
-command in U-boot to start Linux:
-```fvp32# bootz 0x80080000 - 0x82000000```
-
+$ runfvp tmp/deploy/images/fvp-base-arm32/core-image-base-fvp-base-arm32.fvpconf
+```
## Devices supported in the kernel
- serial
- virtio disk
diff --git a/meta-arm/meta-arm-bsp/documentation/fvp-base.md b/meta-arm/meta-arm-bsp/documentation/fvp-base.md
index b0026de..7eda8d3 100644
--- a/meta-arm/meta-arm-bsp/documentation/fvp-base.md
+++ b/meta-arm/meta-arm-bsp/documentation/fvp-base.md
@@ -3,45 +3,22 @@
## Howto Build and Run
### Configuration:
-In the local.conf file, MACHINE should be set as follow:
-MACHINE ?= "fvp-base"
+In the local.conf file, `MACHINE` should be set:
+```
+MACHINE = "fvp-base"
+```
### Build:
-```bash$ bitbake core-image-minimal```
+```
+$ bitbake core-image-base
+```
### Run:
-To Run the Fixed Virtual Platform simulation tool you must download "Armv8-A
-Base Platform FVP" from Arm developer (This might require the user to
-register) from this address:
-https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms
-and install it on your host PC.
+The `fvp-base` machine has support for the `runfvp` script, so running is simple:
-Fast Models Fixed Virtual Platforms (FVP) Reference Guide:
-https://developer.arm.com/docs/100966/latest
-
-Armv8‑A Foundation Platform User Guide:
-https://developer.arm.com/docs/100961/latest/
-
-
-Once done, do the following to build and run an image:
-```bash$ bitbake core-image-minimal```
-```bash$ export YOCTO_DEPLOY_IMGS_DIR="<yocto-build-dir/tmp/deploy/images/fvp-base>"```
-```bash$ cd <path-to-Base_RevC_AEMv8A_pkg-dir/models/Linux64_GCC-X.X/>```
```
-bash$ ./FVP_Base_RevC-2xAEMv8A -C bp.virtio_net.enabled=1 \
- -C cache_state_modelled=0 \
- -C bp.secureflashloader.fname=${YOCTO_DEPLOY_IMGS_DIR}/bl1-fvp.bin \
- -C bp.flashloader0.fname=${YOCTO_DEPLOY_IMGS_DIR}/fip-fvp.bin \
- --data cluster0.cpu0=${YOCTO_DEPLOY_IMGS_DIR}/Image@0x80080000 \
- --data cluster0.cpu0=${YOCTO_DEPLOY_IMGS_DIR}/fvp-base-gicv3-psci-custom.dtb@0x83000000 \
- -C bp.virtioblockdevice.image_path=${YOCTO_DEPLOY_IMGS_DIR}/core-image-minimal-fvp-base.wic
+$ runfvp tmp/deploy/images/fvp-base/core-image-base-fvp-base.fvpconf
```
-
-
-If you have built a configuration without a ramdisk, you can use the following
-command in U-boot to start Linux:
-```VExpress64# booti 0x80080000 - 0x83000000```
-
## Devices supported in the kernel
- serial
- virtio disk
diff --git a/meta-arm/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md b/meta-arm/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md
index 9127a6c..e29aad3 100644
--- a/meta-arm/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md
+++ b/meta-arm/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md
@@ -27,9 +27,9 @@
where either a standard or Real-Time Linux kernel (PREEMPT\_RT) can be built
and run:
- - FVP_Base_AEMv8R: v11.19.14
+ - FVP_Base_AEMv8R: v11.20.15
- boot-wrapper-aarch64: provides PSCI support
- - U-Boot: v2022.04 - provides UEFI services
+ - U-Boot: v2022.07 - provides UEFI services
- Linux kernel: linux-yocto-5.15
- Linux kernel with PREEMPT\_RT support: linux-yocto-rt-5.15
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0001-corstone1000-platform-secure-test-framework.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0001-corstone1000-platform-secure-test-framework.patch
deleted file mode 100644
index 8f63319..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0001-corstone1000-platform-secure-test-framework.patch
+++ /dev/null
@@ -1,359 +0,0 @@
-From 6ab17eeb8225cdf4afc6956c9a2774d60866c36d Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Mon, 28 Mar 2022 05:16:50 +0100
-Subject: [PATCH 1/6] corstone1000: platform secure test framework
-
-Change-Id: Ib781927f0add93ec9c06515d251e79518ee1db6e
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- .../arm/corstone1000/Native_Driver/firewall.c | 15 ++
- .../arm/corstone1000/Native_Driver/firewall.h | 5 +
- .../ci_regression_tests/CMakeLists.txt | 45 +++++
- .../corstone1000/ci_regression_tests/s_test.c | 186 ++++++++++++++++++
- .../corstone1000/ci_regression_tests/s_test.h | 30 +++
- .../ci_regression_tests/s_test_config.cmake | 8 +
- 6 files changed, 289 insertions(+)
- create mode 100644 platform/ext/target/arm/corstone1000/ci_regression_tests/CMakeLists.txt
- create mode 100644 platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.c
- create mode 100644 platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.h
- create mode 100644 platform/ext/target/arm/corstone1000/ci_regression_tests/s_test_config.cmake
-
-diff --git a/platform/ext/target/arm/corstone1000/Native_Driver/firewall.c b/platform/ext/target/arm/corstone1000/Native_Driver/firewall.c
-index 788cc3ec92..356b85e9d5 100755
---- a/platform/ext/target/arm/corstone1000/Native_Driver/firewall.c
-+++ b/platform/ext/target/arm/corstone1000/Native_Driver/firewall.c
-@@ -293,6 +293,21 @@ void fc_enable_mpl(enum rgn_mpe_t mpe, enum rgn_mpl_t mpl)
- ptr->rgn_mpl3 |= (mpl & RGN_MPL_EN_MASK);
- }
-
-+void fc_read_mpl(enum rgn_mpe_t mpe, enum rgn_mpl_t* mpl)
-+{
-+ struct _firewall_pe_rwe_reg_map_t *ptr =
-+ (struct _firewall_pe_rwe_reg_map_t *)fw_data.rwe_ptr;
-+ if (mpe == RGN_MPE0)
-+ *mpl = (ptr->rgn_mpl0 & RGN_MPL_EN_MASK);
-+ else if (mpe == RGN_MPE1)
-+ *mpl = (ptr->rgn_mpl1 & RGN_MPL_EN_MASK);
-+ else if (mpe == RGN_MPE2)
-+ *mpl = (ptr->rgn_mpl2 & RGN_MPL_EN_MASK);
-+ else if (mpe == RGN_MPE3)
-+ *mpl = (ptr->rgn_mpl3 & RGN_MPL_EN_MASK);
-+}
-+
-+
- void fc_disable_mpl(enum rgn_mpe_t mpe, enum rgn_mpl_t mpl)
- {
- struct _firewall_pe_rwe_reg_map_t *ptr =
-diff --git a/platform/ext/target/arm/corstone1000/Native_Driver/firewall.h b/platform/ext/target/arm/corstone1000/Native_Driver/firewall.h
-index 48c86725ef..17afe6a92f 100755
---- a/platform/ext/target/arm/corstone1000/Native_Driver/firewall.h
-+++ b/platform/ext/target/arm/corstone1000/Native_Driver/firewall.h
-@@ -247,6 +247,11 @@ void fc_init_mpl(enum rgn_mpe_t mpe);
- */
- void fc_enable_mpl(enum rgn_mpe_t mpe, enum rgn_mpl_t mpl);
-
-+/**
-+ * \brief Reads Master Permission List in the selected Firewall Component
-+ */
-+void fc_read_mpl(enum rgn_mpe_t mpe, enum rgn_mpl_t* mpl);
-+
- /**
- * \brief Disables Master Permission List in the selected Firewall Component
- */
-diff --git a/platform/ext/target/arm/corstone1000/ci_regression_tests/CMakeLists.txt b/platform/ext/target/arm/corstone1000/ci_regression_tests/CMakeLists.txt
-new file mode 100644
-index 0000000000..70e1c20e4e
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/ci_regression_tests/CMakeLists.txt
-@@ -0,0 +1,45 @@
-+#-------------------------------------------------------------------------------
-+# Copyright (c) 2021-22, Arm Limited. All rights reserved.
-+#
-+# SPDX-License-Identifier: BSD-3-Clause
-+#
-+#-------------------------------------------------------------------------------
-+
-+cmake_policy(SET CMP0079 NEW)
-+
-+include(${CMAKE_CURRENT_SOURCE_DIR}/s_test_config.cmake)
-+
-+####################### Secure #################################################
-+
-+add_library(corstone1000_test_s STATIC EXCLUDE_FROM_ALL)
-+
-+target_sources(corstone1000_test_s
-+ PRIVATE
-+ ${CMAKE_CURRENT_SOURCE_DIR}/s_test.c
-+ ../Native_Driver/firewall.c
-+)
-+
-+target_include_directories(corstone1000_test_s
-+ PRIVATE
-+ ${CMAKE_CURRENT_SOURCE_DIR}
-+ ../Device/Include
-+ ../Native_Driver
-+)
-+
-+# Example test links tfm_test_suite_extra_common to use related interface
-+target_link_libraries(corstone1000_test_s
-+ PRIVATE
-+ tfm_test_suite_extra_common
-+ tfm_log
-+)
-+
-+target_compile_definitions(corstone1000_test_s
-+ PRIVATE
-+ $<$<BOOL:${PLATFORM_IS_FVP}>:PLATFORM_IS_FVP>
-+)
-+
-+# The corstone1000_test_s library is linked by tfm_test_suite_extra_s
-+target_link_libraries(tfm_test_suite_extra_s
-+ PRIVATE
-+ corstone1000_test_s
-+)
-diff --git a/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.c b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.c
-new file mode 100644
-index 0000000000..963f46d2ab
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.c
-@@ -0,0 +1,186 @@
-+/*
-+ * Copyright (c) 2021-22, Arm Limited. All rights reserved.
-+ *
-+ * SPDX-License-Identifier: BSD-3-Clause
-+ *
-+ */
-+
-+#include "s_test.h"
-+#include "platform_base_address.h"
-+#include "firewall.h"
-+#include "tfm_log_raw.h"
-+
-+#define DISABLED_TEST 0
-+
-+enum host_firewall_host_comp_id_t {
-+ HOST_FCTRL = (0x00u),
-+ COMP_SYSPERIPH,
-+ COMP_DBGPERIPH,
-+ COMP_AONPERIPH,
-+ COMP_XNVM,
-+ COMP_CVM,
-+ COMP_HOSTCPU,
-+ COMP_EXTSYS0,
-+ COMP_EXTSYS1,
-+ COMP_EXPSLV0,
-+ COMP_EXPSLV1,
-+ COMP_EXPMST0,
-+ COMP_EXPMST1,
-+ COMP_OCVM,
-+ COMP_DEBUG,
-+};
-+
-+const struct extra_tests_t plat_s_t = {
-+ .test_entry = s_test,
-+ .expected_ret = EXTRA_TEST_SUCCESS
-+};
-+
-+static int test_host_firewall_status(void)
-+{
-+ enum fw_lockdown_status_t status;
-+ uint32_t any_component_id = 2;
-+
-+ fc_select((void *)CORSTONE1000_HOST_FIREWALL_BASE, any_component_id);
-+ status = fw_get_lockdown_status();
-+ if (status != FW_LOCKED) {
-+ tfm_log_printf("FAIL: %s.\n\r", __func__);
-+ return EXTRA_TEST_FAILED;
-+ }
-+
-+ tfm_log_printf("PASS: %s\n\r", __func__);
-+ return EXTRA_TEST_SUCCESS;
-+}
-+
-+static int test_host_firewall_external_flash_configurations(void)
-+{
-+ enum rgn_mpl_t mpl_rights = 0;
-+ enum rgn_mpl_t expected_rights = 0;
-+
-+#if !(PLATFORM_IS_FVP)
-+ /* External flash */
-+ fc_select((void *)CORSTONE1000_HOST_FIREWALL_BASE, COMP_EXPMST0);
-+ fc_select_region(3);
-+ fc_read_mpl(RGN_MPE0, &mpl_rights);
-+ expected_rights = (RGN_MPL_ANY_MST_MASK | RGN_MPL_SECURE_READ_MASK |
-+ RGN_MPL_SECURE_WRITE_MASK);
-+ if (mpl_rights != expected_rights) {
-+ tfm_log_printf("FAIL1: %s.\n\r", __func__);
-+ return EXTRA_TEST_FAILED;
-+ }
-+ /* XIP Permissions */
-+ fc_select((void *)CORSTONE1000_HOST_FIREWALL_BASE, COMP_XNVM);
-+ fc_select_region(1);
-+ fc_read_mpl(RGN_MPE0, &mpl_rights);
-+ expected_rights = (RGN_MPL_ANY_MST_MASK |
-+ RGN_MPL_SECURE_READ_MASK |
-+ RGN_MPL_NONSECURE_READ_MASK);
-+ if (mpl_rights != expected_rights) {
-+ tfm_log_printf("FAIL2: %s.\n\r", __func__);
-+ return EXTRA_TEST_FAILED;
-+ }
-+#else
-+ /* Enable the below test when FVP Host Firewall is configured. */
-+ /*
-+ fc_select((void *)CORSTONE1000_HOST_FIREWALL_BASE, COMP_XNVM);
-+ fc_select_region(1);
-+ fc_read_mpl(RGN_MPE0, &mpl_rights);
-+ tfm_log_printf("mpl rights = %d\n\r", mpl_rights);
-+ expected_rights = (RGN_MPL_ANY_MST_MASK |
-+ RGN_MPL_SECURE_READ_MASK |
-+ RGN_MPL_SECURE_WRITE_MASK |
-+ RGN_MPL_NONSECURE_READ_MASK |
-+ RGN_MPL_NONSECURE_WRITE_MASK);
-+ if (mpl_rights != expected_rights) {
-+ tfm_log_printf("FAIL1: %s.\n\r", __func__);
-+ return EXTRA_TEST_FAILED;
-+ }
-+ */
-+#endif
-+
-+ tfm_log_printf("PASS: %s\n\r", __func__);
-+ return EXTRA_TEST_SUCCESS;
-+}
-+
-+static int test_host_firewall_secure_flash_configurations(void)
-+{
-+ enum rgn_mpl_t mpl_rights = 0;
-+ enum rgn_mpl_t expected_rights = 0;
-+
-+#if !(PLATFORM_IS_FVP)
-+ /* External flash */
-+ fc_select((void *)CORSTONE1000_HOST_FIREWALL_BASE, COMP_EXPMST1);
-+ fc_select_region(1);
-+ fc_read_mpl(RGN_MPE0, &mpl_rights);
-+ expected_rights = (RGN_MPL_ANY_MST_MASK | RGN_MPL_SECURE_READ_MASK |
-+ RGN_MPL_SECURE_WRITE_MASK);
-+ if (mpl_rights != expected_rights) {
-+ tfm_log_printf("FAIL: %s.\n\r", __func__);
-+ return EXTRA_TEST_FAILED;
-+ }
-+#endif
-+
-+ tfm_log_printf("PASS: %s\n\r", __func__);
-+ return EXTRA_TEST_SUCCESS;
-+}
-+
-+static int test_bir_programming(void)
-+{
-+ /* BIR is expected to bhaive like write once register */
-+
-+ volatile uint32_t *bir_base = (uint32_t *)CORSTONE1000_HOST_BIR_BASE;
-+
-+ bir_base[0] = 0x1;
-+ bir_base[0] = 0x2;
-+ if (bir_base[0] != 0x1) {
-+ tfm_log_printf("FAIL: %s : (%u)\n\r", __func__, bir_base[0]);
-+ return EXTRA_TEST_FAILED;
-+ }
-+
-+ tfm_log_printf("PASS: %s\n\r", __func__);
-+ return EXTRA_TEST_SUCCESS;
-+}
-+
-+int32_t s_test(void)
-+{
-+ int status;
-+ int failures = 0;
-+
-+#if (DISABLED_TEST == 1)
-+ status = test_host_firewall_status();
-+ if (status) {
-+ failures++;
-+ }
-+#endif
-+
-+ status = test_host_firewall_secure_flash_configurations();
-+ if (status) {
-+ failures++;
-+ }
-+
-+ status = test_host_firewall_external_flash_configurations();
-+ if (status) {
-+ failures++;
-+ }
-+
-+#if (DISABLED_TEST == 1)
-+ status = test_bir_programming();
-+ if (status) {
-+ failures++;
-+ }
-+#endif
-+
-+ if (failures) {
-+ tfm_log_printf("Not all platform test could pass: failures=%d\n\r", failures);
-+ return EXTRA_TEST_FAILED;
-+ }
-+
-+ tfm_log_printf("ALL_PASS: corstone1000 platform test cases passed.\n\r");
-+ return EXTRA_TEST_SUCCESS;
-+}
-+
-+int32_t extra_tests_init(struct extra_tests_t *internal_test_t)
-+{
-+ /* Add platform init code here. */
-+
-+ return register_extra_tests(internal_test_t, &plat_s_t);
-+}
-diff --git a/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.h b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.h
-new file mode 100644
-index 0000000000..8aff4d679c
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test.h
-@@ -0,0 +1,30 @@
-+/*
-+ * Copyright (c) 2021-22, Arm Limited. All rights reserved.
-+ *
-+ * SPDX-License-Identifier: BSD-3-Clause
-+ *
-+ */
-+
-+#ifndef __S_TESTS_H__
-+#define __S_TESTS_H__
-+
-+#include "extra_tests_common.h"
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+const struct extra_tests_t plat_s_t;
-+
-+/**
-+ * \brief Platform specific secure test function.
-+ *
-+ * \returns Returns error code as specified in \ref int32_t
-+ */
-+int32_t s_test(void);
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+
-+#endif /* __S_TESTS_H__ */
-diff --git a/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test_config.cmake b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test_config.cmake
-new file mode 100644
-index 0000000000..bb8d26bf1c
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/ci_regression_tests/s_test_config.cmake
-@@ -0,0 +1,8 @@
-+#-------------------------------------------------------------------------------
-+# Copyright (c) 2021-22, Arm Limited. All rights reserved.
-+#
-+# SPDX-License-Identifier: BSD-3-Clause
-+#
-+#-------------------------------------------------------------------------------
-+
-+############ Define secure test specific cmake configurations here #############
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0002-corstone1000-make-external-system-support-optional.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0002-corstone1000-make-external-system-support-optional.patch
deleted file mode 100644
index c6bacb4..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0002-corstone1000-make-external-system-support-optional.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From 6fd49ab55c3419429e437845864c5bb2d731da29 Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Mon, 25 Apr 2022 05:26:38 +0100
-Subject: [PATCH 2/6] corstone1000: make external system support optional
-
-The commits introduce build time variables to make
-external system support in the platform optional.
-
-Change-Id: I593014e0da4ac553c105c66ae55f6fd83ffe427e
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- .../ext/target/arm/corstone1000/CMakeLists.txt | 1 +
- platform/ext/target/arm/corstone1000/config.cmake | 1 +
- .../target/arm/corstone1000/tfm_hal_multi_core.c | 15 +++++++++++++++
- 3 files changed, 17 insertions(+)
-
-diff --git a/platform/ext/target/arm/corstone1000/CMakeLists.txt b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-index 16bc708964..39d7b03455 100644
---- a/platform/ext/target/arm/corstone1000/CMakeLists.txt
-+++ b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-@@ -97,6 +97,7 @@ target_compile_definitions(platform_s
- PRIVATE
- $<$<BOOL:${PLATFORM_IS_FVP}>:PLATFORM_IS_FVP>
- $<$<BOOL:${TEST_S}>:TEST_S>
-+ $<$<BOOL:${EXTERNAL_SYSTEM_SUPPORT}>:EXTERNAL_SYSTEM_SUPPORT>
- )
-
- #========================= Platform BL2 =======================================#
-diff --git a/platform/ext/target/arm/corstone1000/config.cmake b/platform/ext/target/arm/corstone1000/config.cmake
-index e5f91108ee..a3399db318 100644
---- a/platform/ext/target/arm/corstone1000/config.cmake
-+++ b/platform/ext/target/arm/corstone1000/config.cmake
-@@ -21,6 +21,7 @@ set(CRYPTO_HW_ACCELERATOR ON CACHE BOOL "Whether to en
- set(CRYPTO_NV_SEED OFF CACHE BOOL "Use stored NV seed to provide entropy")
- set(TFM_CRYPTO_TEST_ALG_CFB OFF CACHE BOOL "Test CFB cryptography mode")
- set(NS FALSE CACHE BOOL "Whether to build NS app")
-+set(EXTERNAL_SYSTEM_SUPPORT OFF CACHE BOOL "Whether to include external system support.")
-
- # FVP is not integrated/tested with CC312.
- if (${PLATFORM_IS_FVP})
-diff --git a/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c b/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-index 8e1b455086..8622844d91 100644
---- a/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-+++ b/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-@@ -16,6 +16,16 @@
- #define HOST_CPU_PE0_CONFIG_OFFSET 0x010
- #define AA64nAA32_MASK (1 << 3)
-
-+#ifdef EXTERNAL_SYSTEM_SUPPORT
-+void tfm_external_system_boot()
-+{
-+ volatile uint32_t *ext_sys_reset_ctl_reg = (uint32_t *)(CORSTONE1000_EXT_SYS_RESET_REG);
-+
-+ /* de-assert CPU_WAIT signal*/
-+ *ext_sys_reset_ctl_reg = 0x0;
-+}
-+#endif
-+
- void tfm_hal_boot_ns_cpu(uintptr_t start_addr)
- {
- /* Switch the shared flash to XiP mode for the host */
-@@ -53,6 +63,11 @@ void tfm_hal_boot_ns_cpu(uintptr_t start_addr)
- *reset_ctl_reg = 0;
-
- (void) start_addr;
-+
-+#ifdef EXTERNAL_SYSTEM_SUPPORT
-+ /*release EXT SYS out of reset*/
-+ tfm_external_system_boot();
-+#endif
- }
-
- void tfm_hal_wait_for_ns_cpu_ready(void)
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0003-corstone1000-enable-secure-enclave-run-without-host-.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0003-corstone1000-enable-secure-enclave-run-without-host-.patch
deleted file mode 100644
index 6422952..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0003-corstone1000-enable-secure-enclave-run-without-host-.patch
+++ /dev/null
@@ -1,298 +0,0 @@
-From 2e56f2601249243f2fb3ba67caf9febe4bfc8371 Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Tue, 26 Apr 2022 20:17:13 +0100
-Subject: [PATCH 3/6] corstone1000: enable secure enclave run without host
- binaries
-
-In TEST_S configuration, the build disables part of the code which
-assumes that the host binaries are present in the flash. This change
-will allow secure enclave's part of the platforms software to build
-and run without the host support. The configuration can be used to run
-CI and test secure enclave software independently.
-
-Change-Id: I29325750a3bea270fe5b3b8b47932a7071a59482
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- .../ext/target/arm/corstone1000/readme.rst | 88 +++++++++++++++----
- .../target/arm/corstone1000/CMakeLists.txt | 8 +-
- .../arm/corstone1000/bl1/CMakeLists.txt | 2 +-
- .../target/arm/corstone1000/bl2_flash_map.c | 2 +
- .../target/arm/corstone1000/boot_hal_bl2.c | 2 +
- .../ext/target/arm/corstone1000/config.cmake | 11 ++-
- .../arm/corstone1000/partition/flash_layout.h | 2 +-
- .../arm/corstone1000/tfm_hal_multi_core.c | 2 +
- 8 files changed, 94 insertions(+), 23 deletions(-)
-
-diff --git a/docs/platform/ext/target/arm/corstone1000/readme.rst b/docs/platform/ext/target/arm/corstone1000/readme.rst
-index 94b58ac6fc..10c9c58f78 100644
---- a/docs/platform/ext/target/arm/corstone1000/readme.rst
-+++ b/docs/platform/ext/target/arm/corstone1000/readme.rst
-@@ -7,22 +7,27 @@ Introduction
- ************
-
- The ARM's Corstone-1000 platform is a reference implementation of PSA FF-M
--architecture where NSPE and SPE environments are partitioned into
-+architecture where NSPE and SPE environments are partitioned/isolated into
- Cortex-A35 and Cortex-M0+ respectively.
-
- Cortex-M0+ acting as Secure Enclave is the Root-of-trust of SoC. Its
--software comprises of two boot loading stages, i.e. Bl1 and Bl2, based on
--mcuboot, and TF-M as run time software. Cortex-A35, also referred as host,
--is completely treated as non-secure from the Secure Enclave perspective.
-+software comprises of two boot loading stages, i.e. Bl1 and Bl2 (based on
-+mcuboot) and TF-M as run time software. Cortex-A35, also referred as host,
-+is treated as non-secure from the Secure Enclave perspective.
- The Cortex-A35 is brought out of rest by Secure Enclave in aarch64 bit mode,
- and boots the software ecosystem based on linux, u-boot, UEFI run time
--services, TF-A and Optee.
-+services, TF-A, Secure Partitions and Optee.
-
- The communication between NSPE and SPE is based on PSA IPC protocol running on
--top of OpenAMP.
-+top of FF-A/OpenAMP.
-
- The secure enclave subsystem has ARM's CC-312 (Crypto Cell) hardware to
--accelerate cryptographic operations.
-+accelerate cryptographic operations. Additionaly, platform supports Secure Debug
-+using SDC-600 as the communication interface between host debugger and platform
-+target. The platform has the build option to enable secure debug protocol to
-+unlock debug ports during boot time. The protocol is based on ARM's ADAC
-+(Authenticated Debug Access Control) standard.
-+
-
- ***********
- System boot
-@@ -33,23 +38,76 @@ System boot
- - BL1 load, verifies and transfer execution to BL2 which is again based on mcuboot.
- - BL2 loads and verifies TF-M and host's initial boot loader image.
- - BL2 transfer the execution to the TF-M.
--- During TF-M initialization, the host is reset.
-+- During TF-M initialization, the host is taken out of rest.
-+- Hashes of the keys used for image verification are stored in the OTP memory.
-
- *****
- Build
- *****
-
--.. code-block::
-+Platform solution
-+=================
-+
-+The platform binaries are build using Yocto. Below is the user guide:
-+
-+`Arm Corstone-1000 User Guide`_
-+
-+Secure Test
-+===========
-+
-+This section can be used to test the secure enclave software indedendently from
-+the host. The below configuration builds the secure enclave binaries with CI test
-+frame integrated. On boot, secure enclave softwares stack is brought up, and
-+CI tests starts executing at the end of the initialization process. In the
-+below configuration, host software support is disabled, and meant only
-+to test/verify the secure enclave softwares.
-+
-+FVP
-+---
-
-- cmake -B build/ -S <tf-m-root>/ -DCMAKE_BUILD_TYPE=Debug -DTFM_TOOLCHAIN_FILE=<tf-m-root>/toolchain_GNUARM.cmake -DTFM_PLATFORM=arm/corstone1000
-+- Download Corstone-1000 FVP from : `Arm Ecosystem FVPs`_
-+- Install FVP by running the shell script.
-+- Running of the binary will boot secure enclave software stack and at the end all CI test
-+ from tf-m-test along with platform specific tests are executed.
-+
-+.. code-block:: bash
-+
-+ cmake -B build/ -S <tf-m-root>/ -DCMAKE_BUILD_TYPE=Debug -DTFM_TOOLCHAIN_FILE=<tf-m-root>/toolchain_GNUARM.cmake -DTFM_PLATFORM=arm/corstone1000 -DPLATFORM_IS_FVP=TRUE -DTEST_NS=OFF -DTEST_S=ON -DEXTRA_S_TEST_SUITES_PATHS=<tf-m-root>/trusted-firmware-m/platform/ext/target/arm/corstone1000/ci_regression_tests/
- cmake --build build -- install
-+ cd ./build/install/outputs/
-+ cat bl2_signed.bin bl2_signed.bin tfm_s_signed.bin > cs1000.bin
-+ cd <path-to-FVP-installation>/models/Linux64_GCC-9.3/
-+ ./FVP_Corstone-1000 -C board.flashloader0.fname="none" -C se.trustedBootROMloader.fname="./<path-to-build-dir>/install/outputs/bl1.bin" -C board.xnvm_size=64 -C se.trustedSRAM_config=6 -C se.BootROM_config="3" -C board.smsc_91c111.enabled=0 -C board.hostbridge.userNetworking=true --data board.flash0=./<path-to-build-dir>/install/outputs/cs1000.bin@0x68100000 -C diagnostics=4 -C disable_visualisation=true -C board.se_flash_size=8192 -C diagnostics=4 -C disable_visualisation=true
-+
-+FPGA
-+----
-
--The binaries will be installed inside:
-+- Follow the above pointed platform user guide to setup the FPGA board.
-+- Use the BL1 generated from the below commands to place it inside FPGA board SD Card.
-+- Use the cs1000.bin created from the below commands to place it inside FPGA board SD Card.
-+
-+.. code-block:: bash
-+
-+ cmake -B build/ -S <tf-m-root>/ -DCMAKE_BUILD_TYPE=Debug -DTFM_TOOLCHAIN_FILE=<tf-m-root>/toolchain_GNUARM.cmake -DTFM_PLATFORM=arm/corstone1000 -DTEST_NS=OFF -DTEST_S=ON -DEXTRA_S_TEST_SUITES_PATHS=<tf-m-root>/trusted-firmware-m/platform/ext/target/arm/corstone1000/ci_regression_tests/ -DTEST_S_PS=OFF -DTEST_S_PLATFORM=OFF
-+ cmake --build build -- install
-+ cd ./build/install/outputs/
-+ cat bl2_signed.bin bl2_signed.bin tfm_s_signed.bin > cs1000.bin
-+ cp bl1.bin <path-to-FPGA-SD-CARD>/SOFTWARE/
-+ cp cs1000.bin <path-to-FPGA-SD-CARD>/SOFTWARE/
-
--.. code-block::
-+FPGA build can not compile all the CI tests into a single build as it exceeds
-+the available RAM size. So there is a need to select few tests but not all.
-+The above configuration disable build of -DTEST_S_PS and -DTEST_S_PLATFORM.
-+Other test configurations are:
-
-- ./build/install/outputs/ARM/CORSTONE1000
-+- -DTEST_S_ATTESTATION=ON/OFF
-+- -DTEST_S_AUDIT=ON/OFF
-+- -DTEST_S_CRYPTO=ON/OFF
-+- -DTEST_S_ITS=ON/OFF
-+- -DTEST_S_PS=ON/OFF
-+- -DTEST_S_PLATFORM=ON/OFF
-
----------------
-+*Copyright (c) 2021-2022, Arm Limited. All rights reserved.*
-
--*Copyright (c) 2021, Arm Limited. All rights reserved.*
-+.. _Arm Ecosystem FVPs: https://developer.arm.com/tools-and-software/open-source-software/arm-platforms-software/arm-ecosystem-fvps
-+.. _Arm Corstone-1000 User Guide: https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-docs/-/blob/CORSTONE1000-2022.04.19/docs/embedded-a/corstone1000/user-guide.rst
-diff --git a/platform/ext/target/arm/corstone1000/CMakeLists.txt b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-index 39d7b03455..81522c7cf0 100644
---- a/platform/ext/target/arm/corstone1000/CMakeLists.txt
-+++ b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-@@ -18,7 +18,7 @@ target_include_directories(platform_region_defs
-
- target_compile_definitions(platform_region_defs
- INTERFACE
-- $<$<BOOL:${TEST_S}>:TEST_S>
-+ $<$<BOOL:${TFM_S_REG_TEST}>:TFM_S_REG_TEST>
- )
- #========================= Platform common defs ===============================#
-
-@@ -75,7 +75,7 @@ target_sources(platform_s
- $<$<BOOL:TFM_PARTITION_PLATFORM>:${CMAKE_CURRENT_SOURCE_DIR}/services/src/tfm_platform_system.c>
- fw_update_agent/uefi_capsule_parser.c
- fw_update_agent/fwu_agent.c
-- $<$<BOOL:${TEST_S}>:${CMAKE_CURRENT_SOURCE_DIR}/target_cfg.c>
-+ $<$<BOOL:${TFM_S_REG_TEST}>:${CMAKE_CURRENT_SOURCE_DIR}/target_cfg.c>
- )
-
- if (PLATFORM_IS_FVP)
-@@ -96,7 +96,7 @@ endif()
- target_compile_definitions(platform_s
- PRIVATE
- $<$<BOOL:${PLATFORM_IS_FVP}>:PLATFORM_IS_FVP>
-- $<$<BOOL:${TEST_S}>:TEST_S>
-+ $<$<BOOL:${TFM_S_REG_TEST}>:TFM_S_REG_TEST>
- $<$<BOOL:${EXTERNAL_SYSTEM_SUPPORT}>:EXTERNAL_SYSTEM_SUPPORT>
- )
-
-@@ -136,7 +136,7 @@ endif()
- target_compile_definitions(platform_bl2
- PRIVATE
- $<$<BOOL:${PLATFORM_IS_FVP}>:PLATFORM_IS_FVP>
-- $<$<BOOL:${TEST_S}>:TEST_S>
-+ $<$<BOOL:${TFM_S_REG_TEST}>:TFM_S_REG_TEST>
- )
-
- # boot_hal_bl2.c is compiled as part of 'bl2' target and not inside
-diff --git a/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt b/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-index 369695f148..d39c5ae91d 100644
---- a/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-+++ b/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-@@ -291,7 +291,7 @@ target_compile_definitions(signing_layout_for_bl2
- PRIVATE
- MCUBOOT_IMAGE_NUMBER=${BL1_IMAGE_NUMBER}
- BL1
-- $<$<BOOL:${TEST_S}>:TEST_S>
-+ $<$<BOOL:${TFM_S_REG_TEST}>:TFM_S_REG_TEST>
- )
-
- target_include_directories(signing_layout_for_bl2
-diff --git a/platform/ext/target/arm/corstone1000/bl2_flash_map.c b/platform/ext/target/arm/corstone1000/bl2_flash_map.c
-index 6bffa274df..0a6a592d94 100644
---- a/platform/ext/target/arm/corstone1000/bl2_flash_map.c
-+++ b/platform/ext/target/arm/corstone1000/bl2_flash_map.c
-@@ -38,6 +38,7 @@ struct flash_area flash_map[] = {
- .fa_off = FLASH_AREA_1_OFFSET,
- .fa_size = FLASH_AREA_1_SIZE,
- },
-+#ifndef TFM_S_REG_TEST
- {
- .fa_id = FLASH_AREA_2_ID,
- .fa_device_id = FLASH_DEVICE_ID,
-@@ -52,6 +53,7 @@ struct flash_area flash_map[] = {
- .fa_off = FLASH_INVALID_OFFSET,
- .fa_size = FLASH_INVALID_SIZE,
- },
-+#endif
- };
-
- const int flash_map_entry_num = ARRAY_SIZE(flash_map);
-diff --git a/platform/ext/target/arm/corstone1000/boot_hal_bl2.c b/platform/ext/target/arm/corstone1000/boot_hal_bl2.c
-index 792e06f81e..134315a17b 100644
---- a/platform/ext/target/arm/corstone1000/boot_hal_bl2.c
-+++ b/platform/ext/target/arm/corstone1000/boot_hal_bl2.c
-@@ -100,10 +100,12 @@ int32_t boot_platform_init(void)
- return 1;
- }
-
-+#ifndef TFM_S_REG_TEST
- result = fill_bl2_flash_map_by_parsing_fips(BANK_0_PARTITION_OFFSET);
- if (result) {
- return 1;
- }
-+#endif
-
- result = FLASH_DEV_NAME.Initialize(NULL);
- if (result != ARM_DRIVER_OK) {
-diff --git a/platform/ext/target/arm/corstone1000/config.cmake b/platform/ext/target/arm/corstone1000/config.cmake
-index a3399db318..a6a1a33c42 100644
---- a/platform/ext/target/arm/corstone1000/config.cmake
-+++ b/platform/ext/target/arm/corstone1000/config.cmake
-@@ -13,8 +13,15 @@ set(DEFAULT_MCUBOOT_FLASH_MAP OFF CACHE BOOL "Whether to us
- set(MCUBOOT_UPGRADE_STRATEGY "RAM_LOAD" CACHE STRING "Upgrade strategy when multiple boot images are loaded")
- set(MCUBOOT_SECURITY_COUNTER_S "1" CACHE STRING "Security counter for S image. auto sets it to IMAGE_VERSION_S")
-
--set(TFM_ISOLATION_LEVEL 2 CACHE STRING "Isolation level")
--set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "Whether to combine S and NS into either 1 image, or sign each separately")
-+if (TEST_S OR TEST_S_ATTESTATION OR TEST_S_AUDIT OR TEST_S_CRYPTO OR TEST_S_ITS OR TEST_S_PS OR TEST_S_PLATFORM OR EXTRA_S_TEST_SUITES_PATHS)
-+ # Test configuration: host images are not needed and work only with isolation level 1
-+ set(MCUBOOT_IMAGE_NUMBER 1 CACHE STRING "Whether to combine S and NS into either 1 image, or sign each separately")
-+ set(TFM_ISOLATION_LEVEL 1 CACHE STRING "Isolation level")
-+else()
-+ set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "Whether to combine S and NS into either 1 image, or sign each separately")
-+ set(TFM_ISOLATION_LEVEL 2 CACHE STRING "Isolation level")
-+endif()
-+
- set(TFM_MULTI_CORE_TOPOLOGY ON CACHE BOOL "Whether to build for a dual-cpu architecture")
- set(TFM_PLAT_SPECIFIC_MULTI_CORE_COMM ON CACHE BOOL "Whether to use a platform specific inter core communication instead of mailbox in dual-cpu topology")
- set(CRYPTO_HW_ACCELERATOR ON CACHE BOOL "Whether to enable the crypto hardware accelerator on supported platforms")
-diff --git a/platform/ext/target/arm/corstone1000/partition/flash_layout.h b/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-index aa5a8fe463..b0319bb319 100644
---- a/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-+++ b/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-@@ -119,7 +119,7 @@
- *
- */
- #define SE_BL2_PARTITION_SIZE (0x19000) /* 100 KB */
--#ifdef TEST_S
-+#ifdef TFM_S_REG_TEST
- #define TFM_PARTITION_SIZE (0x61C00) /* 391 KB */
- #else
- #define TFM_PARTITION_SIZE (0x5E000) /* 376 KB */
-diff --git a/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c b/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-index 8622844d91..1146ffe22a 100644
---- a/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-+++ b/platform/ext/target/arm/corstone1000/tfm_hal_multi_core.c
-@@ -31,6 +31,7 @@ void tfm_hal_boot_ns_cpu(uintptr_t start_addr)
- /* Switch the shared flash to XiP mode for the host */
- Select_XIP_Mode_For_Shared_Flash();
-
-+#ifndef TFM_S_REG_TEST
- volatile uint32_t *bir_base = (uint32_t *)CORSTONE1000_HOST_BIR_BASE;
-
- /* Program Boot Instruction Register to jump to BL2 (TF-A) base address
-@@ -68,6 +69,7 @@ void tfm_hal_boot_ns_cpu(uintptr_t start_addr)
- /*release EXT SYS out of reset*/
- tfm_external_system_boot();
- #endif
-+#endif /* !TFM_S_REG_TEST */
- }
-
- void tfm_hal_wait_for_ns_cpu_ready(void)
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0004-Platform-Partition-Allow-configuration-of-input-and-.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0004-Platform-Partition-Allow-configuration-of-input-and-.patch
deleted file mode 100644
index 211fb9e..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0004-Platform-Partition-Allow-configuration-of-input-and-.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From f3686dfb8fb97cb42c3d4f8ee2d7aa736d5cb760 Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Wed, 3 Aug 2022 15:50:27 +0100
-Subject: [PATCH 4/6] Platform Partition: Allow configuration of input and
- output buffer
-
-The change makes input and output buffer size macros used by
-the platform partition to be configured by cmake. This will
-allow platforms to set the buffer size accordingly.
-
-Change-Id: Ia492ce02f8744b0157228d9be51a9ec5b7c88ef6
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- config/config_default.cmake | 2 ++
- secure_fw/partitions/platform/CMakeLists.txt | 6 ++++++
- secure_fw/partitions/platform/platform_sp.c | 9 +++++++--
- 3 files changed, 15 insertions(+), 2 deletions(-)
-
-diff --git a/config/config_default.cmake b/config/config_default.cmake
-index 3112b707bc..497c972dc9 100755
---- a/config/config_default.cmake
-+++ b/config/config_default.cmake
-@@ -141,6 +141,8 @@ set(ATTEST_INCLUDE_OPTIONAL_CLAIMS ON CACHE BOOL "Include opt
- set(ATTEST_INCLUDE_COSE_KEY_ID OFF CACHE BOOL "Include COSE key-id in initial attestation token")
-
- set(TFM_PARTITION_PLATFORM ON CACHE BOOL "Enable Platform partition")
-+set(PLATFORM_SERVICE_INPUT_BUFFER_SIZE 64 CACHE STRING "Size of input buffer in platform service.")
-+set(PLATFORM_SERVICE_OUTPUT_BUFFER_SIZE 64 CACHE STRING "Size of output buffer in platform service.")
-
- set(TFM_PARTITION_AUDIT_LOG OFF CACHE BOOL "Enable Audit Log partition")
-
-diff --git a/secure_fw/partitions/platform/CMakeLists.txt b/secure_fw/partitions/platform/CMakeLists.txt
-index 4b37cd780c..3070f89d6d 100644
---- a/secure_fw/partitions/platform/CMakeLists.txt
-+++ b/secure_fw/partitions/platform/CMakeLists.txt
-@@ -47,6 +47,12 @@ target_link_libraries(tfm_psa_rot_partition_platform
- tfm_spm
- )
-
-+target_compile_definitions(tfm_psa_rot_partition_platform
-+ PRIVATE
-+ INPUT_BUFFER_SIZE=${PLATFORM_SERVICE_INPUT_BUFFER_SIZE}
-+ OUTPUT_BUFFER_SIZE=${PLATFORM_SERVICE_OUTPUT_BUFFER_SIZE}
-+)
-+
- ############################ Secure API ########################################
-
- target_sources(tfm_sprt
-diff --git a/secure_fw/partitions/platform/platform_sp.c b/secure_fw/partitions/platform/platform_sp.c
-index 673cb0ee06..87bd434720 100644
---- a/secure_fw/partitions/platform/platform_sp.c
-+++ b/secure_fw/partitions/platform/platform_sp.c
-@@ -38,8 +38,13 @@ static const int32_t nv_counter_access_map[NV_COUNTER_MAP_SIZE] = {
- #include "psa/service.h"
- #include "region_defs.h"
-
--#define INPUT_BUFFER_SIZE 64
--#define OUTPUT_BUFFER_SIZE 64
-+#ifndef INPUT_BUFFER_SIZE
-+#define INPUT_BUFFER_SIZE 64
-+#endif
-+
-+#ifndef OUTPUT_BUFFER_SIZE
-+#define OUTPUT_BUFFER_SIZE 64
-+#endif
-
- typedef enum tfm_platform_err_t (*plat_func_t)(const psa_msg_t *msg);
- #endif /* TFM_PSA_API */
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0005-corstone1000-support-for-UEFI-FMP-image-Information.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0005-corstone1000-support-for-UEFI-FMP-image-Information.patch
deleted file mode 100644
index 14e4b7f..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0005-corstone1000-support-for-UEFI-FMP-image-Information.patch
+++ /dev/null
@@ -1,573 +0,0 @@
-From 9d70628b7dc1dbc3c1ac7f4f3c0f6aa6b237510d Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Wed, 6 Jul 2022 11:19:39 +0100
-Subject: [PATCH 5/6] corstone1000: support for UEFI FMP image Information
-
-The commit provides the support for UEFI FMP (Firmware Management
-Protocol) SET and GET Image info APIs.
-
-The APIs to SET and GET image info is implemented. In current design,
-SET is called by secure encalve and GET is called by the host.
-
-FMP image information is initialized on every boot and retained
-in SRAM. The updatable values of the FMP are stored in private
-metadata section of the flash.
-
-Change-Id: Iaf0b4a13a9c24f05e4a32509e61a8b96ee8e9e4b
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- .../target/arm/corstone1000/CMakeLists.txt | 2 +
- .../ext/target/arm/corstone1000/config.cmake | 8 +-
- .../corstone1000/fw_update_agent/fwu_agent.c | 61 ++++-
- .../corstone1000/fw_update_agent/fwu_agent.h | 3 +
- .../corstone1000/fw_update_agent/uefi_fmp.c | 240 ++++++++++++++++++
- .../corstone1000/fw_update_agent/uefi_fmp.h | 56 ++++
- .../include/corstone1000_ioctl_requests.h | 14 +-
- .../services/src/tfm_platform_system.c | 9 +
- 8 files changed, 374 insertions(+), 19 deletions(-)
- create mode 100644 platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.c
- create mode 100644 platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.h
-
-diff --git a/platform/ext/target/arm/corstone1000/CMakeLists.txt b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-index 81522c7cf0..3602312a3a 100644
---- a/platform/ext/target/arm/corstone1000/CMakeLists.txt
-+++ b/platform/ext/target/arm/corstone1000/CMakeLists.txt
-@@ -76,6 +76,8 @@ target_sources(platform_s
- fw_update_agent/uefi_capsule_parser.c
- fw_update_agent/fwu_agent.c
- $<$<BOOL:${TFM_S_REG_TEST}>:${CMAKE_CURRENT_SOURCE_DIR}/target_cfg.c>
-+ fw_update_agent/uefi_fmp.c
-+ $<$<NOT:$<BOOL:${PLATFORM_DEFAULT_OTP}>>:${PLATFORM_DIR}/ext/accelerator/cc312/otp_cc312.c>
- )
-
- if (PLATFORM_IS_FVP)
-diff --git a/platform/ext/target/arm/corstone1000/config.cmake b/platform/ext/target/arm/corstone1000/config.cmake
-index a6a1a33c42..ab0fe17ba8 100644
---- a/platform/ext/target/arm/corstone1000/config.cmake
-+++ b/platform/ext/target/arm/corstone1000/config.cmake
-@@ -50,7 +50,9 @@ else()
- set(PLATFORM_PSA_ADAC_SECURE_DEBUG FALSE CACHE BOOL "Whether to use psa-adac secure debug.")
- endif()
-
--set(DEFAULT_MCUBOOT_SECURITY_COUNTERS OFF CACHE BOOL "Whether to use the default security counter configuration defined by TF-M project")
-+set(DEFAULT_MCUBOOT_SECURITY_COUNTERS OFF CACHE BOOL "Whether to use the default security counter configuration defined by TF-M project")
-
--set(PS_ENCRYPTION OFF CACHE BOOL "Enable encryption for Protected Storage partition")
--set(PS_ROLLBACK_PROTECTION OFF CACHE BOOL "Enable rollback protection for Protected Storage partition")
-+set(PS_ENCRYPTION OFF CACHE BOOL "Enable encryption for Protected Storage partition")
-+set(PS_ROLLBACK_PROTECTION OFF CACHE BOOL "Enable rollback protection for Protected Storage partition")
-+
-+set(PLATFORM_SERVICE_OUTPUT_BUFFER_SIZE 256 CACHE STRING "Size of output buffer in platform service.")
-diff --git a/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.c b/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.c
-index 3abb5dd0dc..72a5fc9c1d 100644
---- a/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.c
-+++ b/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.c
-@@ -18,6 +18,7 @@
- #include "platform_description.h"
- #include "tfm_plat_nv_counters.h"
- #include "tfm_plat_defs.h"
-+#include "uefi_fmp.h"
-
- /* Properties of image in a bank */
- struct fwu_image_properties {
-@@ -84,6 +85,11 @@ struct fwu_private_metadata {
- /* staged nv_counter: temprary location before written to the otp */
- uint32_t nv_counter[NR_OF_IMAGES_IN_FW_BANK];
-
-+ /* FMP information */
-+ uint32_t fmp_version;
-+ uint32_t fmp_last_attempt_version;
-+ uint32_t fmp_last_attempt_status;
-+
- } __packed;
-
- #define MAX_BOOT_ATTEMPTS_PER_BANK 3
-@@ -278,7 +284,7 @@ enum fwu_agent_error_t fwu_metadata_provision(void)
- {
- enum fwu_agent_error_t ret;
- struct fwu_private_metadata priv_metadata;
-- uint32_t image_version = 0;
-+ uint32_t image_version = FWU_IMAGE_INITIAL_VERSION;
-
- FWU_LOG_MSG("%s: enter\n\r", __func__);
-
-@@ -302,8 +308,8 @@ enum fwu_agent_error_t fwu_metadata_provision(void)
- memset(&_metadata, 0, sizeof(struct fwu_metadata));
-
- _metadata.version = 1;
-- _metadata.active_index = 0;
-- _metadata.previous_active_index = 1;
-+ _metadata.active_index = BANK_0;
-+ _metadata.previous_active_index = BANK_1;
-
- /* bank 0 is the place where images are located at the
- * start of device lifecycle */
-@@ -339,6 +345,10 @@ enum fwu_agent_error_t fwu_metadata_provision(void)
- priv_metadata.boot_index = BANK_0;
- priv_metadata.boot_attempted = 0;
-
-+ priv_metadata.fmp_version = FWU_IMAGE_INITIAL_VERSION;
-+ priv_metadata.fmp_last_attempt_version = FWU_IMAGE_INITIAL_VERSION;
-+ priv_metadata.fmp_last_attempt_status = LAST_ATTEMPT_STATUS_SUCCESS;
-+
- ret = private_metadata_write(&priv_metadata);
- if (ret) {
- return ret;
-@@ -540,9 +550,25 @@ enum fwu_agent_error_t corstone1000_fwu_flash_image(void)
- &image_bank_offset);
- switch(image_index) {
- case IMAGE_ALL:
-+
- ret = flash_full_capsule(&_metadata, capsule_info.image[i],
- capsule_info.size[i],
- capsule_info.version[i]);
-+
-+ if (ret != FWU_AGENT_SUCCESS) {
-+
-+ priv_metadata.fmp_last_attempt_version = capsule_info.version[i];
-+ priv_metadata.fmp_last_attempt_status = LAST_ATTEMPT_STATUS_ERROR_UNSUCCESSFUL;
-+
-+ private_metadata_write(&priv_metadata);
-+
-+ fmp_set_image_info(&full_capsule_image_guid,
-+ priv_metadata.fmp_version,
-+ priv_metadata.fmp_last_attempt_version,
-+ priv_metadata.fmp_last_attempt_status);
-+ }
-+
-+
- break;
- default:
- FWU_LOG_MSG("%s: sent image not recognized\n\r", __func__);
-@@ -866,17 +892,42 @@ enum fwu_agent_error_t corstone1000_fwu_host_ack(void)
-
- current_state = get_fwu_agent_state(&_metadata, &priv_metadata);
- if (current_state == FWU_AGENT_STATE_REGULAR) {
-+
- ret = FWU_AGENT_SUCCESS; /* nothing to be done */
-+
-+ fmp_set_image_info(&full_capsule_image_guid,
-+ priv_metadata.fmp_version,
-+ priv_metadata.fmp_last_attempt_version,
-+ priv_metadata.fmp_last_attempt_status);
-+
- goto out;
-+
- } else if (current_state != FWU_AGENT_STATE_TRIAL) {
- FWU_ASSERT(0);
- }
-
- if (_metadata.active_index != priv_metadata.boot_index) {
-+
- /* firmware update failed, revert back to previous bank */
-+
-+ priv_metadata.fmp_last_attempt_version =
-+ _metadata.img_entry[IMAGE_0].img_props[_metadata.active_index].version;
-+
-+ priv_metadata.fmp_last_attempt_status = LAST_ATTEMPT_STATUS_ERROR_UNSUCCESSFUL;
-+
- ret = fwu_select_previous(&_metadata, &priv_metadata);
-+
- } else {
-+
- /* firmware update successful */
-+
-+ priv_metadata.fmp_version =
-+ _metadata.img_entry[IMAGE_0].img_props[_metadata.active_index].version;
-+ priv_metadata.fmp_last_attempt_version =
-+ _metadata.img_entry[IMAGE_0].img_props[_metadata.active_index].version;
-+
-+ priv_metadata.fmp_last_attempt_status = LAST_ATTEMPT_STATUS_SUCCESS;
-+
- ret = fwu_accept_image(&full_capsule_image_guid, &_metadata,
- &priv_metadata);
- if (!ret) {
-@@ -886,6 +937,10 @@ enum fwu_agent_error_t corstone1000_fwu_host_ack(void)
-
- if (ret == FWU_AGENT_SUCCESS) {
- disable_host_ack_timer();
-+ fmp_set_image_info(&full_capsule_image_guid,
-+ priv_metadata.fmp_version,
-+ priv_metadata.fmp_last_attempt_version,
-+ priv_metadata.fmp_last_attempt_status);
- }
-
- out:
-diff --git a/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.h b/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.h
-index 57b07e8d2c..aa18179024 100644
---- a/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.h
-+++ b/platform/ext/target/arm/corstone1000/fw_update_agent/fwu_agent.h
-@@ -30,6 +30,9 @@ enum fwu_agent_error_t {
- } \
-
-
-+/* Version used for the very first image of the device. */
-+#define FWU_IMAGE_INITIAL_VERSION 0
-+
- enum fwu_agent_error_t fwu_metadata_provision(void);
- enum fwu_agent_error_t fwu_metadata_init(void);
-
-diff --git a/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.c b/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.c
-new file mode 100644
-index 0000000000..ce576e1794
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.c
-@@ -0,0 +1,240 @@
-+/*
-+ * Copyright (c) 2022, Arm Limited. All rights reserved.
-+ *
-+ * SPDX-License-Identifier: BSD-3-Clause
-+ *
-+ */
-+
-+#include <string.h>
-+#include <stdbool.h>
-+#include "cmsis.h"
-+#include "uefi_fmp.h"
-+
-+/* The count will increase when partial update is supported.
-+ * At present, only full WIC is considered as updatable image.
-+ */
-+#define NUMBER_OF_FMP_IMAGES 1
-+#define NO_OF_FMP_VARIABLES_PER_IMAGE 6
-+
-+#define UEFI_ARCHITECTURE_64
-+
-+#ifdef UEFI_ARCHITECTURE_64
-+typedef uint64_t uefi_ptr_t;
-+typedef uint64_t efi_uintn_t;
-+#else
-+typedef uint32_t uefi_ptr_t;
-+typedef uint32_t efi_uintn_t;
-+#endif
-+
-+/* Below macro definations and struct declarations taken from UEFI spec 2.9 */
-+
-+/*
-+ * Image Attribute Definitions
-+ */
-+#define IMAGE_ATTRIBUTE_IMAGE_UPDATABLE 0x00000001
-+#define IMAGE_ATTRIBUTE_RESET_REQUIRED 0x00000002
-+#define IMAGE_ATTRIBUTE_AUTHENTICATION_REQUIRED 0x00000004
-+#define IMAGE_ATTRIBUTE_IN_USE 0x00000008
-+#define IMAGE_ATTRIBUTE_UEFI_IMAGE 0x00000010
-+#define IMAGE_ATTRIBUTE_DEPENDENCY 0x00000020
-+
-+typedef uint32_t DescriptorVersion_t;
-+typedef uint32_t DescriptorSize_t;
-+typedef uint8_t DescriptorCount_t;
-+
-+typedef __PACKED_STRUCT {
-+ uint8_t ImageIndex;
-+ struct efi_guid ImageTypeId;
-+ uint64_t ImageId;
-+ uefi_ptr_t PtrImageIdName;
-+ uint32_t Version;
-+ uefi_ptr_t PtrVersionName;
-+ efi_uintn_t Size;
-+ uint64_t AttributesSupported;
-+ uint64_t AttributesSetting;
-+ uint64_t Compatibilities;
-+ /* Introduced with DescriptorVersion 2+ */
-+ uint32_t LowestSupportedImageVersion;
-+ /* Introduced with DescriptorVersion 3+ */
-+ uint32_t LastAttemptVersion;
-+ uint32_t LastAttemptStatus;
-+ uint64_t HardwareInstance;
-+ /* Introduced with DescriptorVersion 4+ */
-+ uefi_ptr_t PtrDependencies;
-+} EFI_FIRMWARE_IMAGE_DESCRIPTOR;
-+
-+typedef __PACKED_STRUCT {
-+ DescriptorVersion_t DescriptorVersion;
-+ DescriptorSize_t DescriptorsSize;
-+ DescriptorCount_t DescriptorCount;
-+ EFI_FIRMWARE_IMAGE_DESCRIPTOR ImageDescriptor;
-+ uint16_t *ImageName;
-+ uint32_t ImageNameSize;
-+ uint16_t *ImageVersionName;
-+ uint32_t ImageVersionNameSize;
-+} EFI_FIRMWARE_MANAGEMENT_PROTOCOL_IMAGE_INFO;
-+
-+
-+static uint16_t corstone_image_name0[] = { 'C', 'O', 'R', 'S', 'T', 'O', 'N', 'E', '1', '0', '0', '0', '_', 'W', 'I', 'C', '\0' };
-+static uint16_t corstone_version_name0[] = { 'C', 'O', 'R', 'S', 'T', 'O', 'N', 'E', '1', '0', '0', '0', '_', 'B', 'E', 'S', 'T', '\0'};
-+
-+static EFI_FIRMWARE_MANAGEMENT_PROTOCOL_IMAGE_INFO fmp_info[NUMBER_OF_FMP_IMAGES];
-+
-+extern struct efi_guid full_capsule_image_guid;
-+
-+static bool is_fmp_info_initialized = false;
-+
-+static void init_fmp_info(void)
-+{
-+ memset(fmp_info, 0,
-+ sizeof(EFI_FIRMWARE_MANAGEMENT_PROTOCOL_IMAGE_INFO) * NUMBER_OF_FMP_IMAGES);
-+
-+ /* Fill information for the WIC.
-+ * Add further details when partial image is supported.
-+ */
-+
-+ fmp_info[0].DescriptorVersion = 4;
-+ fmp_info[0].DescriptorCount = NUMBER_OF_FMP_IMAGES;
-+ fmp_info[0].DescriptorsSize =
-+ sizeof(EFI_FIRMWARE_IMAGE_DESCRIPTOR) +
-+ sizeof(corstone_image_name0) + sizeof(corstone_version_name0);
-+
-+ fmp_info[0].ImageDescriptor.ImageIndex = 1;
-+
-+ memcpy(&fmp_info[0].ImageDescriptor.ImageTypeId, &full_capsule_image_guid,
-+ sizeof(struct efi_guid));
-+
-+ fmp_info[0].ImageDescriptor.ImageId = 1;
-+ fmp_info[0].ImageDescriptor.Version = FWU_IMAGE_INITIAL_VERSION;
-+ fmp_info[0].ImageDescriptor.AttributesSupported = 1;
-+ fmp_info[0].ImageDescriptor.AttributesSetting = (
-+ IMAGE_ATTRIBUTE_IMAGE_UPDATABLE | IMAGE_ATTRIBUTE_RESET_REQUIRED);
-+ fmp_info[0].ImageDescriptor.LowestSupportedImageVersion =
-+ FWU_IMAGE_INITIAL_VERSION;
-+ fmp_info[0].ImageDescriptor.LastAttemptVersion = FWU_IMAGE_INITIAL_VERSION;
-+ fmp_info[0].ImageDescriptor.LastAttemptStatus = LAST_ATTEMPT_STATUS_SUCCESS;
-+
-+ fmp_info[0].ImageName = corstone_image_name0;
-+ fmp_info[0].ImageNameSize = sizeof(corstone_image_name0);
-+ fmp_info[0].ImageVersionName = corstone_version_name0;
-+ fmp_info[0].ImageVersionNameSize = sizeof(corstone_version_name0);
-+
-+ is_fmp_info_initialized = true;
-+
-+ return;
-+}
-+
-+enum fwu_agent_error_t fmp_set_image_info(struct efi_guid *guid,
-+ uint32_t current_version, uint32_t attempt_version,
-+ uint32_t last_attempt_status)
-+{
-+ enum fwu_agent_error_t status = FWU_AGENT_ERROR;
-+
-+ FWU_LOG_MSG("%s:%d Enter\n\r", __func__, __LINE__);
-+
-+ if (is_fmp_info_initialized == false) {
-+ init_fmp_info();
-+ }
-+
-+ for (int i = 0; i < NUMBER_OF_FMP_IMAGES; i++) {
-+ if ((memcmp(guid, &fmp_info[i].ImageDescriptor.ImageTypeId,
-+ sizeof(struct efi_guid))) == 0)
-+ {
-+ FWU_LOG_MSG("FMP image update: image id = %u\n\r",
-+ fmp_info[i].ImageDescriptor.ImageId);
-+ fmp_info[i].ImageDescriptor.Version = current_version;
-+ fmp_info[i].ImageDescriptor.LastAttemptVersion = attempt_version;
-+ fmp_info[i].ImageDescriptor.LastAttemptStatus = last_attempt_status;
-+ FWU_LOG_MSG("FMP image update: status = %u"
-+ "version=%u last_attempt_version=%u.\n\r",
-+ last_attempt_status, current_version,
-+ attempt_version);
-+ status = FWU_AGENT_SUCCESS;
-+ break;
-+ }
-+ }
-+
-+ FWU_LOG_MSG("%s:%d Exit.\n\r", __func__, __LINE__);
-+ return status;
-+}
-+
-+
-+#define NO_OF_FMP_VARIABLES (NUMBER_OF_FMP_IMAGES * NO_OF_FMP_VARIABLES_PER_IMAGE)
-+
-+static enum fwu_agent_error_t pack_image_info(void *buffer, uint32_t size)
-+{
-+ typedef __PACKED_STRUCT {
-+ uint32_t variable_count;
-+ uint32_t variable_size[NO_OF_FMP_VARIABLES];
-+ uint8_t variable[];
-+ } packed_buffer_t;
-+
-+ packed_buffer_t *packed_buffer = buffer;
-+ int runner = 0;
-+ int index = 0;
-+ int current_size = sizeof(packed_buffer_t);
-+ int size_requirement_1 = 0;
-+ int size_requirement_2 = 0;
-+
-+ if (size < current_size) {
-+ FWU_LOG_MSG("%s:%d Buffer too small.\n\r", __func__, __LINE__);
-+ return FWU_AGENT_ERROR;
-+ }
-+
-+ packed_buffer->variable_count = NO_OF_FMP_VARIABLES;
-+
-+ for (int i = 0; i < NUMBER_OF_FMP_IMAGES; i++) {
-+
-+ packed_buffer->variable_size[index++] = sizeof(DescriptorVersion_t);
-+ packed_buffer->variable_size[index++] = sizeof(DescriptorSize_t);
-+ packed_buffer->variable_size[index++] = sizeof(DescriptorCount_t);
-+ packed_buffer->variable_size[index++] = sizeof(EFI_FIRMWARE_IMAGE_DESCRIPTOR);
-+ packed_buffer->variable_size[index++] = fmp_info[i].ImageNameSize;
-+ packed_buffer->variable_size[index++] = fmp_info[i].ImageVersionNameSize;
-+
-+ size_requirement_1 = sizeof(DescriptorVersion_t) + sizeof(DescriptorSize_t) +
-+ sizeof(DescriptorCount_t) + sizeof(EFI_FIRMWARE_IMAGE_DESCRIPTOR);
-+
-+ size_requirement_2 = fmp_info[i].ImageNameSize + fmp_info[i].ImageVersionNameSize;
-+
-+ current_size += size_requirement_1 + size_requirement_2;
-+
-+ if (size < current_size) {
-+ FWU_LOG_MSG("%s:%d Buffer too small.\n\r", __func__, __LINE__);
-+ return FWU_AGENT_ERROR;
-+ }
-+
-+ FWU_LOG_MSG("%s:%d ImageInfo size = %u, ImageName size = %u, "
-+ "ImageVersionName size = %u\n\r", __func__, __LINE__,
-+ sizeof(EFI_FIRMWARE_IMAGE_DESCRIPTOR), fmp_info[i].ImageNameSize,
-+ fmp_info[i].ImageVersionNameSize);
-+
-+ memcpy(&packed_buffer->variable[runner], &fmp_info[i], size_requirement_1);
-+ runner += size_requirement_1;
-+
-+ memcpy(&packed_buffer->variable[runner], fmp_info[i].ImageName,
-+ fmp_info[i].ImageNameSize);
-+ runner += fmp_info[i].ImageNameSize;
-+
-+ memcpy(&packed_buffer->variable[runner], fmp_info[i].ImageVersionName,
-+ fmp_info[i].ImageVersionNameSize);
-+ runner += fmp_info[i].ImageVersionNameSize;
-+
-+ }
-+
-+ return FWU_AGENT_SUCCESS;
-+}
-+
-+enum fwu_agent_error_t fmp_get_image_info(void *buffer, uint32_t size)
-+{
-+ enum fwu_agent_error_t status;
-+
-+ FWU_LOG_MSG("%s:%d Enter\n\r", __func__, __LINE__);
-+
-+ status = pack_image_info(buffer, size);
-+
-+ FWU_LOG_MSG("%s:%d Exit\n\r", __func__, __LINE__);
-+
-+ return status;
-+}
-+
-diff --git a/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.h b/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.h
-new file mode 100644
-index 0000000000..d876bd7cff
---- /dev/null
-+++ b/platform/ext/target/arm/corstone1000/fw_update_agent/uefi_fmp.h
-@@ -0,0 +1,56 @@
-+/*
-+ * Copyright (c) 2022, Arm Limited. All rights reserved.
-+ *
-+ * SPDX-License-Identifier: BSD-3-Clause
-+ *
-+ */
-+
-+#ifndef UEFI_FMP_H
-+#define UEFI_FMP_H
-+
-+
-+#include <stdint.h>
-+#include "fwu_agent.h"
-+#include "../fip_parser/external/uuid.h"
-+
-+/*
-+ * Last Attempt Status Value
-+ */
-+
-+#define LAST_ATTEMPT_STATUS_SUCCESS 0x00000000
-+#define LAST_ATTEMPT_STATUS_ERROR_UNSUCCESSFUL 0x00000001
-+#define LAST_ATTEMPT_STATUS_ERROR_INSUFFICIENT_RESOURCES 0x00000002
-+#define LAST_ATTEMPT_STATUS_ERROR_INCORRECT_VERSION 0x00000003
-+#define LAST_ATTEMPT_STATUS_ERROR_INVALID_FORMAT 0x00000004
-+#define LAST_ATTEMPT_STATUS_ERROR_AUTH_ERROR 0x00000005
-+#define LAST_ATTEMPT_STATUS_ERROR_PWR_EVT_AC 0x00000006
-+#define LAST_ATTEMPT_STATUS_ERROR_PWR_EVT_BATT 0x00000007
-+#define LAST_ATTEMPT_STATUS_ERROR_UNSATISFIED_DEPENDENCIES 0x00000008
-+/* The LastAttemptStatus values of 0x1000 - 0x4000 are reserved for vendor usage. */
-+#define LAST_ATTEMPT_STATUS_ERROR_UNSUCCESSFUL_VENDOR_RANGE_MIN 0x00001000
-+#define LAST_ATTEMPT_STATUS_ERROR_UNSUCCESSFUL_VENDOR_RANGE_MAX 0x00004000
-+
-+
-+
-+/*
-+ * Updates FMP information for the image matched by guid.
-+ *
-+ * guid : guid of the image
-+ * current_version: current versions for the image
-+ * attempt_version: attempted versions for the image
-+ *
-+ */
-+enum fwu_agent_error_t fmp_set_image_info(struct efi_guid *guid,
-+ uint32_t current_version, uint32_t attempt_version,
-+ uint32_t last_attempt_status);
-+
-+/*
-+ * Return fmp image information for all the updable images.
-+ *
-+ * buffer : pointer to the out buffer
-+ * size : size of the buffer
-+ *
-+ */
-+enum fwu_agent_error_t fmp_get_image_info(void *buffer, uint32_t size);
-+
-+#endif /* UEFI_FMP_H */
-diff --git a/platform/ext/target/arm/corstone1000/services/include/corstone1000_ioctl_requests.h b/platform/ext/target/arm/corstone1000/services/include/corstone1000_ioctl_requests.h
-index 8ac67346b6..c5f3537e9d 100644
---- a/platform/ext/target/arm/corstone1000/services/include/corstone1000_ioctl_requests.h
-+++ b/platform/ext/target/arm/corstone1000/services/include/corstone1000_ioctl_requests.h
-@@ -14,19 +14,7 @@
- enum corstone1000_ioctl_id_t {
- IOCTL_CORSTONE1000_FWU_FLASH_IMAGES = 0,
- IOCTL_CORSTONE1000_FWU_HOST_ACK,
-+ IOCTL_CORSTONE1000_FMP_GET_IMAGE_INFO,
- };
-
--
--typedef struct corstone1000_ioctl_in_params {
--
-- uint32_t ioctl_id;
--
--} corstone1000_ioctl_in_params_t;
--
--typedef struct corstone1000_ioctl_out_params {
--
-- int32_t result;
--
--} corstone1000_ioctl_out_params_t;
--
- #endif /* CORSTONE1000_IOCTL_REQUESTS_H */
-diff --git a/platform/ext/target/arm/corstone1000/services/src/tfm_platform_system.c b/platform/ext/target/arm/corstone1000/services/src/tfm_platform_system.c
-index 5b3f3e14a2..41305ed966 100644
---- a/platform/ext/target/arm/corstone1000/services/src/tfm_platform_system.c
-+++ b/platform/ext/target/arm/corstone1000/services/src/tfm_platform_system.c
-@@ -9,6 +9,7 @@
- #include "platform_description.h"
- #include "corstone1000_ioctl_requests.h"
- #include "fwu_agent.h"
-+#include "uefi_fmp.h"
-
- void tfm_platform_hal_system_reset(void)
- {
-@@ -36,6 +37,14 @@ enum tfm_platform_err_t tfm_platform_hal_ioctl(tfm_platform_ioctl_req_t request,
- corstone1000_fwu_host_ack();
- break;
-
-+ case IOCTL_CORSTONE1000_FMP_GET_IMAGE_INFO:
-+ if (out_vec == NULL) {
-+ ret = TFM_PLATFORM_ERR_INVALID_PARAM;
-+ break;
-+ }
-+ fmp_get_image_info(out_vec[0].base, out_vec[0].len);
-+ break;
-+
- default:
- ret = TFM_PLATFORM_ERR_NOT_SUPPORTED;
- break;
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0006-corstone1000-remove-two-partition-configuration.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0006-corstone1000-remove-two-partition-configuration.patch
deleted file mode 100644
index ade2c8c..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0006-corstone1000-remove-two-partition-configuration.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 492c887c8dff97ea1b8a11b4e729620d3744ac38 Mon Sep 17 00:00:00 2001
-From: Satish Kumar <satish.kumar01@arm.com>
-Date: Mon, 30 May 2022 12:38:23 +0100
-Subject: [PATCH 6/6] corstone1000: remove two partition configuration
-
-Previously to run tf-m test, a larger partition was created
-which allowed all default test binaries to be included.
-The patch revert the change because any partition might
-not be enough to hold all test binaries in the future.
-So its better to run few test at a time instead of creating
-a larger partition.
-
-Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
-Change-Id: I223fe45f2de014dbcadc6ac12c321c524701116a
-Upstream-Status: Accepted [TF-Mv1.7.0]
----
- platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt | 1 -
- platform/ext/target/arm/corstone1000/partition/flash_layout.h | 4 ----
- 2 files changed, 5 deletions(-)
-
-diff --git a/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt b/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-index d39c5ae91d..f1ae1ebd47 100644
---- a/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-+++ b/platform/ext/target/arm/corstone1000/bl1/CMakeLists.txt
-@@ -291,7 +291,6 @@ target_compile_definitions(signing_layout_for_bl2
- PRIVATE
- MCUBOOT_IMAGE_NUMBER=${BL1_IMAGE_NUMBER}
- BL1
-- $<$<BOOL:${TFM_S_REG_TEST}>:TFM_S_REG_TEST>
- )
-
- target_include_directories(signing_layout_for_bl2
-diff --git a/platform/ext/target/arm/corstone1000/partition/flash_layout.h b/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-index b0319bb319..50a0a11fc8 100644
---- a/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-+++ b/platform/ext/target/arm/corstone1000/partition/flash_layout.h
-@@ -119,11 +119,7 @@
- *
- */
- #define SE_BL2_PARTITION_SIZE (0x19000) /* 100 KB */
--#ifdef TFM_S_REG_TEST
--#define TFM_PARTITION_SIZE (0x61C00) /* 391 KB */
--#else
- #define TFM_PARTITION_SIZE (0x5E000) /* 376 KB */
--#endif
- #define FIP_PARTITION_SIZE (0x200000) /* 2 MB */
- #define KERNEL_PARTITION_SIZE (0xC00000) /* 12 MB */
-
---
-2.25.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0007-corstone1000-adjust-PS-asset-configuration.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0007-corstone1000-adjust-PS-asset-configuration.patch
deleted file mode 100644
index 7fae7b6..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/corstone1000/0007-corstone1000-adjust-PS-asset-configuration.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 5be42e1c05205209fc3988f0df30a02da95c2448 Mon Sep 17 00:00:00 2001
-From: Rui Miguel Silva <rui.silva@linaro.org>
-Date: Wed, 2 Nov 2022 00:12:35 +0000
-Subject: [PATCH] corstone1000: adjust PS asset configuration
-
-Adjust protected storage asset configuration to be more inline
-with the one in trusted service side, that would make thinks
-work when testing and using more than the default variables.
-
-Upstream-Status: Pending
-Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
----
- platform/ext/target/arm/corstone1000/config.cmake | 1 ++
- 1 file changed, 1 insertions(+)
-
-diff --git a/platform/ext/target/arm/corstone1000/config.cmake b/platform/ext/target/arm/corstone1000/config.cmake
-index ab0fe17ba886..c2b4b646e6b0 100644
---- a/platform/ext/target/arm/corstone1000/config.cmake
-+++ b/platform/ext/target/arm/corstone1000/config.cmake
-@@ -56,3 +56,4 @@ set(PS_ENCRYPTION OFF CACHE BOOL "Enable
- set(PS_ROLLBACK_PROTECTION OFF CACHE BOOL "Enable rollback protection for Protected Storage partition")
-
- set(PLATFORM_SERVICE_OUTPUT_BUFFER_SIZE 256 CACHE STRING "Size of output buffer in platform service.")
-+set(PS_NUM_ASSETS "40" CACHE STRING "The maximum number of assets to be stored in the Protected Storage area")
---
-2.38.1
-
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-1.7.0-corstone1000.inc
similarity index 65%
rename from meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc
rename to meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-1.7.0-corstone1000.inc
index 58ad103..861dcff 100644
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc
+++ b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-1.7.0-corstone1000.inc
@@ -6,6 +6,8 @@
TFM_DEBUG = "1"
+
+
## Default is the MPS3 board
TFM_PLATFORM_IS_FVP ?= "FALSE"
EXTRA_OECMAKE += "-DPLATFORM_IS_FVP=${TFM_PLATFORM_IS_FVP}"
@@ -25,17 +27,11 @@
SRCREV_openamp = "347397decaa43372fc4d00f965640ebde042966d"
EXTRA_OECMAKE += "-DLIBOPENAMP_SRC_PATH=${S}/../openamp -DLIBOPENAMP_BIN_PATH=${B}/libopenamp-build"
-# Apply the necessary changes for supporting FMP image info
-FILESEXTRAPATHS:prepend := "${THISDIR}/corstone1000:"
-SRC_URI:append:corstone1000 = " \
- file://0001-corstone1000-platform-secure-test-framework.patch \
- file://0002-corstone1000-make-external-system-support-optional.patch \
- file://0003-corstone1000-enable-secure-enclave-run-without-host-.patch \
- file://0004-Platform-Partition-Allow-configuration-of-input-and-.patch \
- file://0005-corstone1000-support-for-UEFI-FMP-image-Information.patch \
- file://0006-corstone1000-remove-two-partition-configuration.patch \
- file://0007-corstone1000-adjust-PS-asset-configuration.patch \
- "
+
+# Uncomment to apply patches
+# FILESEXTRAPATHS:prepend := "${THISDIR}/corstone1000:"
+# SRC_URI:append:corstone1000 = " \
+# "
do_install() {
install -D -p -m 0644 ${B}/install/outputs/tfm_s_signed.bin ${D}/firmware/tfm_s_signed.bin
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.%.bbappend b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.%.bbappend
deleted file mode 100644
index da70bc7..0000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.%.bbappend
+++ /dev/null
@@ -1,6 +0,0 @@
-# Machine specific configurations
-
-MACHINE_TFM_REQUIRE ?= ""
-MACHINE_TFM_REQUIRE:corstone1000 = "trusted-firmware-m-corstone1000.inc"
-
-require ${MACHINE_TFM_REQUIRE}
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.%.bbappend b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.%.bbappend
new file mode 100644
index 0000000..ec0e483
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.%.bbappend
@@ -0,0 +1,6 @@
+# Machine specific configurations
+
+MACHINE_TFM_REQUIRE ?= ""
+MACHINE_TFM_REQUIRE:corstone1000 = "trusted-firmware-m-1.7.0-corstone1000.inc"
+
+require ${MACHINE_TFM_REQUIRE}
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/uefi/edk2-firmware-juno.inc b/meta-arm/meta-arm-bsp/recipes-bsp/uefi/edk2-firmware-juno.inc
index aac0d1c..44613f1 100644
--- a/meta-arm/meta-arm-bsp/recipes-bsp/uefi/edk2-firmware-juno.inc
+++ b/meta-arm/meta-arm-bsp/recipes-bsp/uefi/edk2-firmware-juno.inc
@@ -3,7 +3,3 @@
EDK2_BIN_NAME = "BL33_AP_UEFI.fd"
COMPATIBLE_MACHINE = "juno"
-
-# As of 2022-06-14 with 2022.05, clang builds fail:
-# "The required fv image size 0x104048 exceeds the set fv image size 0xf9000"
-TOOLCHAIN = "gcc"
diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0006-plat-n1sdp-add-external-device-tree-base-and-size.patch b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0006-plat-n1sdp-add-external-device-tree-base-and-size.patch
new file mode 100644
index 0000000..74c94e0
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0006-plat-n1sdp-add-external-device-tree-base-and-size.patch
@@ -0,0 +1,44 @@
+Upstream-Status: Pending [Not submitted to upstream yet]
+Signed-off-by: Emekcan Aras <emekcan.aras@arm.com>
+
+From 1a9aeedda58228893add545e49d2d6cd4c316b4f Mon Sep 17 00:00:00 2001
+From: Emekcan <emekcan.aras@arm.com>
+Date: Tue, 13 Dec 2022 13:45:06 +0000
+Subject: [PATCH] plat-n1sdp: add external device tree base and size
+
+Adds external device tree address and size. It also
+register this physical memory so optee can read the device tree.
+---
+ core/arch/arm/plat-n1sdp/main.c | 1 +
+ core/arch/arm/plat-n1sdp/platform_config.h | 3 +++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/core/arch/arm/plat-n1sdp/main.c b/core/arch/arm/plat-n1sdp/main.c
+index bb951ce6b..ab76f60c6 100644
+--- a/core/arch/arm/plat-n1sdp/main.c
++++ b/core/arch/arm/plat-n1sdp/main.c
+@@ -31,6 +31,7 @@ static struct gic_data gic_data __nex_bss;
+ static struct pl011_data console_data __nex_bss;
+
+ register_phys_mem_pgdir(MEM_AREA_IO_SEC, CONSOLE_UART_BASE, PL011_REG_SIZE);
++register_phys_mem_pgdir(MEM_AREA_EXT_DT, EXT_DT_BASE, EXT_DT_SIZE);
+
+ register_ddr(DRAM0_BASE, DRAM0_SIZE);
+ register_ddr(DRAM1_BASE, DRAM1_SIZE);
+diff --git a/core/arch/arm/plat-n1sdp/platform_config.h b/core/arch/arm/plat-n1sdp/platform_config.h
+index bf0a3c834..8741a2503 100644
+--- a/core/arch/arm/plat-n1sdp/platform_config.h
++++ b/core/arch/arm/plat-n1sdp/platform_config.h
+@@ -42,6 +42,9 @@
+ #define GICC_BASE 0x2C000000
+ #define GICR_BASE 0x300C0000
+
++#define EXT_DT_BASE 0x04001600
++#define EXT_DT_SIZE 0x200
++
+ #ifndef UART_BAUDRATE
+ #define UART_BAUDRATE 115200
+ #endif
+--
+2.17.1
+
diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os-n1sdp.inc b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os-n1sdp.inc
index 2719e4c..a40c93d 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os-n1sdp.inc
+++ b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os-n1sdp.inc
@@ -11,6 +11,7 @@
file://0003-HACK-disable-instruction-cache-and-data-cache.patch \
file://0004-Handle-logging-syscall.patch \
file://0005-plat-n1sdp-register-DRAM1-to-optee-os.patch \
+ file://0006-plat-n1sdp-add-external-device-tree-base-and-size.patch \
"
EXTRA_OEMAKE += " CFG_TEE_CORE_LOG_LEVEL=4"
@@ -20,3 +21,9 @@
EXTRA_OEMAKE += " CFG_CORE_SEL1_SPMC=y CFG_CORE_FFA=y"
EXTRA_OEMAKE += " CFG_WITH_SP=y"
+
+EXTRA_OEMAKE += " CFG_DT=y"
+
+EXTRA_OEMAKE += " CFG_SECURE_PARTITION=y"
+
+EXTRA_OEMAKE += " CFG_MAP_EXT_DT_SECURE=y"
diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.19.0.bbappend b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.19.0.bbappend
new file mode 100644
index 0000000..f80e09f
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.19.0.bbappend
@@ -0,0 +1,6 @@
+# Machine specific configurations
+
+MACHINE_OPTEE_OS_REQUIRE ?= ""
+MACHINE_OPTEE_OS_REQUIRE:n1sdp = "optee-os-n1sdp.inc"
+
+require ${MACHINE_OPTEE_OS_REQUIRE}
diff --git a/meta-arm/meta-arm-bsp/recipes-security/packagegroups/packagegroup-ts-tests.bbappend b/meta-arm/meta-arm-bsp/recipes-security/packagegroups/packagegroup-ts-tests.bbappend
new file mode 100644
index 0000000..20612cb
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/packagegroups/packagegroup-ts-tests.bbappend
@@ -0,0 +1,2 @@
+COMPATIBLE_MACHINE:corstone1000 = "corstone1000"
+COMPATIBLE_MACHINE:n1sdp = "n1sdp"
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/corstone1000/0023-Use-the-stateless-platform-service.patch b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/corstone1000/0023-Use-the-stateless-platform-service.patch
new file mode 100644
index 0000000..824196c
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/corstone1000/0023-Use-the-stateless-platform-service.patch
@@ -0,0 +1,140 @@
+From 956b8a8e1dd5702b9c1657f4ec27a7aeddb0758e Mon Sep 17 00:00:00 2001
+From: Mohamed Omar Asaker <mohamed.omarasaker@arm.com>
+Date: Mon, 21 Nov 2022 00:08:20 +0000
+Subject: [PATCH] Use the stateless platform service calls
+
+Calls to psa_connect is not needed and psa_call can be called
+directly with a pre defined handle.
+
+Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
+Signed-off-by: Mohamed Omar Asaker <mohamed.omarasaker@arm.com>
+Upstream-Status: Inappropriate [Design is to revisted]
+
+---
+ .../provider/capsule_update_provider.c | 24 ++++---------------
+ .../provider/corstone1000_fmp_service.c | 10 ++++----
+ .../provider/corstone1000_fmp_service.h | 3 +--
+ components/service/common/include/psa/sid.h | 6 +++++
+ 4 files changed, 16 insertions(+), 27 deletions(-)
+
+diff --git a/components/service/capsule_update/provider/capsule_update_provider.c b/components/service/capsule_update/provider/capsule_update_provider.c
+index 991a2235..6809249f 100644
+--- a/components/service/capsule_update/provider/capsule_update_provider.c
++++ b/components/service/capsule_update/provider/capsule_update_provider.c
+@@ -61,7 +61,6 @@ void capsule_update_provider_deinit(struct capsule_update_provider *context)
+ static rpc_status_t event_handler(uint32_t opcode, struct rpc_caller *caller)
+ {
+ uint32_t ioctl_id;
+- psa_handle_t handle;
+ rpc_status_t rpc_status = TS_RPC_CALL_ACCEPTED;
+
+ struct psa_invec in_vec[] = {
+@@ -79,31 +78,18 @@ static rpc_status_t event_handler(uint32_t opcode, struct rpc_caller *caller)
+ case CAPSULE_UPDATE_REQUEST:
+ /* Openamp call with IOCTL for firmware update*/
+ ioctl_id = IOCTL_CORSTONE1000_FWU_FLASH_IMAGES;
+- handle = psa_connect(caller, TFM_SP_PLATFORM_IOCTL_SID,
+- TFM_SP_PLATFORM_IOCTL_VERSION);
+- if (handle <= 0) {
+- EMSG("%s Invalid handle", __func__);
+- rpc_status = TS_RPC_ERROR_INVALID_PARAMETER;
+- return rpc_status;
+- }
+- psa_call(caller,handle, PSA_IPC_CALL,
++ psa_call(caller,TFM_PLATFORM_SERVICE_HANDLE, TFM_PLATFORM_API_ID_IOCTL,
+ in_vec,IOVEC_LEN(in_vec), NULL, 0);
+- set_fmp_image_info(caller, handle);
++ set_fmp_image_info(caller);
+ break;
+
+ case KERNEL_STARTED_EVENT:
+ ioctl_id = IOCTL_CORSTONE1000_FWU_HOST_ACK;
+ /*openamp call with IOCTL for kernel start*/
+- handle = psa_connect(caller, TFM_SP_PLATFORM_IOCTL_SID,
+- TFM_SP_PLATFORM_IOCTL_VERSION);
+- if (handle <= 0) {
+- EMSG("%s Invalid handle", __func__);
+- rpc_status = TS_RPC_ERROR_INVALID_PARAMETER;
+- return rpc_status;
+- }
+- psa_call(caller,handle, PSA_IPC_CALL,
++
++ psa_call(caller,TFM_PLATFORM_SERVICE_HANDLE, TFM_PLATFORM_API_ID_IOCTL,
+ in_vec,IOVEC_LEN(in_vec), NULL, 0);
+- set_fmp_image_info(caller, handle);
++ set_fmp_image_info(caller);
+ break;
+ default:
+ EMSG("%s unsupported opcode", __func__);
+diff --git a/components/service/capsule_update/provider/corstone1000_fmp_service.c b/components/service/capsule_update/provider/corstone1000_fmp_service.c
+index 6a7a47a7..d811af9f 100644
+--- a/components/service/capsule_update/provider/corstone1000_fmp_service.c
++++ b/components/service/capsule_update/provider/corstone1000_fmp_service.c
+@@ -238,8 +238,7 @@ static psa_status_t unpack_image_info(void *buffer, uint32_t size)
+ return PSA_SUCCESS;
+ }
+
+-static psa_status_t get_image_info(struct rpc_caller *caller,
+- psa_handle_t platform_service_handle)
++static psa_status_t get_image_info(struct rpc_caller *caller)
+ {
+ psa_status_t status;
+ psa_handle_t handle;
+@@ -255,7 +254,7 @@ static psa_status_t get_image_info(struct rpc_caller *caller,
+
+ memset(image_info_buffer, 0, IMAGE_INFO_BUFFER_SIZE);
+
+- psa_call(caller, platform_service_handle, PSA_IPC_CALL,
++ psa_call(caller, TFM_PLATFORM_SERVICE_HANDLE, TFM_PLATFORM_API_ID_IOCTL,
+ in_vec, IOVEC_LEN(in_vec), out_vec, IOVEC_LEN(out_vec));
+
+ status = unpack_image_info(image_info_buffer, IMAGE_INFO_BUFFER_SIZE);
+@@ -288,12 +287,11 @@ static psa_status_t set_image_info(struct rpc_caller *caller)
+ return PSA_SUCCESS;
+ }
+
+-void set_fmp_image_info(struct rpc_caller *caller,
+- psa_handle_t platform_service_handle)
++void set_fmp_image_info(struct rpc_caller *caller)
+ {
+ psa_status_t status;
+
+- status = get_image_info(caller, platform_service_handle);
++ status = get_image_info(caller);
+ if (status != PSA_SUCCESS) {
+ return;
+ }
+diff --git a/components/service/capsule_update/provider/corstone1000_fmp_service.h b/components/service/capsule_update/provider/corstone1000_fmp_service.h
+index 95fba2a0..963223e8 100644
+--- a/components/service/capsule_update/provider/corstone1000_fmp_service.h
++++ b/components/service/capsule_update/provider/corstone1000_fmp_service.h
+@@ -16,8 +16,7 @@ extern "C" {
+
+ void provision_fmp_variables_metadata(struct rpc_caller *caller);
+
+-void set_fmp_image_info(struct rpc_caller *caller,
+- psa_handle_t platform_service_handle);
++void set_fmp_image_info(struct rpc_caller *caller);
+
+ #ifdef __cplusplus
+ } /* extern "C" */
+diff --git a/components/service/common/include/psa/sid.h b/components/service/common/include/psa/sid.h
+index 7a29cc25..8103a9af 100644
+--- a/components/service/common/include/psa/sid.h
++++ b/components/service/common/include/psa/sid.h
+@@ -37,6 +37,12 @@ extern "C" {
+ #define TFM_CRYPTO_VERSION (1U)
+ #define TFM_CRYPTO_HANDLE (0x40000100U)
+
++
++/******** TFM_PLATFORM_SERVICE *******/
++#define TFM_PLATFORM_API_ID_IOCTL (1013)
++#define TFM_PLATFORM_SERVICE_HANDLE (0x40000105U)
++
++
+ /**
+ * \brief Define a progressive numerical value for each SID which can be used
+ * when dispatching the requests to the service
+--
+2.25.1
+
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_%.bbappend
new file mode 100644
index 0000000..99c03f6
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_%.bbappend
@@ -0,0 +1,5 @@
+require ts-arm-platforms.inc
+
+EXTRA_OECMAKE:append:corstone1000 = "-DMM_COMM_BUFFER_ADDRESS=0x02000000 \
+ -DMM_COMM_BUFFER_PAGE_COUNT=1 \
+ "
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_git.bbappend
deleted file mode 100644
index a885d38..0000000
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/libts_git.bbappend
+++ /dev/null
@@ -1,10 +0,0 @@
-MACHINE_TS_REQUIRE ?= ""
-MACHINE_TS_REQUIRE:corstone1000 = "ts-corstone1000.inc"
-
-require ${MACHINE_TS_REQUIRE}
-
-
-EXTRA_OECMAKE:append:corstone1000 = "-DMM_COMM_BUFFER_ADDRESS=0x02000000 \
- -DMM_COMM_BUFFER_PAGE_COUNT=1 \
- "
-
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-corstone1000.inc b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-arm-platforms.inc
similarity index 89%
rename from meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-corstone1000.inc
rename to meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-arm-platforms.inc
index e97fb59..5900955 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-corstone1000.inc
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-arm-platforms.inc
@@ -1,5 +1,6 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/corstone1000:"
+FILESEXTRAPATHS:prepend:corstone1000 := "${THISDIR}/corstone1000:"
+COMPATIBLE_MACHINE:corstone1000 = "corstone1000"
SRC_URI:append:corstone1000 = " \
file://0001-Add-openamp-to-SE-proxy-deployment.patch;patchdir=../trusted-services \
file://0002-Implement-mhu-driver-and-the-OpenAmp-conversion-laye.patch;patchdir=../trusted-services \
@@ -23,4 +24,7 @@
file://0020-FMP-Support-in-Corstone1000.patch;patchdir=../trusted-services \
file://0021-smm_gateway-add-checks-for-null-attributes.patch;patchdir=../trusted-services \
file://0022-GetNextVariableName-Fix.patch;patchdir=../trusted-services \
+ file://0023-Use-the-stateless-platform-service.patch;patchdir=../trusted-services \
"
+
+COMPATIBLE_MACHINE:n1sdp = "n1sdp"
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-demo_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-demo_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-demo_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-newlib_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-newlib_%.bbappend
index 845f883..7417d9b 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-newlib_%.bbappend
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-newlib_%.bbappend
@@ -1,6 +1,8 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/corstone1000/${PN}:"
+FILESEXTRAPATHS:prepend:corstone1000 := "${THISDIR}/corstone1000/${PN}:"
+COMPATIBLE_MACHINE:corstone1000 = "corstone1000"
SRC_URI:append:corstone1000 = " \
file://0001-newlib-memcpy-remove-optimized-version.patch;patchdir=../newlib \
"
+COMPATIBLE_MACHINE:n1sdp = "n1sdp"
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-api-test.inc b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-api-test.inc
index 50ff960..a1f43d4 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-api-test.inc
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-api-test.inc
@@ -1,6 +1,6 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/corstone1000/psa-apitest:"
+FILESEXTRAPATHS:prepend:corstone1000 := "${THISDIR}/corstone1000/psa-apitest:"
-include ts-corstone1000.inc
+include ts-arm-platforms.inc
SRC_URI:append:corstone1000 = " \
file://0001-corstone1000-port-crypto-config.patch;patchdir=../psatest \
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-crypto-api-test_%.bbappend
similarity index 100%
copy from meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend
copy to meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-crypto-api-test_%.bbappend
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-crypto-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-crypto-api-test_git.bbappend
deleted file mode 100644
index ea49213..0000000
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-crypto-api-test_git.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-require ts-psa-api-test.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_%.bbappend
similarity index 100%
rename from meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend
rename to meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_%.bbappend
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-its-api-test_%.bbappend
similarity index 100%
copy from meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend
copy to meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-its-api-test_%.bbappend
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-its-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-its-api-test_git.bbappend
deleted file mode 100644
index ea49213..0000000
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-its-api-test_git.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-require ts-psa-api-test.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-ps-api-test_%.bbappend
similarity index 100%
copy from meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-iat-api-test_git.bbappend
copy to meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-ps-api-test_%.bbappend
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-ps-api-test_git.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-ps-api-test_git.bbappend
deleted file mode 100644
index ea49213..0000000
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-psa-ps-api-test_git.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-require ts-psa-api-test.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-service-test_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-service-test_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-service-test_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-attestation_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-attestation_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-attestation_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-crypto_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-crypto_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-crypto_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-its_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-its_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-its_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-se-proxy_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-se-proxy_%.bbappend
index f39d239..eba1553 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-se-proxy_%.bbappend
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-se-proxy_%.bbappend
@@ -1,9 +1,5 @@
-MACHINE_TS_REQUIRE ?= ""
-MACHINE_TS_REQUIRE:corstone1000 = "ts-corstone1000.inc"
-
-require ${MACHINE_TS_REQUIRE}
+require ts-arm-platforms.inc
EXTRA_OECMAKE:append:corstone1000 = " -DMM_COMM_BUFFER_ADDRESS="0x00000000 0x02000000" \
-DMM_COMM_BUFFER_PAGE_COUNT="1" \
"
-
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-smm-gateway_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-smm-gateway_%.bbappend
index f39d239..eba1553 100644
--- a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-smm-gateway_%.bbappend
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-smm-gateway_%.bbappend
@@ -1,9 +1,5 @@
-MACHINE_TS_REQUIRE ?= ""
-MACHINE_TS_REQUIRE:corstone1000 = "ts-corstone1000.inc"
-
-require ${MACHINE_TS_REQUIRE}
+require ts-arm-platforms.inc
EXTRA_OECMAKE:append:corstone1000 = " -DMM_COMM_BUFFER_ADDRESS="0x00000000 0x02000000" \
-DMM_COMM_BUFFER_PAGE_COUNT="1" \
"
-
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-storage_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-storage_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-sp-storage_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-uefi-test_%.bbappend b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-uefi-test_%.bbappend
new file mode 100644
index 0000000..5c9ef21
--- /dev/null
+++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/ts-uefi-test_%.bbappend
@@ -0,0 +1 @@
+require ts-arm-platforms.inc
diff --git a/meta-arm/meta-arm-toolchain/conf/distro/include/external-arm-toolchain-versions.inc b/meta-arm/meta-arm-toolchain/conf/distro/include/external-arm-toolchain-versions.inc
index 92fb038..675457d 100644
--- a/meta-arm/meta-arm-toolchain/conf/distro/include/external-arm-toolchain-versions.inc
+++ b/meta-arm/meta-arm-toolchain/conf/distro/include/external-arm-toolchain-versions.inc
@@ -123,7 +123,6 @@
return
d = e.data
ld = d.createCopy()
- ld.finalize()
d.setVar('EAT_VER_MAIN', eat_get_main_version(ld))
d.setVar('EAT_VER_GCC', eat_get_gcc_version(ld))
diff --git a/meta-arm/meta-arm-toolchain/conf/distro/include/tcmode-external-arm.inc b/meta-arm/meta-arm-toolchain/conf/distro/include/tcmode-external-arm.inc
index 178fb71..6d21891 100644
--- a/meta-arm/meta-arm-toolchain/conf/distro/include/tcmode-external-arm.inc
+++ b/meta-arm/meta-arm-toolchain/conf/distro/include/tcmode-external-arm.inc
@@ -74,7 +74,6 @@
d = e.data
l = d.createCopy()
- l.finalize()
oe_import(l)
external_toolchain = l.getVar('EXTERNAL_TOOLCHAIN', True)
@@ -99,7 +98,6 @@
from glob import glob
d = d.createCopy()
- d.finalize()
pattern = bb.data.expand('${EXTERNAL_TOOLCHAIN}/bin/${TARGET_PREFIX}*', d)
files = glob(pattern)
diff --git a/meta-arm/meta-arm/classes/apply_local_src_patches.bbclass b/meta-arm/meta-arm/classes/apply_local_src_patches.bbclass
new file mode 100644
index 0000000..e193935
--- /dev/null
+++ b/meta-arm/meta-arm/classes/apply_local_src_patches.bbclass
@@ -0,0 +1,48 @@
+# This class is to be inherited by recipes where there are patches located inside
+# the fetched source code which need to be applied.
+
+# The following variables need to be set:
+# LOCAL_SRC_PATCHES_INPUT_DIR is the directory from where the patches are located
+# LOCAL_SRC_PATCHES_DEST_DIR is the directory where the patches will be applied
+
+do_patch[depends] += "quilt-native:do_populate_sysroot"
+
+LOCAL_SRC_PATCHES_INPUT_DIR ??= ""
+LOCAL_SRC_PATCHES_DEST_DIR ??= "${LOCAL_SRC_PATCHES_INPUT_DIR}"
+
+python() {
+ if not d.getVar('LOCAL_SRC_PATCHES_INPUT_DIR'):
+ bb.warn("LOCAL_SRC_PATCHES_INPUT_DIR variable needs to be set.")
+}
+
+apply_local_src_patches() {
+
+ input_dir="${LOCAL_SRC_PATCHES_INPUT_DIR}"
+ dest_dir="${LOCAL_SRC_PATCHES_DEST_DIR}"
+
+ if [ ! -d "$input_dir" ] ; then
+ bbfatal "LOCAL_SRC_PATCHES_INPUT_DIR=$input_dir not found."
+ fi
+
+ if [ ! -d "$dest_dir" ] ; then
+ bbfatal "LOCAL_SRC_PATCHES_DEST_DIR=$dest_dir not found."
+ fi
+
+ cd $dest_dir
+ export QUILT_PATCHES=./patches-extra
+ mkdir -p patches-extra
+
+ for patch in $(find $input_dir -type f -name *.patch -or -name *.diff | sort)
+ do
+ patch_basename=`basename $patch`
+ if ! quilt applied $patch_basename >/dev/null ; then
+ bbdebug 1 "Applying $patch_basename in $dest_dir."
+ echo $patch_basename >> patches-extra/series
+ cp $patch patches-extra
+ quilt push $patch_basename
+ else
+ bbdebug 1 "$patch_basename already applied."
+ fi
+ done
+}
+do_patch[postfuncs] += "apply_local_src_patches"
diff --git a/meta-arm/meta-arm/classes/fvpboot.bbclass b/meta-arm/meta-arm/classes/fvpboot.bbclass
index 78dabd7..508deb2 100644
--- a/meta-arm/meta-arm/classes/fvpboot.bbclass
+++ b/meta-arm/meta-arm/classes/fvpboot.bbclass
@@ -24,7 +24,9 @@
# Arbitrary extra arguments
FVP_EXTRA_ARGS ?= ""
# Bitbake variables to pass to the FVP environment
-FVP_ENV_PASSTHROUGH ?= ""
+FVP_ENV_PASSTHROUGH ?= "FASTSIM_DISABLE_TA"
+# Disable timing annotation by default
+FASTSIM_DISABLE_TA ?= "1"
EXTRA_IMAGEDEPENDS += "${FVP_PROVIDER}"
diff --git a/meta-arm/meta-arm/conf/machine/qemuarm-secureboot.conf b/meta-arm/meta-arm/conf/machine/qemuarm-secureboot.conf
index f08b84f..db02dc6 100644
--- a/meta-arm/meta-arm/conf/machine/qemuarm-secureboot.conf
+++ b/meta-arm/meta-arm/conf/machine/qemuarm-secureboot.conf
@@ -21,3 +21,6 @@
IMAGE_BOOT_FILES = "${KERNEL_IMAGETYPE}"
MACHINE_FEATURES += "optee-ftpm"
+
+PREFERRED_VERSION_optee-os ?= "3.18.%"
+
diff --git a/meta-arm/meta-arm/conf/machine/qemuarm64-secureboot.conf b/meta-arm/meta-arm/conf/machine/qemuarm64-secureboot.conf
index 55c4cab..7277817 100644
--- a/meta-arm/meta-arm/conf/machine/qemuarm64-secureboot.conf
+++ b/meta-arm/meta-arm/conf/machine/qemuarm64-secureboot.conf
@@ -23,3 +23,6 @@
IMAGE_BOOT_FILES = "${KERNEL_IMAGETYPE}"
MACHINE_FEATURES += "optee-ftpm"
+
+PREFERRED_VERSION_optee-os ?= "3.18.%"
+
diff --git a/meta-arm/meta-arm/lib/fvp/runner.py b/meta-arm/meta-arm/lib/fvp/runner.py
index f55c579..4fd624b 100644
--- a/meta-arm/meta-arm/lib/fvp/runner.py
+++ b/meta-arm/meta-arm/lib/fvp/runner.py
@@ -70,6 +70,13 @@
pass
+# This function is backported from Python 3.8. Remove it and replace call sites
+# with shlex.join once OE-core support for earlier Python versions is dropped.
+def shlex_join(split_command):
+ """Return a shell-escaped string from *split_command*."""
+ return ' '.join(shlex.quote(arg) for arg in split_command)
+
+
class FVPRunner:
def __init__(self, logger):
self._logger = logger
@@ -88,7 +95,7 @@
if name in os.environ:
env[name] = os.environ[name]
- self._logger.debug(f"Constructed FVP call: {shlex.join(cli)}")
+ self._logger.debug(f"Constructed FVP call: {shlex_join(cli)}")
self._fvp_process = subprocess.Popen(
cli,
stdin=subprocess.DEVNULL, stdout=stdout, stderr=subprocess.STDOUT,
diff --git a/meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.0.bb b/meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.0.bb
similarity index 86%
rename from meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.0.bb
rename to meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.0.bb
index c10efd5..3b4469d 100644
--- a/meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.6.0.bb
+++ b/meta-arm/meta-arm/recipes-bsp/trusted-firmware-m/trusted-firmware-m_1.7.0.bb
@@ -8,7 +8,7 @@
HOMEPAGE = "https://git.trustedfirmware.org/trusted-firmware-m.git"
PROVIDES = "virtual/trusted-firmware-m"
-LICENSE = "BSD-3-Clause & Apache-2.0"
+LICENSE = "BSD-2-Clause & BSD-3-Clause & Apache-2.0"
LIC_FILES_CHKSUM = "file://license.rst;md5=07f368487da347f3c7bd0fc3085f3afa \
file://../tf-m-tests/license.rst;md5=02d06ffb8d9f099ff4961c0cb0183a18 \
@@ -19,21 +19,25 @@
git://git.trustedfirmware.org/TF-M/tf-m-tests.git;protocol=https;branch=${SRCBRANCH_tfm-tests};name=tfm-tests;destsuffix=git/tf-m-tests \
git://github.com/ARMmbed/mbedtls.git;protocol=https;branch=${SRCBRANCH_mbedtls};name=mbedtls;destsuffix=git/mbedtls \
git://github.com/mcu-tools/mcuboot.git;protocol=https;branch=${SRCBRANCH_mcuboot};name=mcuboot;destsuffix=git/mcuboot \
+ git://github.com/laurencelundblade/QCBOR.git;protocol=https;branch=${SRCBRANCH_qcbor};name=qcbor;destsuffix=git/qcbor \
"
# The required dependencies are documented in tf-m/config/config_default.cmake
-# TF-Mv1.6.0
-SRCBRANCH_tfm ?= "release/1.6.x"
-SRCREV_tfm = "7387d88158701a3c51ad51c90a05326ee12847a8"
-# mbedtls-3.1.0
+# TF-Mv1.7.0
+SRCBRANCH_tfm ?= "release/1.7.x"
+SRCREV_tfm = "b725a1346cdb9ec75b1adcdc4c84705881e8fd4e"
+# mbedtls-3.2.0
SRCBRANCH_mbedtls ?= "master"
-SRCREV_mbedtls = "d65aeb37349ad1a50e0f6c9b694d4b5290d60e49"
+SRCREV_mbedtls = "869298bffeea13b205343361b7a7daf2b210e33d"
# TF-Mv1.6.0
-SRCBRANCH_tfm-tests ?= "release/1.6.x"
-SRCREV_tfm-tests = "723905d46019596f3f2df66d79b5d6bff6f3f213"
+SRCBRANCH_tfm-tests ?= "release/1.7.x"
+SRCREV_tfm-tests = "4972e8df3fcbd386a5b0c18613d8a803f4dda082"
# v1.9.0
SRCBRANCH_mcuboot ?= "main"
SRCREV_mcuboot = "c657cbea75f2bb1faf1fceacf972a0537a8d26dd"
+# qcbor
+SRCBRANCH_qcbor ?= "master"
+SRCREV_qcbor = "b0e7033268e88c9f27146fa9a1415ef4c19ebaff"
UPSTREAM_CHECK_GITTAGREGEX = "^TF-Mv(?P<pver>\d+(\.\d+)+)$"
@@ -87,12 +91,12 @@
EXTRA_OECMAKE += "-DTFM_PLATFORM=${TFM_PLATFORM}"
# Handle TFM_DEBUG parameter
-EXTRA_OECMAKE += "${@bb.utils.contains('TFM_DEBUG', '1', '-DCMAKE_BUILD_TYPE=Debug', '', d)}"
+EXTRA_OECMAKE += "${@bb.utils.contains('TFM_DEBUG', '1', '-DCMAKE_BUILD_TYPE=Debug', '-DCMAKE_BUILD_TYPE=Release', d)}"
# Verbose builds
EXTRA_OECMAKE += "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON"
-EXTRA_OECMAKE += "-DMBEDCRYPTO_PATH=${S}/../mbedtls -DTFM_TEST_REPO_PATH=${S}/../tf-m-tests -DMCUBOOT_PATH=${S}/../mcuboot"
+EXTRA_OECMAKE += "-DMBEDCRYPTO_PATH=${S}/../mbedtls -DTFM_TEST_REPO_PATH=${S}/../tf-m-tests -DMCUBOOT_PATH=${S}/../mcuboot -DQCBOR_PATH=${S}/../qcbor"
export CMAKE_BUILD_PARALLEL_LEVEL = "${@oe.utils.parallel_make(d, False)}"
@@ -106,13 +110,6 @@
# right path until this is relocated automatically.
export OPENSSL_MODULES="${STAGING_LIBDIR_NATIVE}/ossl-modules"
-# TF-M ships patches that it needs applied to mbedcrypto, so apply them
-# as part of do_patch.
-apply_local_patches() {
- cat ${S}/lib/ext/mbedcrypto/*.patch | patch -p1 -d ${S}/../mbedtls
-}
-do_patch[postfuncs] += "apply_local_patches"
-
do_configure[cleandirs] = "${B}"
do_configure() {
cmake -GNinja -S ${S} -B ${B} ${EXTRA_OECMAKE} ${PACKAGECONFIG_CONFARGS}
diff --git a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.18.16.bb b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.20.15.bb
similarity index 68%
rename from meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.18.16.bb
rename to meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.20.15.bb
index 4d8519e..4c62822 100644
--- a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.18.16.bb
+++ b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-a-aem_11.20.15.bb
@@ -5,6 +5,9 @@
file://license_terms/third_party_licenses/third_party_licenses.txt;md5=34a1ba318d745f05e6197def68ea5411 \
file://license_terms/third_party_licenses/arm_license_management_utilities/third_party_licenses.txt;md5=2e53bda6ff2db4c35d69944b93926c9f"
-SRC_URI[sha256sum] = "fe76f9ff217a44ed7680a0a6ccd6bd19758f5e0466ff98ccd82b2ae62289b9fe"
+SRC_URI[fvp-aarch64.sha256sum] = "e14e6cbd5c3ec8e1e2e79965e994c9235e136480e102f5c43de31162263b6361"
+SRC_URI[fvp-x86_64.sha256sum] = "f9db2076e3a63e2f8eb2ea9ed60f30db04e5f81f535bc7e3ed24e270d857ea6f"
MODEL_CODE = "FVP_Base_RevC-2xAEMvA"
+
+COMPATIBLE_HOST = "(aarch64|x86_64).*-linux"
diff --git a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.19.14.bb b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.20.15.bb
similarity index 83%
rename from meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.19.14.bb
rename to meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.20.15.bb
index 3ef0891..3f8139c 100644
--- a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.19.14.bb
+++ b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.20.15.bb
@@ -5,6 +5,6 @@
file://license_terms/third_party_licenses/third_party_licenses.txt;md5=34a1ba318d745f05e6197def68ea5411 \
file://license_terms/third_party_licenses/arm_license_management_utilities/third_party_licenses.txt;md5=2e53bda6ff2db4c35d69944b93926c9f"
-SRC_URI[sha256sum] = "788ede659414af36a2d09489e400c4d822c859b726565f1f171bc3102a9413d0"
+SRC_URI[fvp-x86_64.sha256sum] = "c252616489b79fffa3bb721255b1c99ff4ee8c38e4beebce4fa05862a3195fe9"
MODEL_CODE = "FVP_Base_AEMv8R"
diff --git a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-corstone1000.bb b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-corstone1000.bb
index 35ffe0b..7d55661 100644
--- a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-corstone1000.bb
+++ b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-corstone1000.bb
@@ -2,10 +2,10 @@
MODEL = "Corstone-1000-23"
MODEL_CODE = "FVP_Corstone_1000"
-PV = "11.17_23"
+PV = "11.19_21"
-SRC_URI = "https://developer.arm.com/-/media/Arm%20Developer%20Community/Downloads/OSS/FVP/${MODEL}/Linux/${MODEL_CODE}_${PV}.tgz;subdir=${BP}"
-SRC_URI[sha256sum] = "00ccb72d02c90e2424d24a625d275cabf8ea8dc024713985208f618bb88d1934"
+SRC_URI = "https://developer.arm.com/-/media/Arm%20Developer%20Community/Downloads/OSS/FVP/${MODEL}/Linux/${MODEL_CODE}_${PV}_${FVP_ARCH}.tgz;subdir=${BP}"
+SRC_URI[sha256sum] = "dbdcb8b0c206fd56fd2296fe338a62902eb978883ba07f4da28440e180383b24"
LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=1a33828e132ba71861c11688dbb0bd16 \
- file://license_terms/third_party_licenses.txt;md5=41029e71051b1c786bae3112a29905a7"
+ file://license_terms/third_party_licenses/third_party_licenses.txt;md5=34a1ba318d745f05e6197def68ea5411"
diff --git a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-envelope.inc b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-envelope.inc
index 887d9d2..1e8bb40 100644
--- a/meta-arm/meta-arm/recipes-devtools/fvp/fvp-envelope.inc
+++ b/meta-arm/meta-arm/recipes-devtools/fvp/fvp-envelope.inc
@@ -1,8 +1,8 @@
require fvp-common.inc
-HOMEPAGE = "https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms/arm-ecosystem-models"
+HOMEPAGE = "https://developer.arm.com/Tools%20and%20Software/Fixed%20Virtual%20Platforms"
-SRC_URI = "https://developer.arm.com/-/media/Files/downloads/ecosystem-models/${MODEL_CODE}_${PV_URL}_${FVP_ARCH}.tgz;subdir=${BP}"
+SRC_URI = "https://developer.arm.com/-/media/Files/downloads/ecosystem-models/${MODEL_CODE}_${PV_URL}_${FVP_ARCH}.tgz;subdir=${BP};name=fvp-${HOST_ARCH}"
UPSTREAM_CHECK_URI = "${HOMEPAGE}"
UPSTREAM_CHECK_REGEX = "${MODEL_CODE}_(?P<pver>(\d+[\.\-_]*)+).tgz"
diff --git a/meta-arm/meta-arm/recipes-devtools/gn/gn/0001-Replace-lstat64-stat64-functions-on-linux.patch b/meta-arm/meta-arm/recipes-devtools/gn/gn/0001-Replace-lstat64-stat64-functions-on-linux.patch
new file mode 100644
index 0000000..159fbaa
--- /dev/null
+++ b/meta-arm/meta-arm/recipes-devtools/gn/gn/0001-Replace-lstat64-stat64-functions-on-linux.patch
@@ -0,0 +1,60 @@
+From 25786d356ac391124489f2e55690281c03fa83db Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 22 Dec 2022 00:30:55 -0800
+Subject: [PATCH] Replace lstat64/stat64 functions on linux
+
+we define -D_FILE_OFFSET_BITS=64 which means lstat is operating on 64bit
+off_t and is same as lstat64, same for stat and stat64 case.
+
+This fixes build with musl where off_t has always been 64bit
+
+Upstream-Status: Submitted [https://gn-review.googlesource.com/c/gn/+/14960]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/base/files/file.h | 2 +-
+ src/base/files/file_posix.cc | 2 +-
+ src/base/files/file_util_posix.cc | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/base/files/file.h b/src/base/files/file.h
+index 2c94eb4e..99e87ed9 100644
+--- a/src/base/files/file.h
++++ b/src/base/files/file.h
+@@ -23,7 +23,7 @@ namespace base {
+
+ #if defined(OS_BSD) || defined(OS_MACOSX) || defined(OS_NACL) || \
+ defined(OS_HAIKU) || defined(OS_MSYS) || defined(OS_ZOS) || \
+- defined(OS_ANDROID) && __ANDROID_API__ < 21
++ defined(OS_LINUX) || defined(OS_ANDROID) && __ANDROID_API__ < 21
+ typedef struct stat stat_wrapper_t;
+ #elif defined(OS_POSIX) || defined(OS_FUCHSIA)
+ typedef struct stat64 stat_wrapper_t;
+diff --git a/src/base/files/file_posix.cc b/src/base/files/file_posix.cc
+index b1f9f5e8..049568f0 100644
+--- a/src/base/files/file_posix.cc
++++ b/src/base/files/file_posix.cc
+@@ -26,7 +26,7 @@ namespace {
+
+ #if defined(OS_BSD) || defined(OS_MACOSX) || defined(OS_NACL) || \
+ defined(OS_HAIKU) || defined(OS_MSYS) || defined(OS_ZOS) || \
+- defined(OS_ANDROID) && __ANDROID_API__ < 21
++ defined(OS_LINUX) || defined(OS_ANDROID) && __ANDROID_API__ < 21
+ int CallFstat(int fd, stat_wrapper_t* sb) {
+ return fstat(fd, sb);
+ }
+diff --git a/src/base/files/file_util_posix.cc b/src/base/files/file_util_posix.cc
+index aa54731d..53be3d3b 100644
+--- a/src/base/files/file_util_posix.cc
++++ b/src/base/files/file_util_posix.cc
+@@ -61,7 +61,7 @@ namespace {
+
+ #if defined(OS_BSD) || defined(OS_MACOSX) || defined(OS_NACL) || \
+ defined(OS_HAIKU) || defined(OS_MSYS) || defined(OS_ZOS) || \
+- defined(OS_ANDROID) && __ANDROID_API__ < 21
++ defined(OS_LINUX) || defined(OS_ANDROID) && __ANDROID_API__ < 21
+ int CallStat(const char* path, stat_wrapper_t* sb) {
+ return stat(path, sb);
+ }
+--
+2.39.0
+
diff --git a/meta-arm/meta-arm/recipes-devtools/gn/gn_git.bb b/meta-arm/meta-arm/recipes-devtools/gn/gn_git.bb
index 8d1efb6..521e33e 100644
--- a/meta-arm/meta-arm/recipes-devtools/gn/gn_git.bb
+++ b/meta-arm/meta-arm/recipes-devtools/gn/gn_git.bb
@@ -4,7 +4,8 @@
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d"
-SRC_URI = "git://gn.googlesource.com/gn;protocol=https;branch=main"
+SRC_URI = "git://gn.googlesource.com/gn;protocol=https;branch=main \
+ file://0001-Replace-lstat64-stat64-functions-on-linux.patch"
SRCREV = "bf4e17dc67b2a2007475415e3f9e1d1cf32f6e35"
PV = "0+git${SRCPV}"
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0001-core-Define-section-attributes-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0001-core-Define-section-attributes-for-clang.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0001-core-Define-section-attributes-for-clang.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0001-core-Define-section-attributes-for-clang.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0007-allow-setting-sysroot-for-clang.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0007-allow-setting-sysroot-for-clang.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0008-no-warn-rwx-segments.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0008-no-warn-rwx-segments.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0008-no-warn-rwx-segments.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0008-no-warn-rwx-segments.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0009-add-z-execstack.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0009-add-z-execstack.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0010-add-note-GNU-stack-section.patch
similarity index 100%
rename from meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch
rename to meta-arm/meta-arm/recipes-security/optee/optee-os-3.18.0/0010-add-note-GNU-stack-section.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0001-core-Define-section-attributes-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0001-core-Define-section-attributes-for-clang.patch
new file mode 100644
index 0000000..a1dc251
--- /dev/null
+++ b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0001-core-Define-section-attributes-for-clang.patch
@@ -0,0 +1,243 @@
+From ff1b556ac2cd6bbb857a1ac03e0557eb490bc845 Mon Sep 17 00:00:00 2001
+From: Emekcan Aras <emekcan.aras@arm.com>
+Date: Wed, 21 Dec 2022 10:55:58 +0000
+Subject: [PATCH] [PATCH] core: Define section attributes for clang
+
+Clang's attribute section is not same as gcc, here we need to add flags
+to sections so they can be eventually collected by linker into final
+output segments. Only way to do so with clang is to use
+
+pragma clang section ...
+
+The behavious is described here [1], this allows us to define names bss
+sections. This was not an issue until clang-15 where LLD linker starts
+to detect the section flags before merging them and throws the following
+errors
+
+| ld.lld: error: section type mismatch for .nozi.kdata_page
+| >>> /mnt/b/yoe/master/build/tmp/work/qemuarm64-yoe-linux/optee-os-tadevkit/3.17.0-r0/build/core/arch/arm/kernel/thread.o:(.nozi.kdata_page): SHT_PROGBITS
+| >>> output section .nozi: SHT_NOBITS
+|
+| ld.lld: error: section type mismatch for .nozi.mmu.l2
+| >>> /mnt/b/yoe/master/build/tmp/work/qemuarm64-yoe-linux/optee-os-tadevkit/3.17.0-r0/build/core/arch/arm/mm/core_mmu_lpae.o:(.nozi.mmu.l2): SHT_PROGBITS
+| >>> output section .nozi: SHT_NOBITS
+
+These sections should be carrying SHT_NOBITS but so far it was not
+possible to do so, this patch tries to use clangs pragma to get this
+going and match the functionality with gcc.
+
+[1] https://intel.github.io/llvm-docs/clang/LanguageExtensions.html#specifying-section-names-for-global-objects-pragma-clang-section
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ core/arch/arm/kernel/thread.c | 19 +++++++++++++++--
+ core/arch/arm/mm/core_mmu_lpae.c | 35 +++++++++++++++++++++++++++----
+ core/arch/arm/mm/core_mmu_v7.c | 36 +++++++++++++++++++++++++++++---
+ core/arch/arm/mm/pgt_cache.c | 12 ++++++++++-
+ core/kernel/thread.c | 13 +++++++++++-
+ 5 files changed, 104 insertions(+), 11 deletions(-)
+
+diff --git a/core/arch/arm/kernel/thread.c b/core/arch/arm/kernel/thread.c
+index 05dbbe56..8e6ea034 100644
+--- a/core/arch/arm/kernel/thread.c
++++ b/core/arch/arm/kernel/thread.c
+@@ -44,15 +44,30 @@ static size_t thread_user_kcode_size __nex_bss;
+ #if defined(CFG_CORE_UNMAP_CORE_AT_EL0) && \
+ defined(CFG_CORE_WORKAROUND_SPECTRE_BP_SEC) && defined(ARM64)
+ long thread_user_kdata_sp_offset __nex_bss;
++#ifdef __clang__
++#ifndef CFG_VIRTUALIZATION
++#pragma clang section bss=".nozi.kdata_page"
++#else
++#pragma clang section bss=".nex_nozi.kdata_page"
++#endif
++#endif
+ static uint8_t thread_user_kdata_page[
+ ROUNDUP(sizeof(struct thread_core_local) * CFG_TEE_CORE_NB_CORE,
+ SMALL_PAGE_SIZE)]
+ __aligned(SMALL_PAGE_SIZE)
++#ifndef __clang__
+ #ifndef CFG_VIRTUALIZATION
+- __section(".nozi.kdata_page");
++ __section(".nozi.kdata_page")
+ #else
+- __section(".nex_nozi.kdata_page");
++ __section(".nex_nozi.kdata_page")
+ #endif
++#endif
++ ;
++#endif
++
++/* reset BSS section to default ( .bss ) */
++#ifdef __clang__
++#pragma clang section bss=""
+ #endif
+
+ #ifdef ARM32
+diff --git a/core/arch/arm/mm/core_mmu_lpae.c b/core/arch/arm/mm/core_mmu_lpae.c
+index 3f08eec6..e6dc9261 100644
+--- a/core/arch/arm/mm/core_mmu_lpae.c
++++ b/core/arch/arm/mm/core_mmu_lpae.c
+@@ -233,19 +233,46 @@ typedef uint16_t l1_idx_t;
+ typedef uint64_t base_xlat_tbls_t[CFG_TEE_CORE_NB_CORE][NUM_BASE_LEVEL_ENTRIES];
+ typedef uint64_t xlat_tbl_t[XLAT_TABLE_ENTRIES];
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.base_table"
++#endif
+ static base_xlat_tbls_t base_xlation_table[NUM_BASE_TABLES]
+ __aligned(NUM_BASE_LEVEL_ENTRIES * XLAT_ENTRY_SIZE)
+- __section(".nozi.mmu.base_table");
++#ifndef __clang__
++ __section(".nozi.mmu.base_table")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static xlat_tbl_t xlat_tables[MAX_XLAT_TABLES]
+- __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2");
++ __aligned(XLAT_TABLE_SIZE)
++#ifndef __clang__
++ __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ #define XLAT_TABLES_SIZE (sizeof(xlat_tbl_t) * MAX_XLAT_TABLES)
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ /* MMU L2 table for TAs, one for each thread */
+ static xlat_tbl_t xlat_tables_ul1[CFG_NUM_THREADS]
+- __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2");
+-
++#ifndef __clang__
++ __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+ /*
+ * TAs page table entry inside a level 1 page table.
+ *
+diff --git a/core/arch/arm/mm/core_mmu_v7.c b/core/arch/arm/mm/core_mmu_v7.c
+index cd85bd22..3e18f54f 100644
+--- a/core/arch/arm/mm/core_mmu_v7.c
++++ b/core/arch/arm/mm/core_mmu_v7.c
+@@ -204,16 +204,46 @@ typedef uint32_t l1_xlat_tbl_t[NUM_L1_ENTRIES];
+ typedef uint32_t l2_xlat_tbl_t[NUM_L2_ENTRIES];
+ typedef uint32_t ul1_xlat_tbl_t[NUM_UL1_ENTRIES];
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l1"
++#endif
+ static l1_xlat_tbl_t main_mmu_l1_ttb
+- __aligned(L1_ALIGNMENT) __section(".nozi.mmu.l1");
++ __aligned(L1_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.l1")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ /* L2 MMU tables */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static l2_xlat_tbl_t main_mmu_l2_ttb[MAX_XLAT_TABLES]
+- __aligned(L2_ALIGNMENT) __section(".nozi.mmu.l2");
++ __aligned(L2_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ /* MMU L1 table for TAs, one for each thread */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.ul1"
++#endif
+ static ul1_xlat_tbl_t main_mmu_ul1_ttb[CFG_NUM_THREADS]
+- __aligned(UL1_ALIGNMENT) __section(".nozi.mmu.ul1");
++ __aligned(UL1_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.ul1")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ struct mmu_partition {
+ l1_xlat_tbl_t *l1_table;
+diff --git a/core/arch/arm/mm/pgt_cache.c b/core/arch/arm/mm/pgt_cache.c
+index a7b1b10e..489859ce 100644
+--- a/core/arch/arm/mm/pgt_cache.c
++++ b/core/arch/arm/mm/pgt_cache.c
+@@ -410,8 +410,18 @@ void pgt_init(void)
+ * has a large alignment, while .bss has a small alignment. The current
+ * link script is optimized for small alignment in .bss
+ */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static uint8_t pgt_tables[PGT_CACHE_SIZE][PGT_SIZE]
+- __aligned(PGT_SIZE) __section(".nozi.pgt_cache");
++ __aligned(PGT_SIZE)
++#ifndef __clang__
++ __section(".nozi.pgt_cache")
++#endif
++ ;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+ size_t n;
+
+ for (n = 0; n < ARRAY_SIZE(pgt_tables); n++) {
+diff --git a/core/kernel/thread.c b/core/kernel/thread.c
+index d1f2f382..8de124ae 100644
+--- a/core/kernel/thread.c
++++ b/core/kernel/thread.c
+@@ -38,13 +38,24 @@ struct thread_core_local thread_core_local[CFG_TEE_CORE_NB_CORE] __nex_bss;
+ name[stack_num][sizeof(name[stack_num]) / sizeof(uint32_t) - 1]
+ #endif
+
++#define DO_PRAGMA(x) _Pragma (#x)
++
++#ifdef __clang__
++#define DECLARE_STACK(name, num_stacks, stack_size, linkage) \
++DO_PRAGMA (clang section bss=".nozi_stack." #name) \
++linkage uint32_t name[num_stacks] \
++ [ROUNDUP(stack_size + STACK_CANARY_SIZE + STACK_CHECK_EXTRA, \
++ STACK_ALIGNMENT) / sizeof(uint32_t)] \
++ __attribute__((aligned(STACK_ALIGNMENT))); \
++DO_PRAGMA(clang section bss="")
++#else
+ #define DECLARE_STACK(name, num_stacks, stack_size, linkage) \
+ linkage uint32_t name[num_stacks] \
+ [ROUNDUP(stack_size + STACK_CANARY_SIZE + STACK_CHECK_EXTRA, \
+ STACK_ALIGNMENT) / sizeof(uint32_t)] \
+ __attribute__((section(".nozi_stack." # name), \
+ aligned(STACK_ALIGNMENT)))
+-
++#endif
+ #define GET_STACK(stack) ((vaddr_t)(stack) + STACK_SIZE(stack))
+
+ DECLARE_STACK(stack_tmp, CFG_TEE_CORE_NB_CORE, STACK_TMP_SIZE,
+--
+2.17.1
+
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0007-allow-setting-sysroot-for-clang.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0007-allow-setting-sysroot-for-clang.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0008-no-warn-rwx-segments.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0008-no-warn-rwx-segments.patch
new file mode 100644
index 0000000..2dc797b
--- /dev/null
+++ b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0008-no-warn-rwx-segments.patch
@@ -0,0 +1,38 @@
+diff --git a/core/arch/arm/kernel/link.mk b/core/arch/arm/kernel/link.mk
+index 0e96e606c..3fbcb6804 100644
+--- a/core/arch/arm/kernel/link.mk
++++ b/core/arch/arm/kernel/link.mk
+@@ -37,6 +37,7 @@ link-ldflags += --sort-section=alignment
+ link-ldflags += --fatal-warnings
+ link-ldflags += --gc-sections
+ link-ldflags += $(link-ldflags-common)
++link-ldflags += $(call ld-option,--no-warn-rwx-segments)
+
+ link-ldadd = $(LDADD)
+ link-ldadd += $(ldflags-external)
+@@ -61,6 +62,7 @@ link-script-cppflags := \
+ $(cppflagscore))
+
+ ldargs-all_objs := -T $(link-script-dummy) --no-check-sections \
++ $(call ld-option,--no-warn-rwx-segments) \
+ $(link-ldflags-common) \
+ $(link-objs) $(link-ldadd) $(libgcccore)
+ cleanfiles += $(link-out-dir)/all_objs.o
+@@ -75,7 +77,7 @@ $(link-out-dir)/unpaged_entries.txt: $(link-out-dir)/all_objs.o
+ $(AWK) '/ ____keep_pager/ { printf "-u%s ", $$3 }' > $@
+
+ unpaged-ldargs := -T $(link-script-dummy) --no-check-sections --gc-sections \
+- $(link-ldflags-common)
++ $(link-ldflags-common) $(call ld-option,--no-warn-rwx-segments)
+ unpaged-ldadd := $(objs) $(link-ldadd) $(libgcccore)
+ cleanfiles += $(link-out-dir)/unpaged.o
+ $(link-out-dir)/unpaged.o: $(link-out-dir)/unpaged_entries.txt
+@@ -104,7 +106,7 @@ $(link-out-dir)/init_entries.txt: $(link-out-dir)/all_objs.o
+ $(AWK) '/ ____keep_init/ { printf "-u%s ", $$3 }' > $@
+
+ init-ldargs := -T $(link-script-dummy) --no-check-sections --gc-sections \
+- $(link-ldflags-common)
++ $(link-ldflags-common) $(call ld-option,--no-warn-rwx-segments)
+ init-ldadd := $(link-objs-init) $(link-out-dir)/version.o $(link-ldadd) \
+ $(libgcccore)
+ cleanfiles += $(link-out-dir)/init.o
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0009-add-z-execstack.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0009-add-z-execstack.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0010-add-note-GNU-stack-section.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-3.19.0/0010-add-note-GNU-stack-section.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os-3_19.inc b/meta-arm/meta-arm/recipes-security/optee/optee-os-3_19.inc
new file mode 100644
index 0000000..8adb699
--- /dev/null
+++ b/meta-arm/meta-arm/recipes-security/optee/optee-os-3_19.inc
@@ -0,0 +1,82 @@
+SUMMARY = "OP-TEE Trusted OS"
+DESCRIPTION = "Open Portable Trusted Execution Environment - Trusted side of the TEE"
+HOMEPAGE = "https://www.op-tee.org/"
+
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c1f21c4f72f372ef38a5a4aee55ec173"
+
+inherit deploy python3native
+require optee.inc
+
+FILESEXTRAPATHS:prepend := "${THISDIR}/optee-os-3_19:"
+
+CVE_PRODUCT = "linaro:op-tee op-tee:op-tee_os"
+
+DEPENDS = "python3-pyelftools-native python3-cryptography-native"
+
+DEPENDS:append:toolchain-clang = " compiler-rt"
+
+SRC_URI = "git://github.com/OP-TEE/optee_os.git;branch=master;protocol=https"
+
+SRC_URI:append = " \
+ file://0006-allow-setting-sysroot-for-libgcc-lookup.patch \
+ file://0007-allow-setting-sysroot-for-clang.patch \
+ file://0008-no-warn-rwx-segments.patch \
+ "
+
+S = "${WORKDIR}/git"
+B = "${WORKDIR}/build"
+
+EXTRA_OEMAKE += " \
+ PLATFORM=${OPTEEMACHINE} \
+ CFG_${OPTEE_CORE}_core=y \
+ CROSS_COMPILE_core=${HOST_PREFIX} \
+ CROSS_COMPILE_ta_${OPTEE_ARCH}=${HOST_PREFIX} \
+ NOWERROR=1 \
+ ta-targets=ta_${OPTEE_ARCH} \
+ O=${B} \
+"
+EXTRA_OEMAKE += " HOST_PREFIX=${HOST_PREFIX}"
+EXTRA_OEMAKE += " CROSS_COMPILE64=${HOST_PREFIX}"
+
+CFLAGS[unexport] = "1"
+LDFLAGS[unexport] = "1"
+CPPFLAGS[unexport] = "1"
+AS[unexport] = "1"
+LD[unexport] = "1"
+
+do_compile:prepend() {
+ PLAT_LIBGCC_PATH=$(${CC} -print-libgcc-file-name)
+}
+
+do_compile() {
+ oe_runmake -C ${S} all
+}
+do_compile[cleandirs] = "${B}"
+
+do_install() {
+ #install core in firmware
+ install -d ${D}${nonarch_base_libdir}/firmware/
+ install -m 644 ${B}/core/*.bin ${B}/core/tee.elf ${D}${nonarch_base_libdir}/firmware/
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+do_deploy() {
+ install -d ${DEPLOYDIR}/${MLPREFIX}optee
+ install -m 644 ${D}${nonarch_base_libdir}/firmware/* ${DEPLOYDIR}/${MLPREFIX}optee
+}
+
+addtask deploy before do_build after do_install
+
+SYSROOT_DIRS += "${nonarch_base_libdir}/firmware"
+
+FILES:${PN} = "${nonarch_base_libdir}/firmware/"
+
+# note: "textrel" is not triggered on all archs
+INSANE_SKIP:${PN} = "textrel"
+# Build paths are currently embedded
+INSANE_SKIP:${PN} += "buildpaths"
+INSANE_SKIP:${PN}-dev = "staticdev"
+INHIBIT_PACKAGE_STRIP = "1"
+
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0001-core-Define-section-attributes-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0001-core-Define-section-attributes-for-clang.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0001-core-Define-section-attributes-for-clang.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0001-core-Define-section-attributes-for-clang.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0006-allow-setting-sysroot-for-libgcc-lookup.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0007-allow-setting-sysroot-for-clang.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0007-allow-setting-sysroot-for-clang.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0008-no-warn-rwx-segments.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0008-no-warn-rwx-segments.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0008-no-warn-rwx-segments.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0008-no-warn-rwx-segments.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0009-add-z-execstack.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0009-add-z-execstack.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0009-add-z-execstack.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch b/meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0010-add-note-GNU-stack-section.patch
similarity index 100%
copy from meta-arm/meta-arm/recipes-security/optee/optee-os/0010-add-note-GNU-stack-section.patch
copy to meta-arm/meta-arm/recipes-security/optee/optee-os-tadevkit-3.18.0/0010-add-note-GNU-stack-section.patch
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os_3.18.0.bb b/meta-arm/meta-arm/recipes-security/optee/optee-os_3.18.0.bb
index 59e58ed..31da5de 100644
--- a/meta-arm/meta-arm/recipes-security/optee/optee-os_3.18.0.bb
+++ b/meta-arm/meta-arm/recipes-security/optee/optee-os_3.18.0.bb
@@ -2,6 +2,8 @@
DEPENDS += "dtc-native"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-3.18.0:"
+
SRCREV = "1ee647035939e073a2e8dddb727c0f019cc035f1"
SRC_URI:append = " \
file://0001-core-Define-section-attributes-for-clang.patch \
diff --git a/meta-arm/meta-arm/recipes-security/optee/optee-os_3.19.0.bb b/meta-arm/meta-arm/recipes-security/optee/optee-os_3.19.0.bb
new file mode 100644
index 0000000..656a097
--- /dev/null
+++ b/meta-arm/meta-arm/recipes-security/optee/optee-os_3.19.0.bb
@@ -0,0 +1,9 @@
+require optee-os-3_19.inc
+
+DEPENDS += "dtc-native"
+
+SRCREV = "afacf356f9593a7f83cae9f96026824ec242ff52"
+
+SRC_URI:append = " \
+ file://0001-core-Define-section-attributes-for-clang.patch \
+ "
diff --git a/meta-arm/meta-arm/recipes-security/packagegroups/packagegroup-ts-tests.bb b/meta-arm/meta-arm/recipes-security/packagegroups/packagegroup-ts-tests.bb
index b9c6507..25ee2f5 100644
--- a/meta-arm/meta-arm/recipes-security/packagegroups/packagegroup-ts-tests.bb
+++ b/meta-arm/meta-arm/recipes-security/packagegroups/packagegroup-ts-tests.bb
@@ -5,6 +5,8 @@
inherit packagegroup
COMPATIBLE_HOST = "aarch64.*-linux"
+COMPATIBLE_MACHINE ?= "invalid"
+COMPATIBLE_MACHINE:qemuarm64-secureboot = "qemuarm64-secureboot"
PACKAGES = "${PN} ${PN}-psa"
diff --git a/meta-arm/meta-arm/recipes-security/trusted-services/libts_git.bb b/meta-arm/meta-arm/recipes-security/trusted-services/libts_git.bb
index 598b281..aafe851 100644
--- a/meta-arm/meta-arm/recipes-security/trusted-services/libts_git.bb
+++ b/meta-arm/meta-arm/recipes-security/trusted-services/libts_git.bb
@@ -24,11 +24,14 @@
fi
# Move the dynamic libraries into the standard place.
- # Update a cmake file to use correct paths.
install -d ${D}${libdir}
mv ${D}${TS_INSTALL}/lib/libts* ${D}${libdir}
- sed -i -e "s#/${TS_ENV}##g" ${D}${TS_INSTALL}/lib/cmake/libts/libtsTargets-noconfig.cmake
+ # Update generated cmake file to use correct paths.
+ target_cmake=$(find ${D}${TS_INSTALL}/lib/cmake/libts -type f -iname "libtsTargets-*.cmake")
+ if [ ! -z "$target_cmake" ]; then
+ sed -i -e "s#/${TS_ENV}##g" $target_cmake
+ fi
}
inherit ${@oe.utils.conditional('VIRTUAL-RUNTIME_dev_manager', 'busybox-mdev', '', 'useradd', d)}
diff --git a/meta-arm/meta-arm/recipes-security/trusted-services/trusted-services.inc b/meta-arm/meta-arm/recipes-security/trusted-services/trusted-services.inc
index 59f461d..c64a1d4 100644
--- a/meta-arm/meta-arm/recipes-security/trusted-services/trusted-services.inc
+++ b/meta-arm/meta-arm/recipes-security/trusted-services/trusted-services.inc
@@ -6,6 +6,8 @@
inherit python3native cmake
COMPATIBLE_HOST = "aarch64.*-linux"
+COMPATIBLE_MACHINE ?= "invalid"
+COMPATIBLE_MACHINE:qemuarm64-secureboot = "qemuarm64-secureboot"
require trusted-services-src.inc
diff --git a/meta-arm/meta-atp/README.md b/meta-arm/meta-atp/README.md
deleted file mode 100644
index 15d0e29..0000000
--- a/meta-arm/meta-atp/README.md
+++ /dev/null
@@ -1,76 +0,0 @@
-# meta-atp layer
-
-The meta-atp layer supports building environments with traffic generation capabilities based on [AMBA Adaptive Traffic Profiles (ATP)](https://developer.arm.com/documentation/ihi0082/latest).
-
-## Recipes
-
-The meta-atp layer supports building the following software components:
-
-- Arm's implementation of the AMBA ATP specification, namely the [AMBA ATP Engine](https://github.com/ARM-software/ATP-Engine).
-- Linux kernel modules and user API (UAPI) for programming ATP devices.
-- Integration test suite for verification of kernel modules and UAPI.
-
-It is also possible to build the AMBA ATP Engine as part of the final [gem5](https://www.gem5.org/) executable. For this, meta-atp extends the `gem5-aarch64-native` recipe to add the AMBA ATP engine code as extra sources.
-
-## Machines
-
-The `gem5-atp-arm64` machine extends the `gem5-arm64` machine to instantiate a simulated platform with support for programmable AMBA ATP traffic generation. The platform includes the following models:
-
-- `ProfileGen` model. This is the adapter layer between gem5 and the AMBA ATP Engine. It is the source of traffic into the gem5 host platform.
-- `ATPDevice` model. Software can program it using the Linux kernel modules and UAPI to control traffic generation.
-
-## Usage
-
-Users should add the meta-atp layer and layer dependencies to `conf/bblayers.conf`. See `conf/layer.conf` for dependencies.
-
-### Standalone Engine executable
-
-Users can build the AMBA ATP Engine as a standalone native executable as follows:
-
-```bash
-bitbake atp-native
-```
-
-Users can run the executable through standard build scripts:
-
-```bash
-oe-run-native atp-native atpeng [--help | args...]
-```
-
-## Integration of the Engine in gem5
-
-Users should select the `gem5-atp-arm64` platform in their `conf/local.conf` file.
-
-Users can build the target image of preference, for example:
-
-```bash
-bitbake core-image-minimal
-```
-
-The resulting gem5 native executable contains the AMBA ATP Engine. The resulting target image contains the kernel modules, UAPI and test suite.
-
-Users should run the environment as follows:
-
-```bash
-./tmp/deploy/tools/start-gem5-atp.sh
-```
-
-This script launches a fast simulation to fast-forward Linux boot. Once Linux boot is completed, the fast simulation switches into a detailed simulation for the final usable environment. Users can connect and interact with the environment as follows:
-
-```bash
-oe-run-native gem5-m5term-native m5term <PORT>
-```
-
-The connection PORT is announced by the deploy script as:
-
-```bash
-system.terminal: Listening for connections on port <PORT>
-```
-
-This is usually port 3456.
-
-Users can verify access to the ATP device by running the integration test suite from within the simulated environment as follows:
-
-```bash
-test_atp.out
-```
diff --git a/meta-arm/meta-atp/conf/layer.conf b/meta-arm/meta-atp/conf/layer.conf
deleted file mode 100644
index 8e48b26..0000000
--- a/meta-arm/meta-atp/conf/layer.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-BBPATH .= ":${LAYERDIR}"
-BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
- ${LAYERDIR}/recipes-*/*/*.bbappend"
-
-BBFILE_COLLECTIONS += "meta-atp"
-BBFILE_PATTERN_meta-atp = "^${LAYERDIR}/"
-
-LAYERDEPENDS_meta-atp = "core openembedded-layer meta-gem5"
-LAYERSERIES_COMPAT_meta-atp = "langdale mickledore"
diff --git a/meta-arm/meta-atp/conf/machine/gem5-atp-arm64.conf b/meta-arm/meta-atp/conf/machine/gem5-atp-arm64.conf
deleted file mode 100644
index d5fe22a..0000000
--- a/meta-arm/meta-atp/conf/machine/gem5-atp-arm64.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-require conf/machine/gem5-arm64.conf
-MACHINEOVERRIDES =. "gem5-arm64:"
-
-# Use baremetal_atp.py as machine configuration
-GEM5_RUN_PROFILE = "configs/baremetal_atp.py"
-# Require m5term
-EXTRA_IMAGEDEPENDS += "gem5-m5term-native"
-# Require ATP kernel modules, user API and gem5 m5ops
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-atp atp-uapi gem5-m5ops"
-# Optionally provide ATP kernel tests
-MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "atp-test"
diff --git a/meta-arm/meta-atp/recipes-devtools/atp/atp-native_3.1.bb b/meta-arm/meta-atp/recipes-devtools/atp/atp-native_3.1.bb
deleted file mode 100644
index 31b58bf..0000000
--- a/meta-arm/meta-atp/recipes-devtools/atp/atp-native_3.1.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-require atp-source_3.1.inc
-inherit pkgconfig native
-
-SUMMARY = "AMBA ATP Engine: synthetic traffic interface modelling framework"
-
-S = "${WORKDIR}/git"
-SRC_URI = "${ATP_SRC} \
- file://no-werror.patch"
-
-EXTRA_OEMAKE += "EXTRA_CXX_FLAGS='${CXXFLAGS}' EXTRA_LD_FLAGS='${LDFLAGS}'"
-
-do_install() {
- oe_runmake install
-}
-
-DEPENDS = "protobuf-native cppunit-native"
-
-addtask addto_recipe_sysroot before do_build
diff --git a/meta-arm/meta-atp/recipes-devtools/atp/atp-source_3.1.inc b/meta-arm/meta-atp/recipes-devtools/atp/atp-source_3.1.inc
deleted file mode 100644
index de24ef8..0000000
--- a/meta-arm/meta-atp/recipes-devtools/atp/atp-source_3.1.inc
+++ /dev/null
@@ -1,9 +0,0 @@
-ATP_SRC = "git://github.com/ARM-software/ATP-Engine.git;protocol=https;branch=master"
-ATP_REV = "be1066029d6256626b37be004e2a663fbc29f37e"
-ATP_LIC = "BSD-3-Clause-Clear"
-ATP_LIC_MD5 = "e836b5992257064f488715d9a59752c3"
-
-HOMEPAGE ?= "https://github.com/ARM-software/ATP-Engine"
-SRCREV ?= "${ATP_REV}"
-LICENSE ?= "${ATP_LIC}"
-LIC_FILES_CHKSUM ?= "file://LICENSE;md5=${ATP_LIC_MD5}"
diff --git a/meta-arm/meta-atp/recipes-devtools/atp/files/no-werror.patch b/meta-arm/meta-atp/recipes-devtools/atp/files/no-werror.patch
deleted file mode 100644
index 4be143a..0000000
--- a/meta-arm/meta-atp/recipes-devtools/atp/files/no-werror.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Don't pass -Werror, as new compilers introduce new warnings.
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-diff --git a/Makefile b/Makefile
-index c01b120..1d3c30a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -18,7 +18,7 @@ PROTOBUF_C_FLAGS:= $(shell pkg-config --cflags protobuf)
- CPPUNIT_C_FLAGS := $(shell pkg-config --cflags cppunit)
- PROTOBUF_L_FLAGS:= $(shell pkg-config --libs protobuf)
- CPPUNIT_L_FLAGS := $(shell pkg-config --libs cppunit)
--CXX_FLAGS := $(PROTOBUF_C_FLAGS) -std=c++11 -Wall -Werror -Wextra -Wno-unused-parameter -Wno-unused-variable $(CPPUNIT_C_FLAGS) -fPIC $(EXTRA_CXX_FLAGS)
-+CXX_FLAGS := $(PROTOBUF_C_FLAGS) -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable $(CPPUNIT_C_FLAGS) -fPIC $(EXTRA_CXX_FLAGS)
- LD_FLAGS := $(PROTOBUF_L_FLAGS) $(CPPUNIT_L_FLAGS) $(EXTRA_LD_FLAGS)
- PROTO_SRC_DIR := ./proto/
- PROTO_SRC := $(wildcard $(PROTO_SRC_DIR)tp*.proto)
diff --git a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-dtb.bbappend b/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-dtb.bbappend
deleted file mode 100644
index 2b55b89..0000000
--- a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-dtb.bbappend
+++ /dev/null
@@ -1,3 +0,0 @@
-# Export datadir paths for baremetal_atp.py script
-export GEM5_DATADIR = "${STAGING_DATADIR_NATIVE}/gem5"
-export ATP_DATADIR = "${STAGING_DATADIR_NATIVE}/gem5"
diff --git a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native/start-gem5-atp.sh b/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native/start-gem5-atp.sh
deleted file mode 100755
index 16dac47..0000000
--- a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native/start-gem5-atp.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env bash
-
-source <(bitbake -e gem5-aarch64-native | grep \
- -e "^STAGING_DATADIR_NATIVE=" -e "^DEPLOY_DIR_TOOLS=")
-
-# Used by baremetal_atp.py
-export GEM5_DATADIR=${STAGING_DATADIR_NATIVE}/gem5
-export ATP_DATADIR=${STAGING_DATADIR_NATIVE}/gem5
-
-# Fast-forward Linux boot and restore into timing simulation
-${DEPLOY_DIR_TOOLS}/start-gem5.sh --checkpoint $@
-${DEPLOY_DIR_TOOLS}/start-gem5.sh --restore-with-cpu TimingSimpleCPU \
- --checkpoint-restore 1 $@
diff --git a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend b/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend
deleted file mode 100644
index 6607f0f..0000000
--- a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend
+++ /dev/null
@@ -1,24 +0,0 @@
-require recipes-devtools/atp/atp-source_3.1.inc
-
-FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
-
-SRC_URI += "${ATP_SRC};destsuffix=git/atp;name=atp \
- file://start-gem5-atp.sh"
-SRCREV_FORMAT = "gem5_atp"
-SRCREV_atp = "${ATP_REV}"
-LICENSE += "& ${ATP_LIC}"
-LIC_FILES_CHKSUM += "file://atp/LICENSE;md5=${ATP_LIC_MD5}"
-
-EXTRA_OESCONS += "EXTRAS=${S}/atp"
-
-do_install:append() {
- # baremetal_atp.py machine configuration and sample stream.atp file
- install -m 644 ${B}/atp/gem5/baremetal_atp.py \
- ${B}/atp/configs/stream.atp \
- ${D}${datadir}/gem5/configs
-}
-
-do_deploy:append() {
- # start-gem5-atp.sh launch script
- install -m 755 ${WORKDIR}/start-gem5-atp.sh ${DEPLOYDIR}
-}
diff --git a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops/m5-readfile.sh b/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops/m5-readfile.sh
deleted file mode 100755
index 44477e9..0000000
--- a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops/m5-readfile.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-### BEGIN INIT INFO
-# Provides: m5-readfile
-# Required-Start: $all
-# Default-Start: 5
-# Description: Enables reading any script at simulation launch time.
-### END INIT INFO
-
-m5 readfile | sh
diff --git a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops_20.bbappend b/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops_20.bbappend
deleted file mode 100644
index 3ba0c3c..0000000
--- a/meta-arm/meta-atp/recipes-devtools/gem5/gem5-m5ops_20.bbappend
+++ /dev/null
@@ -1,14 +0,0 @@
-inherit update-rc.d
-
-FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
-
-# Add startup script calling m5 readfile for automatic checkpoint and restore
-SRC_URI += "file://m5-readfile.sh"
-
-INITSCRIPT_NAME = "m5-readfile.sh"
-INITSCRIPT_PARAMS = "defaults 99"
-
-do_install:append() {
- install -d ${D}/${INIT_D_DIR}
- install -m 755 ${WORKDIR}/m5-readfile.sh ${D}/${INIT_D_DIR}
-}
diff --git a/meta-arm/meta-atp/recipes-kernel/atp/atp-module_3.1.bb b/meta-arm/meta-atp/recipes-kernel/atp/atp-module_3.1.bb
deleted file mode 100644
index 0bf4949..0000000
--- a/meta-arm/meta-atp/recipes-kernel/atp/atp-module_3.1.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-require recipes-devtools/atp/atp-source_3.1.inc
-inherit module
-
-SUMMARY = "Kernel modules for interacting wih ATP Engine and devices"
-SECTION = "kernel/modules"
-
-S = "${WORKDIR}/git"
-SRC_URI = "${ATP_SRC}"
-
-ATP_MOD_DIR = "linux"
-
-EXTRA_OEMAKE += "-C ${ATP_MOD_DIR}"
-
-PROVIDES = "kernel-module-atp"
-RPROVIDES:${PN} = "kernel-module-atp"
-KERNEL_MODULE_AUTOLOAD += "atp_buffer_manager atp_device"
-MODULES_MODULE_SYMVERS_LOCATION = "${ATP_MOD_DIR}"
-
-do_install:append() {
- install -d ${D}${includedir}/linux
- install -m 644 ${ATP_MOD_DIR}/atp_buffer_manager_user.h \
- ${ATP_MOD_DIR}/atp_device_user.h \
- ${D}${includedir}/linux
-}
diff --git a/meta-arm/meta-atp/recipes-kernel/atp/atp-test_3.1.bb b/meta-arm/meta-atp/recipes-kernel/atp/atp-test_3.1.bb
deleted file mode 100644
index e98e13c..0000000
--- a/meta-arm/meta-atp/recipes-kernel/atp/atp-test_3.1.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-require recipes-devtools/atp/atp-source_3.1.inc
-
-SUMMARY = "End-to-end tests evaluating ATP kernel modules service correctness"
-SECTION = "kernel/userland"
-
-S = "${WORKDIR}/git"
-SRC_URI = "${ATP_SRC}"
-
-EXTRA_OEMAKE += "-C linux/test"
-
-do_compile() {
- oe_runmake
-}
-
-do_install() {
- oe_runmake DESTDIR=${D} PREFIX=${prefix} install
-}
-
-DEPENDS = "atp-uapi cppunit"
-RDEPENDS:${PN} = "atp-uapi"
diff --git a/meta-arm/meta-atp/recipes-kernel/atp/atp-uapi_3.1.bb b/meta-arm/meta-atp/recipes-kernel/atp/atp-uapi_3.1.bb
deleted file mode 100644
index 140105f..0000000
--- a/meta-arm/meta-atp/recipes-kernel/atp/atp-uapi_3.1.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-require recipes-devtools/atp/atp-source_3.1.inc
-
-SUMMARY = "User API for accessing services from ATP kernel modules"
-SECTION = "kernel/userland"
-
-S = "${WORKDIR}/git"
-SRC_URI = "${ATP_SRC}"
-
-# Unversioned library
-SOLIBS = ".so"
-FILES_SOLIBSDEV = ""
-
-EXTRA_OEMAKE += "-C linux/uapi"
-
-do_compile() {
- oe_runmake KERNEL_HDR_PATH=${STAGING_INCDIR}
-}
-
-do_install() {
- oe_runmake DESTDIR=${D} PREFIX=${prefix} install
-}
-
-DEPENDS = "linux-libc-headers kernel-module-atp"
diff --git a/meta-arm/meta-atp/recipes-kernel/linux/files/no_ftrace.cfg b/meta-arm/meta-atp/recipes-kernel/linux/files/no_ftrace.cfg
deleted file mode 100644
index 870eeaf..0000000
--- a/meta-arm/meta-atp/recipes-kernel/linux/files/no_ftrace.cfg
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_FTRACE is not set
diff --git a/meta-arm/meta-atp/recipes-kernel/linux/files/smmuv3.cfg b/meta-arm/meta-atp/recipes-kernel/linux/files/smmuv3.cfg
deleted file mode 100644
index 2d0a87d..0000000
--- a/meta-arm/meta-atp/recipes-kernel/linux/files/smmuv3.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-CONFIG_IOMMU_IO_PGTABLE=y
-CONFIG_IOMMU_IO_PGTABLE_LPAE=y
-# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
-CONFIG_ARM_SMMU_V3=y
diff --git a/meta-arm/meta-atp/recipes-kernel/linux/linux-yocto_%.bbappend b/meta-arm/meta-atp/recipes-kernel/linux/linux-yocto_%.bbappend
deleted file mode 100644
index f59f8d4..0000000
--- a/meta-arm/meta-atp/recipes-kernel/linux/linux-yocto_%.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
-SRC_URI += "file://no_ftrace.cfg file://smmuv3.cfg"
diff --git a/meta-arm/meta-gem5/COPYING.MIT b/meta-arm/meta-gem5/COPYING.MIT
deleted file mode 100644
index fb950dc..0000000
--- a/meta-arm/meta-gem5/COPYING.MIT
+++ /dev/null
@@ -1,17 +0,0 @@
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/meta-arm/meta-gem5/README.md b/meta-arm/meta-gem5/README.md
deleted file mode 100644
index 490ddca..0000000
--- a/meta-arm/meta-gem5/README.md
+++ /dev/null
@@ -1 +0,0 @@
-See ../README.md
diff --git a/meta-arm/meta-gem5/conf/layer.conf b/meta-arm/meta-gem5/conf/layer.conf
deleted file mode 100644
index db378b3..0000000
--- a/meta-arm/meta-gem5/conf/layer.conf
+++ /dev/null
@@ -1,19 +0,0 @@
-# We have a conf and classes directory, add to BBPATH
-BBPATH .= ":${LAYERDIR}"
-
-# We have recipes-* directories, add to BBFILES
-BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
- ${LAYERDIR}/recipes-*/*/*.bbappend"
-
-BBFILE_COLLECTIONS += "meta-gem5"
-BBFILE_PATTERN_meta-gem5 = "^${LAYERDIR}/"
-BBFILE_PRIORITY_meta-gem5 = "5"
-
-LAYERDEPENDS_meta-gem5 = "core openembedded-layer meta-arm"
-LAYERSERIES_COMPAT_meta-gem5 = "langdale mickledore"
-
-BBFILES_DYNAMIC += " \
- virtualization-layer:${LAYERDIR}/dynamic-layers/meta-virtualization/*/*/*.bbappend \
-"
-
-DISTRO_FEATURES_NATIVE:append = " ${@bb.utils.filter('DISTRO_FEATURES', 'xen', d)}"
diff --git a/meta-arm/meta-gem5/conf/machine/gem5-arm64.conf b/meta-arm/meta-gem5/conf/machine/gem5-arm64.conf
deleted file mode 100644
index fa931da..0000000
--- a/meta-arm/meta-gem5/conf/machine/gem5-arm64.conf
+++ /dev/null
@@ -1,54 +0,0 @@
-# Configuration for gem5 running on ARM64
-
-#@TYPE: Machine
-#@NAME: Gem5 arm64 machine
-#@DESCRIPTION: Machine configuration for Gem5 arm64
-
-TUNE_FEATURES = "aarch64"
-
-require conf/machine/include/arm/arch-armv8a.inc
-
-MACHINE_FEATURES = "optee pci"
-
-KERNEL_IMAGETYPES = "Image vmlinux"
-KERNEL_IMAGETYPE = "Image"
-
-IMAGE_FSTYPES += "tar.bz2 ext4"
-
-SERIAL_CONSOLES = "115200;ttyAMA0"
-
-EXTRA_IMAGEDEPENDS += "virtual/gem5-bootloader"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
-PREFERRED_VERSION_linux-yocto ?= "5.4%"
-
-
-# Uncomment the following if you need to build gem5 provided bootloader, else
-# using standard bootloader by Linux aarch64
-# Use gem5 provided bootloader
-# PREFERRED_PROVIDER_virtual/gem5-bootloader = "gem5-aarch64-bootloader"
-
-# use the dtb stored in the kernel recipe
-# KERNEL_DEVICETREE ?= "gem5-arm64/armv8_gem5_v2_4cpu.dtb"
-
-# Use Linux aarch64 boot wrapper with FDT support and generated
-# dtb (gem5-aarch64-dtb.bb)
-PREFERRED_PROVIDER_virtual/gem5-bootloader = "boot-wrapper-aarch64"
-
-BOOT_WRAPPER_AARCH64_CMDLINE ?= "\
- earlyprintk=pl011,0x1c090000 console=ttyAMA0 root=/dev/vda rw mem=1G \
- "
-# Use baremetal profile and axf file so dtb is in axf file
-GEM5_RUN_PROFILE = "configs/example/arm/baremetal.py"
-GEM5_RUN_KERNEL = "linux-system.axf"
-GEM5_RUN_EXTRA = ""
-GEM5_RUN_DTB = ""
-GEM5_RUN_CMDLINE = ""
-
-EXTRA_IMAGEDEPENDS += "gem5-aarch64-native"
-
-# As this is a virtual target that will not be used in the real world there is
-# no need for real SSH keys. Disable rng-tools (which takes too long to
-# initialise) and install the pre-generated keys.
-PACKAGECONFIG:remove:pn-openssh = "rng-tools"
-MACHINE_EXTRA_RRECOMMENDS += "ssh-pregen-hostkeys"
diff --git a/meta-arm/meta-gem5/documentation/gem5-arm64.md b/meta-arm/meta-gem5/documentation/gem5-arm64.md
deleted file mode 100644
index 137676b..0000000
--- a/meta-arm/meta-gem5/documentation/gem5-arm64.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Gem5 Arm64 Platform Support in meta-gem5
-
-## Howto Build and Run
-
-### Configuration:
-In the local.conf file, MACHINE should be set as follow:
-MACHINE ?= "gem5-arm64"
-
-And in the bblayers.conf the following layers need to be added:
-##OEROOT##/meta-arm/meta-arm-toolchain
-##OEROOT##/meta-arm/meta-arm
-
-### Build:
-```bash$ bitbake core-image-minimal```
-
-### Run:
-After compilation of an image, you can execute it using the compiled gem5
-with the followin command:
-```./tmp/deploy/tools/start-gem5.sh```
-
-You can modify the script to change the command line options of gem5.
-
-## Devices supported in the kernel
-- serial
-
-### Untested:
-- pci
-- sata
-- ide
-
-
-## Devices not supported or not functional
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-bsp/boot-wrapper-aaarch64/boot-wrapper-aarch64_%.bbappend b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-bsp/boot-wrapper-aaarch64/boot-wrapper-aarch64_%.bbappend
deleted file mode 100644
index e4b97e9..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-bsp/boot-wrapper-aaarch64/boot-wrapper-aarch64_%.bbappend
+++ /dev/null
@@ -1,32 +0,0 @@
-# Use OVERRIDES to minimize the usage of
-# ${@bb.utils.contains('DISTRO_FEATURES', 'xen', ...
-OVERRIDES:append = "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ':xen', '', d)}"
-
-# Xen image to put in the image
-# This should point to a file in the deploy image directory
-BOOT_WRAPPER_AARCH64_XEN ??= "xen-${MACHINE}"
-
-# Xen command line for the image
-BOOT_WRAPPER_AARCH64_XEN_CMDLINE ??= "noreboot dom0_mem=256M"
-
-BOOT_WRAPPER_AARCH64_XEN_CMDLINE:gem5-arm64 = "noreboot dom0_mem=256M console=dtuart \
- dtuart=/uart@1c090000 bootscrub=0"
-
-# Fix command line in the axf file for gem5-arm64 when Xen is present
-BOOT_WRAPPER_AARCH64_CMDLINE_xen:gem5-arm64 = "console=hvc0 root=/dev/vda rw"
-
-# Image generated by boot wrapper when Xen is present
-BOOT_WRAPPER_AARCH64_IMAGE:xen ?= "xen-system.axf"
-
-EXTRA_OECONF:append:xen = " \
---with-xen=${WORKDIR}/kernel/arch/arm64/boot/Image \
---with-xen-cmdline="" \
-"
-
-EXTRA_OEMAKE:append:xen = " \
-XEN_IMAGE=${DEPLOY_DIR_IMAGE}/${BOOT_WRAPPER_AARCH64_XEN} \
-XEN_CMDLINE="${BOOT_WRAPPER_AARCH64_XEN_CMDLINE}" \
-"
-
-# We need xen if it is activated
-do_deploy[depends] += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'xen:do_deploy', '', d)}"
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend
deleted file mode 100644
index 5c38bdd..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-devtools/gem5/gem5-aarch64-native_20.bbappend
+++ /dev/null
@@ -1,7 +0,0 @@
-# When booting gem5-arm64 with Xen we need to set the cpu as Cortex A53 and
-# remove support for pointer authentification
-GEM5_RUN_EXTRA:append = " \
-${@bb.utils.contains('DISTRO_FEATURES_NATIVE', 'xen', \
-'--param=system.cpu_cluster[0].cpus[0].isa[0].midr=0x410fd030 \
---param=system.cpu_cluster[0].cpus[0].isa[0].id_aa64isar1_el1=0x0', \
-'', d)}"
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/files/gem5-arm64/early-printk.cfg b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/files/gem5-arm64/early-printk.cfg
deleted file mode 100644
index e89e546..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/files/gem5-arm64/early-printk.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_DEBUG=y
-CONFIG_EARLY_PRINTK_VEXPRESS=y
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/xen_%.bbappend b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/xen_%.bbappend
deleted file mode 100644
index 6ee4dbd..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-extended/xen/xen_%.bbappend
+++ /dev/null
@@ -1,4 +0,0 @@
-# gem5-arm64 support
-COMPATIBLE_MACHINE:gem5-arm64 = "gem5-arm64"
-FILESEXTRAPATHS:prepend:gem5-arm64 := "${THISDIR}/files:"
-SRC_URI:append:gem5-arm64 = " file://early-printk.cfg"
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/linux-%.bbappend b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/linux-%.bbappend
deleted file mode 100644
index 7ff3fe2..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/linux-%.bbappend
+++ /dev/null
@@ -1,14 +0,0 @@
-FILESEXTRAPATHS:prepend:gem5-arm64 := "${THISDIR}:"
-
-#
-# virtualization kmeta extra
-#
-SRC_URI:append:gem5-arm64 = " file://virtualization-kmeta-extra-gem5;type=kmeta;name=virtualization-kmeta-extra-gem5;destsuffix=virtualization-kmeta-extra-gem5"
-
-# We need to turn off SVE support in the Linux kernel otherwise Xen is stopping
-# Linux kernel with a coredump while trying to access XEN bit of CPACR1 core
-# register.
-LINUX_VIRTUALIZATION_DISABLE_ARM64_SVE:gem5-arm64 = "${@bb.utils.contains('DISTRO_FEATURES', \
- 'xen', ' features/disable-arm64-sve.scc','',d)}"
-
-KERNEL_FEATURES:append:gem5-arm64 = "${LINUX_VIRTUALIZATION_DISABLE_ARM64_SVE}"
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.cfg b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.cfg
deleted file mode 100644
index 7e87cab..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-# We need to turn off SVE support in the Linux kernel otherwise Xen is stopping
-# Linux kernel with a coredump while trying to access ZEN bit of CPACR1 core
-# register.
-# CONFIG_ARM64_SVE is not set
diff --git a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.scc b/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.scc
deleted file mode 100644
index 6bc769c..0000000
--- a/meta-arm/meta-gem5/dynamic-layers/meta-virtualization/recipes-kernel/linux/virtualization-kmeta-extra-gem5/features/disable-arm64-sve.scc
+++ /dev/null
@@ -1,3 +0,0 @@
-define KFEATURE_DESCRIPTION "Disable SVE support"
-
-kconf non-hardware disable-arm64-sve.cfg
diff --git a/meta-arm/meta-gem5/recipes-bsp/boot-wrapper-aarch64/boot-wrapper-aarch64_%.bbappend b/meta-arm/meta-gem5/recipes-bsp/boot-wrapper-aarch64/boot-wrapper-aarch64_%.bbappend
deleted file mode 100644
index 3dd2cba..0000000
--- a/meta-arm/meta-gem5/recipes-bsp/boot-wrapper-aarch64/boot-wrapper-aarch64_%.bbappend
+++ /dev/null
@@ -1,16 +0,0 @@
-# Gem5 aarch64 support
-COMPATIBLE_MACHINE:gem5-arm64 = "gem5-arm64"
-
-PROVIDES:gem5-arm64 += "virtual/gem5-bootloader"
-
-# For gem5 we use the dtb generated by gem5 directly
-DEPENDS:append:gem5-arm64 = " gem5-aarch64-dtb"
-BOOT_WRAPPER_AARCH64_DEVICETREE:gem5-arm64 = "gem5-aarch64.dtb"
-
-# The dtb must be generated for us to generate the axf
-DEPLOY_DEPEND_LIST ?= ""
-DEPLOY_DEPEND_LIST:gem5-arm64 = " gem5-aarch64-dtb:do_deploy"
-do_deploy[depends] += "${DEPLOY_DEPEND_LIST}"
-
-# The base recipe has been upgraded, so hold back at known working revision
-SRCREV = "8d5a765251d9113c3c0f9fa14de42a9e7486fe8a"
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/files/mapping.patch b/meta-arm/meta-gem5/recipes-devtools/gem5/files/mapping.patch
deleted file mode 100644
index 3a7cb43..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/files/mapping.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 89958f7f30ec722e30e1bcffdeab547c874fa475 Mon Sep 17 00:00:00 2001
-From: Adrian Herrera <adrian.herrera@arm.com>
-Date: Mon, 15 Mar 2021 13:14:44 +0000
-Subject: [PATCH] python: debug, fix Mapping import
-
-Change "collections.Mapping" to "collections.abc.Mapping".
-"collections.Mapping" was an alias, it is deprecated starting from Python 3.3, and it will be removed in Python 3.10.
-
-Change-Id: Ic257e3c5206eb3d48d4eed85a93fac48bd3b8dc4
-Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
-Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/43023
-Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
-Maintainer: Jason Lowe-Power <power.jg@gmail.com>
-Tested-by: kokoro <noreply+kokoro@google.com>
----
- src/python/m5/debug.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/python/m5/debug.py b/src/python/m5/debug.py
-index d808850cc..787a39ece 100644
---- a/src/python/m5/debug.py
-+++ b/src/python/m5/debug.py
-@@ -26,7 +26,7 @@
-
- from __future__ import print_function
-
--from collections import Mapping
-+from collections.abc import Mapping
-
- import _m5.debug
- from _m5.debug import SimpleFlag, CompoundFlag
---
-2.25.1
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/files/start-gem5.sh b/meta-arm/meta-gem5/recipes-devtools/gem5/files/start-gem5.sh
deleted file mode 100644
index 6335411..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/files/start-gem5.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/bash
-
-# Get parameters from bitbake configuration
-
-source <(bitbake -e gem5-aarch64-native | grep \
- -e "^STAGING_.*_NATIVE=" \
- -e "^DEPLOY_DIR.*=" \
- -e "^GEM5_RUN.*=")
-
-export M5_PATH="${DEPLOY_DIR_IMAGE}"
-
-args=""
-
-if [ -n "${GEM5_RUN_KERNEL}" ]; then
- kernfile=$(readlink -f ${DEPLOY_DIR_IMAGE}/${GEM5_RUN_KERNEL})
- args="$args --kernel=$kernfile"
-fi
-
-if [ -n "${GEM5_RUN_DISK}" ]; then
- diskfile=$(readlink -f ${DEPLOY_DIR_IMAGE}/${GEM5_RUN_DISK})
- args="$args --disk-image=$diskfile"
-fi
-
-if [ -n "${GEM5_RUN_DTB}" ]; then
- dtbfile=$(readlink -f ${DEPLOY_DIR_IMAGE}/${GEM5_RUN_DTB})
- args="$args --dtb=$dtbfile"
-fi
-
-if [ -n "${GEM5_RUN_CMDLINE}" ]; then
- args="$args --command-line='${GEM5_RUN_CMDLINE}'"
-fi
-
-if [ -n "${GEM5_RUN_EXTRA}" ]; then
- args="$args ${GEM5_RUN_EXTRA}"
-fi
-
-oe-run-native gem5-aarch64-native ${GEM5_RUN_CONFIG} \
- ${STAGING_DATADIR_NATIVE}/gem5/${GEM5_RUN_PROFILE} ${args} "$@"
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader.inc b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
deleted file mode 100644
index c4fd3a1..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
+++ /dev/null
@@ -1,30 +0,0 @@
-# Build instructions for gem5 custom bootloader
-
-SUMMARY = "Gem5 AARCH64 boot loader"
-LICENSE = "BSD-3-Clause"
-
-inherit deploy
-
-PROVIDES += "virtual/gem5-bootloader"
-
-COMPATIBLE_MACHINE = "gem5-arm64"
-
-BOOTLOADER_SRC_PATH ?= "${S}/system/arm/bootloader/arm64"
-
-# no configure step
-do_configure[noexec] = "1"
-
-# no install
-do_install[noexec] = "1"
-
-do_compile() {
- oe_runmake -C ${BOOTLOADER_SRC_PATH} all CROSS_COMPILE=${TARGET_PREFIX}
-}
-
-do_deploy() {
- oe_runmake -C ${BOOTLOADER_SRC_PATH} install \
- CROSS_COMPILE=${TARGET_PREFIX} DESTDIR=${DEPLOYDIR}/binaries
-}
-
-addtask deploy before do_build after do_compile
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader_20.bb b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader_20.bb
deleted file mode 100644
index 67570f6..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-bootloader_20.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-# gem5 custom bootloader
-
-require gem5-source_20.inc
-
-BPN = "gem5-aarch64-bootloader"
-
-require gem5-aarch64-bootloader.inc
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-dtb.bb b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-dtb.bb
deleted file mode 100644
index 50ac030..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-dtb.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-# Use gem5 executable to produce a dtb
-
-LICENSE = "MIT"
-
-inherit deploy
-
-DEPENDS = "gem5-aarch64-native"
-
-do_configure[noexec] = "1"
-
-do_compile() {
- # generate a dtb using gem5
- gem5.opt \
- ${STAGING_DATADIR_NATIVE}/gem5/${GEM5_RUN_PROFILE} \
- --dtb-gen
-
- if [ ! -f m5out/system.dtb ]; then
- echo "No dtb generated !!!"
- exit 1
- fi
-}
-
-do_install[noexec] = "1"
-
-do_deploy() {
- install --d ${DEPLOYDIR}
- cp m5out/system.dtb ${DEPLOYDIR}/gem5-aarch64.dtb
-}
-addtask deploy before do_build after do_compile
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native.inc b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native.inc
deleted file mode 100644
index 2fd5206..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native.inc
+++ /dev/null
@@ -1,40 +0,0 @@
-# gem5 aarch64 specific configuration
-
-# Build arm64 gem5
-GEM5_BUILD_CONFIGS ?= "build/ARM/gem5.${GEM5_BUILD_VARIANT}"
-
-SRC_URI += "file://start-gem5.sh"
-
-inherit deploy
-
-# Parameters for the start script
-
-GEM5_RUN_CONFIG ?= "gem5.${GEM5_BUILD_VARIANT}"
-
-# Linux kernel file to boot
-GEM5_RUN_KERNEL ?= "vmlinux"
-
-# Disk Image to use
-GEM5_RUN_DISK ?= "*-${MACHINE}.ext4"
-
-# DTB to use
-GEM5_RUN_DTB ?= "${@os.path.basename(d.getVar('KERNEL_DEVICETREE'))}"
-
-# Linux command line to pass
-GEM5_RUN_CMDLINE ?= "earlyprintk=pl011,0x1c090000 console=ttyAMA0 rw mem=512MB root=/dev/sda rootwait"
-
-# Extra arguments to pass to gem5
-GEM5_RUN_EXTRA ?= "--mem-size=512MB -n 4 --machine-type=VExpress_GEM5_V2"
-
-#This is required so that our binaries are in the sysroot. We need this
-# to have both gem5 required libraries and gem5 in the same sysroot.
-addtask addto_recipe_sysroot after do_populate_sysroot before do_build
-
-do_deploy[sstate-outputdirs] = "${DEPLOY_DIR_TOOLS}"
-do_deploy() {
- install -d ${DEPLOYDIR}
-
- install -m 755 ${WORKDIR}/start-gem5.sh ${DEPLOYDIR}/.
-}
-addtask deploy before do_build after do_compile
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native/0001-dev-arm-SMMUv3-enable-interrupt-interface.patch b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native/0001-dev-arm-SMMUv3-enable-interrupt-interface.patch
deleted file mode 100644
index 6d00cc2..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native/0001-dev-arm-SMMUv3-enable-interrupt-interface.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From be710c5657b03bc9a9ce18ecf7ce1956265bae47 Mon Sep 17 00:00:00 2001
-From: Adrian Herrera <adrian.herrera@arm.com>
-Date: Thu, 10 Dec 2020 18:07:21 +0000
-Subject: [PATCH] dev-arm: SMMUv3, enable interrupt interface
-
-Users can set "irq_interface_enable" to allow software to program
-SMMU_IRQ_CTRL and SMMU_IRQ_CTRLACK. This is required to boot Linux v5.4+
-in a reasonable time. Notice the model does not implement architectural
-interrupt sources, so no assertions will happen.
-
-Change-Id: Ie138befdf5a204fe8fce961081c575c2166e22b9
-Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
-Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/38555
-Tested-by: kokoro <noreply+kokoro@google.com>
-Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
-Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
-
-Upstream-Status: Accepted [https://gem5-review.googlesource.com/c/public/gem5/+/38555]
-Expected version: v20.2
----
- src/dev/arm/SMMUv3.py | 5 +++++
- src/dev/arm/smmu_v3.cc | 10 +++++++++-
- src/dev/arm/smmu_v3.hh | 4 +++-
- 3 files changed, 17 insertions(+), 2 deletions(-)
-
-diff --git a/src/dev/arm/SMMUv3.py b/src/dev/arm/SMMUv3.py
-index 29c15682bf..f57be896f9 100644
---- a/src/dev/arm/SMMUv3.py
-+++ b/src/dev/arm/SMMUv3.py
-@@ -91,6 +91,11 @@ class SMMUv3(ClockedObject):
- reg_map = Param.AddrRange('Address range for control registers')
- system = Param.System(Parent.any, "System this device is part of")
-
-+ irq_interface_enable = Param.Bool(False,
-+ "This flag enables software to program SMMU_IRQ_CTRL and "
-+ "SMMU_IRQ_CTRLACK as if the model implemented architectural "
-+ "interrupt sources")
-+
- device_interfaces = VectorParam.SMMUv3DeviceInterface([],
- "Responder interfaces")
-
-diff --git a/src/dev/arm/smmu_v3.cc b/src/dev/arm/smmu_v3.cc
-index f9bdc277c6..d73f270170 100644
---- a/src/dev/arm/smmu_v3.cc
-+++ b/src/dev/arm/smmu_v3.cc
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (c) 2013, 2018-2019 ARM Limited
-+ * Copyright (c) 2013, 2018-2020 ARM Limited
- * All rights reserved
- *
- * The license below extends only to copyright in the software and shall
-@@ -58,6 +58,7 @@ SMMUv3::SMMUv3(SMMUv3Params *params) :
- requestPort(name() + ".request", *this),
- tableWalkPort(name() + ".walker", *this),
- controlPort(name() + ".control", *this, params->reg_map),
-+ irqInterfaceEnable(params->irq_interface_enable),
- tlb(params->tlb_entries, params->tlb_assoc, params->tlb_policy),
- configCache(params->cfg_entries, params->cfg_assoc, params->cfg_policy),
- ipaCache(params->ipa_entries, params->ipa_assoc, params->ipa_policy),
-@@ -626,6 +627,13 @@ SMMUv3::writeControl(PacketPtr pkt)
- assert(pkt->getSize() == sizeof(uint32_t));
- regs.cr0 = regs.cr0ack = pkt->getLE<uint32_t>();
- break;
-+ case offsetof(SMMURegs, irq_ctrl):
-+ assert(pkt->getSize() == sizeof(uint32_t));
-+ if (irqInterfaceEnable) {
-+ warn("SMMUv3::%s No support for interrupt sources", __func__);
-+ regs.irq_ctrl = regs.irq_ctrlack = pkt->getLE<uint32_t>();
-+ }
-+ break;
-
- case offsetof(SMMURegs, cr1):
- case offsetof(SMMURegs, cr2):
-diff --git a/src/dev/arm/smmu_v3.hh b/src/dev/arm/smmu_v3.hh
-index 6b3f3982b8..a001d71178 100644
---- a/src/dev/arm/smmu_v3.hh
-+++ b/src/dev/arm/smmu_v3.hh
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (c) 2013, 2018-2019 ARM Limited
-+ * Copyright (c) 2013, 2018-2020 ARM Limited
- * All rights reserved
- *
- * The license below extends only to copyright in the software and shall
-@@ -94,6 +94,8 @@ class SMMUv3 : public ClockedObject
- SMMUTableWalkPort tableWalkPort;
- SMMUControlPort controlPort;
-
-+ const bool irqInterfaceEnable;
-+
- ARMArchTLB tlb;
- ConfigCache configCache;
- IPACache ipaCache;
---
-2.17.1
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native_20.bb b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native_20.bb
deleted file mode 100644
index 057aad8..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-aarch64-native_20.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-require gem5-source_20.inc
-
-SRC_URI += "file://0001-dev-arm-SMMUv3-enable-interrupt-interface.patch"
-
-BPN = "gem5-aarch64-native"
-
-require gem5-aarch64-native.inc
-require gem5-native.inc
-
-# Get rid of compiler errors when building protobuf
-GEM5_SCONS_ARGS:append = " CCFLAGS_EXTRA='-Wno-error=unused-variable' --verbose"
-
-# Get rid of linker errors and have a faster link process
-GEM5_SCONS_ARGS:append = " LDFLAGS_EXTRA='${BUILD_LDFLAGS}' \
-MARSHAL_LDFLAGS_EXTRA='${BUILD_LDFLAGS}' --force-lto "
-
-do_compile:prepend() {
- # Gem5 expect to have python in the path (can be python2 or 3)
- # Create a link named python to python3
- real=$(which ${PYTHON})
- ln -snf $real $(dirname $real)/python
-}
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops/0001-util-m5ops-optional-extra-build-flags.patch b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops/0001-util-m5ops-optional-extra-build-flags.patch
deleted file mode 100644
index b446a2f..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops/0001-util-m5ops-optional-extra-build-flags.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 32e35a2f179d1b036d2eb699d77f869f7787f36b Mon Sep 17 00:00:00 2001
-From: Adrian Herrera <adrian.herrera@arm.com>
-Date: Tue, 8 Dec 2020 20:12:55 +0000
-Subject: [PATCH] util: m5ops, optional extra build flags
-
-This increases compilation control for users. Main use case is building
-m5ops as part of an image distribution. Specifying a different sysroot
-or dynamic linker may be required when the cross toolchain is built as
-part of the process.
-
-Change-Id: Icbd3faa92ea6e084fc4a9b2db83129bce73faf21
-Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
-Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/38416
-Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
-Reviewed-by: Gabe Black <gabe.black@gmail.com>
-Maintainer: Jason Lowe-Power <power.jg@gmail.com>
-Tested-by: kokoro <noreply+kokoro@google.com>
-
-Upstream-Status: Accepted [https://gem5-review.googlesource.com/c/public/gem5/+/38416]
-Expected version: v20.2
----
- util/m5/SConstruct | 14 +++++++++++---
- 1 file changed, 11 insertions(+), 3 deletions(-)
-
-diff --git a/util/m5/SConstruct b/util/m5/SConstruct
-index bbae8d9bbf..a37573d763 100644
---- a/util/m5/SConstruct
-+++ b/util/m5/SConstruct
-@@ -136,16 +136,24 @@ for root, dirs, files in os.walk(abspath(src_dir)):
- #
- # This also considers scons command line settings which may look like
- # environment variables, but are set after "scons" on the command line.
-- def get_abi_opt(name, default):
-+ def _extract_abi_opt_val(name, default):
- var_name = env.subst('${ABI}.%s' % name)
-- env[name] = os.environ.get(
-- var_name, ARGUMENTS.get(var_name, default))
-+ return os.environ.get(var_name, ARGUMENTS.get(var_name, default))
-+ def get_abi_opt(name, default):
-+ env[name] = _extract_abi_opt_val(name, default)
-+ def append_abi_opt(name):
-+ env.Append(**{ name: _extract_abi_opt_val(name, '') })
-
- # Process the ABI's settings in the SConsopts file, storing them
- # in a copy of the primary environment.
- env.SConscript(Dir(root).File('SConsopts'),
- exports=[ 'env', 'get_abi_opt' ])
-
-+ # The user can pass extra build flags for each ABI
-+ append_abi_opt('CCFLAGS')
-+ append_abi_opt('CXXFLAGS')
-+ append_abi_opt('LINKFLAGS')
-+
- # Once all the options have been configured, set up build targets for
- # this abi.
- abi_dir = build_dir.Dir(env.subst('${ABI}'))
---
-2.17.1
-
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops_20.bb b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops_20.bb
deleted file mode 100644
index d55ed85..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5ops_20.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-require gem5-source_20.inc
-inherit scons
-
-HOMEPAGE = "https://www.gem5.org/documentation/general_docs/m5ops"
-SUMMARY = "m5ops provide pseudo-instructions to trigger gem5 functionality"
-LICENSE = "BSD-3-Clause"
-
-M5OPS_DIR = "util/m5"
-
-SRC_URI += "file://0001-util-m5ops-optional-extra-build-flags.patch"
-
-OUT_DIR = "build/${TARGET_ARCH}/out"
-
-EXTRA_OESCONS += "${TARGET_ARCH}.CROSS_COMPILE=${TARGET_PREFIX} \
- ${TARGET_ARCH}.CCFLAGS=--sysroot=${STAGING_DIR_TARGET} \
- ${TARGET_ARCH}.LINKFLAGS=--sysroot=${STAGING_DIR_TARGET} \
- -C ${S}/${M5OPS_DIR} ${OUT_DIR}/m5"
-
-# The SConstruct file for m5ops does not provide a "install" target
-# We do the install process within the recipe
-do_install() {
- install -d ${D}${bindir} ${D}${libdir} ${D}${includedir}
- install -m 755 ${B}/${M5OPS_DIR}/${OUT_DIR}/m5 ${D}${bindir}
- install -m 644 ${B}/${M5OPS_DIR}/${OUT_DIR}/libm5.a ${D}${libdir}
- install -m 644 ${B}/include/gem5/m5ops.h ${D}${includedir}
-}
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term-native_20.bb b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term-native_20.bb
deleted file mode 100644
index b91dbbc..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term-native_20.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-require gem5-source_20.inc
-
-SUMMARY = "m5term allows users to connect to gem5's simulated console"
-HOMEPAGE = "https://www.gem5.org/documentation/general_docs/fullsystem/m5term"
-LICENSE = "BSD-3-Clause"
-
-inherit native
-
-M5TERM_DIR = "util/term"
-
-SRC_URI += "file://0001-add-makefile-flags.patch"
-
-do_compile() {
- oe_runmake -C ${S}/${M5TERM_DIR}
-}
-
-# The Makefile for m5term does not provide a "install" target
-# We do the install process within the recipe
-do_install() {
- install -d ${D}${bindir}
- install -m 755 ${B}/${M5TERM_DIR}/m5term ${D}${bindir}
-}
-
-addtask addto_recipe_sysroot before do_build
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term/0001-add-makefile-flags.patch b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term/0001-add-makefile-flags.patch
deleted file mode 100644
index d13ef4c..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-m5term/0001-add-makefile-flags.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 688f7103e08318edbd48cf830c0ab3a048761bbb Mon Sep 17 00:00:00 2001
-From: Adrian Herrera <adrian.herrera@arm.com>
-Date: Thu, 03 Dec 2020 16:45:59 +0000
-Subject: [PATCH] util: m5term, fix LDFLAGS, standard make variables
-
-Enables build systems to provide necessary flags to build m5term.
-Useful specially if a different linker is intended to be used.
-
-Change-Id: If7f867cc0965d6ad4627b5421e00a99cc3d64989
-Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
-
-Upstream-Status: Accepted [https://gem5-review.googlesource.com/c/public/gem5/+/38256]
-Expected version: v20.2
----
-
-diff --git a/util/term/Makefile b/util/term/Makefile
-index 658b961..4aa1c52 100644
---- a/util/term/Makefile
-+++ b/util/term/Makefile
-@@ -24,12 +24,12 @@
- # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
--CCFLAGS= -g -O0
-+CFLAGS ?= -g -O0
-
- default: m5term
-
- m5term: term.c
-- $(CC) $(LFLAGS) -o $@ $^
-+ $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
-
- install: m5term
- $(SUDO) install -o root -m 555 m5term /usr/local/bin
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-native.inc b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-native.inc
deleted file mode 100644
index 91a554b..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-native.inc
+++ /dev/null
@@ -1,52 +0,0 @@
-# gem5 platform independent build information
-
-SUMMARY = "A modular platform for computer-system architecture research"
-HOMEPAGE = "http://gem5.org"
-LICENSE = "BSD-3-Clause & MIT & LGPL-2.1-only"
-
-# Gem5 build and run parameter
-
-# See http://www.gem5.org/documentation/general_docs/building for the list of variants
-GEM5_BUILD_VARIANT ?= "opt"
-
-# What gem5 binary are we building
-GEM5_BUILD_CONFIGS ?= "build/X86/gem5.{GEM5_BUILD_VARIANT}"
-
-# Scons build arguments
-GEM5_SCONS_ARGS ?= "CC=${BUILD_CC} CXX=${BUILD_CXX} \
- AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS} \
- PYTHON_CONFIG=python3-config"
-
-# Default profile to run
-GEM5_RUN_PROFILE ?= "configs/example/fs.py"
-
-# We are building a native package and we need to use scons
-inherit scons native
-
-# the build is using several tools:
-# python3: scons and six
-# google protobuf
-# pkgconfig
-# hdf5
-DEPENDS += "m4-native python3-six-native protobuf-native hdf5-native pkgconfig-native \
- boost-native libpng-native"
-
-EXTRA_OESCONS = "${GEM5_SCONS_ARGS}"
-
-do_install() {
-
- install -d ${D}${datadir}/gem5
- cp -a --no-preserve=ownership -rf configs ${D}${datadir}/gem5/.
-
- for f in ${GEM5_BUILD_CONFIGS}; do
- destname=$(basename $f)
- install -d ${D}${bindir}
- install -m 755 $f ${D}${bindir}/$destname
- done
-}
-
-FILES:${PN} = "${datadir}/gem5/* ${bindir}/*"
-INSANE_SKIP:${PN} += "already-stripped"
-RDEPENDS:${PN} += "python3-native hdf5-native protobuf-native libpng-native"
-
-addtask addto_recipe_sysroot before do_build
diff --git a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-source_20.inc b/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-source_20.inc
deleted file mode 100644
index bf448fe..0000000
--- a/meta-arm/meta-gem5/recipes-devtools/gem5/gem5-source_20.inc
+++ /dev/null
@@ -1,11 +0,0 @@
-LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
- file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"
-
-SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;nobranch=1 \
- file://mapping.patch"
-RELEASE_TAG = "v20.1.0.5"
-SRCREV = "31cd81fdec46bae4b48d4f3788776936389dbdec"
-
-PV = "${RELEASE_TAG}"
-
-S = "${WORKDIR}/git"
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/0001-lib-build_OID_registry-fix-reproducibility-issues.patch b/meta-arm/meta-gem5/recipes-kernel/linux/files/0001-lib-build_OID_registry-fix-reproducibility-issues.patch
deleted file mode 100644
index 4c95a41..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/0001-lib-build_OID_registry-fix-reproducibility-issues.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From f678d79b3bede48c9e095e6e9c46bd3542f23077 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@gmail.com>
-Date: Sun, 10 Jul 2022 22:56:53 -0400
-Subject: [PATCH 1/2] lib/build_OID_registry: fix reproducibility issues
-
-The script build_OID_registry captures the full path of itself
-in the generated data. This causes reproduciblity issues as the
-path is captured and packaged.
-
-We use the basename of the script instead, and that allows us
-to be reprodicible, with slightly less information captured in
-the output data (but the generating script can still easily
-be found).
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
----
- lib/build_OID_registry | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/lib/build_OID_registry b/lib/build_OID_registry
-index d7fc32ea8ac2..f6de0a7f7457 100755
---- a/lib/build_OID_registry
-+++ b/lib/build_OID_registry
-@@ -8,6 +8,7 @@
- #
-
- use strict;
-+use File::Basename;
-
- my @names = ();
- my @oids = ();
-@@ -35,7 +36,7 @@ close IN_FILE || die;
- #
- open C_FILE, ">$ARGV[1]" or die;
- print C_FILE "/*\n";
--print C_FILE " * Automatically generated by ", $0, ". Do not edit\n";
-+print C_FILE " * Automatically generated by ", basename $0, ". Do not edit\n";
- print C_FILE " */\n";
-
- #
---
-2.34.1
-
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/0002-vt-conmakehash-improve-reproducibility.patch b/meta-arm/meta-gem5/recipes-kernel/linux/files/0002-vt-conmakehash-improve-reproducibility.patch
deleted file mode 100644
index 74156af..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/0002-vt-conmakehash-improve-reproducibility.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 10a09290f97d0435b9b304d3ef980b0cafa87bd2 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@gmail.com>
-Date: Sun, 10 Jul 2022 21:37:07 -0400
-Subject: [PATCH 2/2] vt/conmakehash: improve reproducibility
-
-The file generated by conmakehash capture the application
-path used to generate the file. While that can be informative,
-it varies based on where the kernel was built, as the full
-path is captured.
-
-We tweak the application to use a second input as the "capture
-name", and then modify the Makefile to pass the basename of
-the source, making it reproducible.
-
-This could be improved by using some sort of path mapping,
-or the application manipualing argv[1] itself, but for now
-this solves the reprodicibility issue.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
----
- drivers/tty/vt/Makefile | 2 +-
- scripts/conmakehash.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/tty/vt/Makefile b/drivers/tty/vt/Makefile
-index edbbe0ccdb83..19e21968f8de 100644
---- a/drivers/tty/vt/Makefile
-+++ b/drivers/tty/vt/Makefile
-@@ -13,7 +13,7 @@ obj-$(CONFIG_HW_CONSOLE) += vt.o defkeymap.o
- clean-files := consolemap_deftbl.c defkeymap.c
-
- quiet_cmd_conmk = CONMK $@
-- cmd_conmk = scripts/conmakehash $< > $@
-+ cmd_conmk = scripts/conmakehash $< $(shell basename $<) > $@
-
- $(obj)/consolemap_deftbl.c: $(src)/$(FONTMAPFILE)
- $(call cmd,conmk)
-diff --git a/scripts/conmakehash.c b/scripts/conmakehash.c
-index cddd789fe46e..d62510b280e9 100644
---- a/scripts/conmakehash.c
-+++ b/scripts/conmakehash.c
-@@ -253,7 +253,7 @@ int main(int argc, char *argv[])
- #include <linux/types.h>\n\
- \n\
- u8 dfont_unicount[%d] = \n\
--{\n\t", argv[1], fontlen);
-+{\n\t", argv[2], fontlen);
-
- for ( i = 0 ; i < fontlen ; i++ )
- {
---
-2.34.1
-
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_1cpu.dts b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_1cpu.dts
deleted file mode 100644
index 0e59fdf..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_1cpu.dts
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (c) 2015-2016 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/dts-v1/;
-
-/memreserve/ 0x80000000 0x00010000;
-
-/include/ "vexpress_gem5_v2.dtsi"
-
-/ {
- model = "V2P-AARCH64";
- compatible = "arm,vexpress,v2p-aarch64", "arm,vexpress";
-
- memory@80000000 {
- device_type = "memory";
- reg = <0 0x80000000 0x4 0x00000000>;
- };
-
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
-
- cpu@0 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 0 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- };
-
- virt-encoder {
- compatible = "drm,virtual-encoder";
- port {
- dp0_virt_input: endpoint@0 {
- remote-endpoint = <&dp0_output>;
- };
- };
-
- display-timings {
- native-mode = <&timing0>;
-
- timing0: timing_1080p60 {
- /* 1920x1080-60 */
- clock-frequency = <148500000>;
- hactive = <1920>;
- vactive = <1080>;
- hfront-porch = <148>;
- hback-porch = <88>;
- hsync-len = <44>;
- vfront-porch = <36>;
- vback-porch = <4>;
- vsync-len = <5>;
- };
- };
- };
-};
-
-&dp0 {
- status = "ok";
-
- port {
- dp0_output: endpoint@0 {
- remote-endpoint = <&dp0_virt_input>;
- };
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_2cpu.dts b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_2cpu.dts
deleted file mode 100644
index 441d3df..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_2cpu.dts
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (c) 2015-2016 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/dts-v1/;
-
-/memreserve/ 0x80000000 0x00010000;
-
-/include/ "vexpress_gem5_v2.dtsi"
-
-/ {
- model = "V2P-AARCH64";
- compatible = "arm,vexpress,v2p-aarch64", "arm,vexpress";
-
- memory@80000000 {
- device_type = "memory";
- reg = <0 0x80000000 0x4 0x00000000>;
- };
-
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
-
- cpu@0 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 0 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@1 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 1 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- };
-
- virt-encoder {
- compatible = "drm,virtual-encoder";
- port {
- dp0_virt_input: endpoint@0 {
- remote-endpoint = <&dp0_output>;
- };
- };
-
- display-timings {
- native-mode = <&timing0>;
-
- timing0: timing_1080p60 {
- /* 1920x1080-60 */
- clock-frequency = <148500000>;
- hactive = <1920>;
- vactive = <1080>;
- hfront-porch = <148>;
- hback-porch = <88>;
- hsync-len = <44>;
- vfront-porch = <36>;
- vback-porch = <4>;
- vsync-len = <5>;
- };
- };
- };
-};
-
-&dp0 {
- status = "ok";
-
- port {
- dp0_output: endpoint@0 {
- remote-endpoint = <&dp0_virt_input>;
- };
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_4cpu.dts b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_4cpu.dts
deleted file mode 100644
index 2d0311a..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_4cpu.dts
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2015-2016 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/dts-v1/;
-
-/memreserve/ 0x80000000 0x00010000;
-
-/include/ "vexpress_gem5_v2.dtsi"
-
-/ {
- model = "V2P-AARCH64";
- compatible = "arm,vexpress,v2p-aarch64", "arm,vexpress";
-
- memory@80000000 {
- device_type = "memory";
- reg = <0 0x80000000 0x4 0x00000000>;
- };
-
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
-
- cpu@0 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 0 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@1 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 1 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@2 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 2 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@3 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 3 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- };
-
- virt-encoder {
- compatible = "drm,virtual-encoder";
- port {
- dp0_virt_input: endpoint@0 {
- remote-endpoint = <&dp0_output>;
- };
- };
-
- display-timings {
- native-mode = <&timing0>;
-
- timing0: timing_1080p60 {
- /* 1920x1080-60 */
- clock-frequency = <148500000>;
- hactive = <1920>;
- vactive = <1080>;
- hfront-porch = <148>;
- hback-porch = <88>;
- hsync-len = <44>;
- vfront-porch = <36>;
- vback-porch = <4>;
- vsync-len = <5>;
- };
- };
- };
-};
-
-&dp0 {
- status = "ok";
-
- port {
- dp0_output: endpoint@0 {
- remote-endpoint = <&dp0_virt_input>;
- };
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_8cpu.dts b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_8cpu.dts
deleted file mode 100644
index ba94d07..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/armv8_gem5_v2_8cpu.dts
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Copyright (c) 2015-2016 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/dts-v1/;
-
-/memreserve/ 0x80000000 0x00010000;
-
-/include/ "vexpress_gem5_v2.dtsi"
-
-/ {
- model = "V2P-AARCH64";
- compatible = "arm,vexpress,v2p-aarch64", "arm,vexpress";
-
- memory@80000000 {
- device_type = "memory";
- reg = <0 0x80000000 0x4 0x00000000>;
- };
-
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
-
- cpu@0 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 0 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@1 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 1 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@2 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 2 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@3 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 3 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@4 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 4 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@5 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 5 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@6 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 6 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- cpu@7 {
- device_type = "cpu";
- compatible = "gem5,armv8", "arm,armv8";
- reg = < 7 >;
- enable-method = "spin-table";
- cpu-release-addr = <0 0x8000fff8>;
- };
-
- };
-
- virt-encoder {
- compatible = "drm,virtual-encoder";
- port {
- dp0_virt_input: endpoint@0 {
- remote-endpoint = <&dp0_output>;
- };
- };
-
- display-timings {
- native-mode = <&timing0>;
-
- timing0: timing_1080p60 {
- /* 1920x1080-60 */
- clock-frequency = <148500000>;
- hactive = <1920>;
- vactive = <1080>;
- hfront-porch = <148>;
- hback-porch = <88>;
- hsync-len = <44>;
- vfront-porch = <36>;
- vback-porch = <4>;
- vsync-len = <5>;
- };
- };
- };
-};
-
-&dp0 {
- status = "ok";
-
- port {
- dp0_output: endpoint@0 {
- remote-endpoint = <&dp0_virt_input>;
- };
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2.dtsi b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2.dtsi
deleted file mode 100644
index e53e6e8..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2.dtsi
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2015-2018 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/include/ "vexpress_gem5_v2_base.dtsi"
-
-/ {
- /* The display processor needs custom configuration to setup its
- * output ports. Disable it by default in the platform until the
- * DT bindings have stabilize.
- */
- dp0: hdlcd@2b000000 {
- compatible = "arm,hdlcd";
- reg = <0x0 0x2b000000 0x0 0x1000>;
- interrupts = <0 63 4>;
- clocks = <&osc_pxl>;
- clock-names = "pxlclk";
- status = "disabled";
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2_base.dtsi b/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2_base.dtsi
deleted file mode 100644
index eba0db2..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/dts/gem5-arm64/vexpress_gem5_v2_base.dtsi
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * Copyright (c) 2015-2017, 2019 ARM Limited
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andreas Sandberg
- */
-
-/ {
- arm,hbi = <0x0>;
- arm,vexpress,site = <0xf>;
- interrupt-parent = <&gic>;
- #address-cells = <2>;
- #size-cells = <2>;
-
- gic: interrupt-controller@2c000000 {
- compatible = "arm,gic-v3";
- #interrupt-cells = <0x3>;
- #address-cells = <0x2>;
- ranges;
- interrupt-controller;
- redistributor-stride = <0x0 0x40000>; // 256kB stride
- reg = <0x0 0x2c000000 0x0 0x10000
- 0x0 0x2c010000 0x0 0x2000000 // room for 128 redistributors using 128K each (256K strided...)
- 0x0 0x0 0x0 0x0>;
- interrupts = <1 9 0xf04>;
- #size-cells = <0x2>;
- linux,phandle = <0x1>;
- phandle = <0x1>;
-
- gic-its@2e010000 {
- compatible = "arm,gic-v3-its";
- msi-controller;
- #msi-cells = <1>;
- reg = <0x0 0x2e010000 0 0x20000>;
- };
- };
-
- timer {
- compatible = "arm,cortex-a15-timer",
- "arm,armv7-timer";
- interrupts = <1 13 0xf08>,
- <1 14 0xf08>,
- <1 11 0xf08>,
- <1 10 0xf08>;
- clocks = <&osc_sys>;
- clock-names="apb_pclk";
- };
-
- pci {
- compatible = "pci-host-ecam-generic";
- device_type = "pci";
- #address-cells = <0x3>;
- #size-cells = <0x2>;
- #interrupt-cells = <0x1>;
-
- reg = <0x0 0x30000000 0x0 0x10000000>;
-
- ranges = <0x01000000 0x0 0x00000000 0x0 0x2f000000 0x0 0x00010000>,
- <0x02000000 0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>;
-
- /*
- child unit address, #cells = #address-cells
- child interrupt specifier, #cells = #interrupt-cells (INTA = 1, INTB = 2, INTC = 3 and INTD = 4)
- interrupt-parent, phandle
- parent unit address, #cells = #address-cells@gic
- parent interrupt specifier, #cells = #interrupt-cells@gic
- */
- interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x44 0x1
- 0x800 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x45 0x1
- 0x1000 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x46 0x1
- 0x1800 0x0 0x0 0x1 &gic 0x0 0x0 0x0 0x47 0x1>;
-
- interrupt-map-mask = <0x001800 0x0 0x0 0x0>;
- dma-coherent;
- };
-
- kmi@1c060000 {
- compatible = "arm,pl050", "arm,primecell";
- reg = <0x0 0x1c060000 0x0 0x1000>;
- interrupts = <0 12 4>;
- clocks = <&v2m_clk24mhz>, <&osc_smb>;
- clock-names = "KMIREFCLK", "apb_pclk";
- };
-
- kmi@1c070000 {
- compatible = "arm,pl050", "arm,primecell";
- reg = <0x0 0x1c070000 0x0 0x1000>;
- interrupts = <0 13 4>;
- clocks = <&v2m_clk24mhz>, <&osc_smb>;
- clock-names = "KMIREFCLK", "apb_pclk";
- };
-
- uart0: uart@1c090000 {
- compatible = "arm,pl011", "arm,primecell";
- reg = <0x0 0x1c090000 0x0 0x1000>;
- interrupts = <0 5 4>;
- clocks = <&osc_peripheral>, <&osc_smb>;
- clock-names = "uartclk", "apb_pclk";
- };
-
- rtc@1c170000 {
- compatible = "arm,pl031", "arm,primecell";
- reg = <0x0 0x1c170000 0x0 0x1000>;
- interrupts = <0 4 4>;
- clocks = <&osc_smb>;
- clock-names = "apb_pclk";
- };
-
- v2m_clk24mhz: clk24mhz {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <24000000>;
- clock-output-names = "v2m:clk24mhz";
- };
-
-
- v2m_sysreg: sysreg@1c010000 {
- compatible = "arm,vexpress-sysreg";
- reg = <0 0x1c010000 0x0 0x1000>;
- gpio-controller;
- #gpio-cells = <2>;
- };
-
- vio@1c130000 {
- compatible = "virtio,mmio";
- reg = <0 0x1c130000 0x0 0x1000>;
- interrupts = <0 42 4>;
- };
-
- vio@1c140000 {
- compatible = "virtio,mmio";
- reg = <0 0x1c140000 0x0 0x1000>;
- interrupts = <0 43 4>;
- };
-
- dcc {
- compatible = "arm,vexpress,config-bus";
- arm,vexpress,config-bridge = <&v2m_sysreg>;
-
- osc_pxl: osc@5 {
- compatible = "arm,vexpress-osc";
- arm,vexpress-sysreg,func = <1 5>;
- freq-range = <23750000 1000000000>;
- #clock-cells = <0>;
- clock-output-names = "oscclk5";
- };
-
- osc_smb: osc@6 {
- compatible = "arm,vexpress-osc";
- arm,vexpress-sysreg,func = <1 6>;
- freq-range = <20000000 50000000>;
- #clock-cells = <0>;
- clock-output-names = "oscclk6";
- };
-
- osc_sys: osc@7 {
- compatible = "arm,vexpress-osc";
- arm,vexpress-sysreg,func = <1 7>;
- freq-range = <20000000 60000000>;
- #clock-cells = <0>;
- clock-output-names = "oscclk7";
- };
- };
-
-
- mcc {
- compatible = "arm,vexpress,config-bus";
- arm,vexpress,config-bridge = <&v2m_sysreg>;
- arm,vexpress,site = <0>;
-
- osc_peripheral: osc@2 {
- compatible = "arm,vexpress-osc";
- arm,vexpress-sysreg,func = <1 2>;
- freq-range = <24000000 24000000>;
- #clock-cells = <0>;
- clock-output-names = "v2m:oscclk2";
- };
- };
-};
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/files/init_disassemble_info-signature-changes-causes-compile-failures.patch b/meta-arm/meta-gem5/recipes-kernel/linux/files/init_disassemble_info-signature-changes-causes-compile-failures.patch
deleted file mode 100644
index 3d7ac92..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/files/init_disassemble_info-signature-changes-causes-compile-failures.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 4af28e8e58b6c461a3b85960b222dade8b6891ce Mon Sep 17 00:00:00 2001
-From: Andres Freund <andres@anarazel.de>
-Date: Wed, 22 Jun 2022 11:19:18 -0700
-Subject: [PATCH] init_disassemble_info() signature changes causes compile
- failures
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Hi,
-
-binutils changed the signature of init_disassemble_info(), which now causes
-perf and bpftool to fail to compile (e.g. on debian unstable).
-
-Relevant binutils commit: https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=60a3da00bd5407f07d64dff82a4dae98230dfaac
-
-util/annotate.c: In function ‘symbol__disassemble_bpf’:
-util/annotate.c:1765:9: error: too few arguments to function ‘init_disassemble_info’
- 1765 | init_disassemble_info(&info, s,
- | ^~~~~~~~~~~~~~~~~~~~~
-In file included from util/annotate.c:1718:
-/usr/include/dis-asm.h:472:13: note: declared here
- 472 | extern void init_disassemble_info (struct disassemble_info *dinfo, void *stream,
- | ^~~~~~~~~~~~~~~~~~~~~
-
-with equivalent failures in
-
-tools/bpf/bpf_jit_disasm.c
-tools/bpf/bpftool/jit_disasm.c
-
-The fix is easy enough, add a wrapper around fprintf() that conforms to the
-new signature.
-
-However I assume the necessary feature test and wrapper should only be added
-once? I don't know the kernel stuff well enough to choose the right structure
-here.
-
-Attached is my local fix for perf. Obviously would need work to be a real
-solution.
-
-Greetings,
-
-Andres Freund
----
-
-binutils 2.39 changed the signature of init_disassemble_info(),
-which now causes perf and bpftool to fail to compile.
-
-Relevant binutils commit: [1]
-
-There is a proper fix in development upstream[2].
-This is a work-around for older kernels.
-
-[1] https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=60a3da00bd5407f07d64dff82a4dae98230dfaac
-[2] https://patchwork.kernel.org/project/netdevbpf/cover/20220801013834.156015-1-andres@anarazel.de/
-
-Upstream-Status: Pending
-Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
-
-
- tools/perf/util/annotate.c | 15 ++++++++++++++-
- 1 file changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
-index 0c5e4ce390ef..1151c029f714 100644
---- a/tools/perf/util/annotate.c
-+++ b/tools/perf/util/annotate.c
-@@ -1708,6 +1708,18 @@ static int dso__disassemble_filename(struct dso *dso, char *filename, size_t fil
- #include <bfd.h>
- #include <dis-asm.h>
-
-+static int fprintf_styled(void *, enum disassembler_style, const char* fmt, ...)
-+{
-+ va_list args;
-+ int r;
-+
-+ va_start(args, fmt);
-+ r = vprintf(fmt, args);
-+ va_end(args);
-+
-+ return r;
-+}
-+
- static int symbol__disassemble_bpf(struct symbol *sym,
- struct annotate_args *args)
- {
-@@ -1750,7 +1762,8 @@ static int symbol__disassemble_bpf(struct symbol *sym,
- goto out;
- }
- init_disassemble_info(&info, s,
-- (fprintf_ftype) fprintf);
-+ (fprintf_ftype) fprintf,
-+ fprintf_styled);
-
- info.arch = bfd_get_arch(bfdf);
- info.mach = bfd_get_mach(bfdf);
---
-2.30.2
-
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64-standard.scc b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64-standard.scc
deleted file mode 100644
index 0fb69e4..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64-standard.scc
+++ /dev/null
@@ -1,11 +0,0 @@
-define KMACHINE gem5-arm64
-define KTYPE standard
-define KARCH arm64
-
-include ktypes/standard/standard.scc
-
-include gem5-arm64.scc
-
-# default policy for standard kernels
-#include features/latencytop/latencytop.scc
-#include features/profiling/profiling.scc
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64.scc b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64.scc
deleted file mode 100644
index a24a3af..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64.scc
+++ /dev/null
@@ -1,14 +0,0 @@
-include features/input/input.scc
-include features/net/net.scc
-include cfg/timer/no_hz.scc
-
-kconf hardware gem5-arm64/gem5-arm64-board.cfg
-kconf hardware gem5-arm64/gem5-arm64-drm.cfg
-kconf hardware gem5-arm64/gem5-arm64-net.cfg
-kconf hardware gem5-arm64/gem5-arm64-rtc.cfg
-kconf hardware gem5-arm64/gem5-arm64-serial.cfg
-kconf hardware gem5-arm64/gem5-arm64-virtio.cfg
-kconf hardware gem5-arm64/gem5-arm64-cfi.cfg
-kconf hardware gem5-arm64/gem5-arm64-virtio.cfg
-kconf hardware gem5-arm64/gem5-arm64-pci.cfg
-kconf hardware gem5-arm64/gem5-arm64-pata.cfg
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-board.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-board.cfg
deleted file mode 100644
index 56bb9e6..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-board.cfg
+++ /dev/null
@@ -1,23 +0,0 @@
-CONFIG_ARM64=y
-CONFIG_ARCH_VEXPRESS=y
-CONFIG_SMP=y
-CONFIG_NR_CPUS=256
-CONFIG_HOTPLUG_CPU=y
-
-CONFIG_REGULATOR=y
-CONFIG_REGULATOR_FIXED_VOLTAGE=y
-
-CONFIG_CPU_IDLE=y
-CONFIG_ARM_CPUIDLE=y
-
-CONFIG_VEXPRESS_CONFIG=y
-
-# Keyboard over AMBA
-CONFIG_SERIO=y
-CONFIG_SERIO_AMBAKMI=y
-
-CONFIG_MFD_VEXPRESS_SYSREG=y
-
-# Turn off RAID to speed up boot
-CONFIG_MD=n
-CONFIG_BTRFS_FS=n
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-cfi.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-cfi.cfg
deleted file mode 100644
index f28e0d9..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-cfi.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-# CFI Flash
-CONFIG_MTD=y
-CONFIG_MTD_CFI=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-drm.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-drm.cfg
deleted file mode 100644
index 34b0141..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-drm.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-CONFIG_DRM=y
-CONFIG_DRM_HDLCD=y
-CONFIG_FB=y
-CONFIG_FB_ARMCLCD=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-net.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-net.cfg
deleted file mode 100644
index 54e3686..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-net.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_SMSC911X=y
-CONFIG_SMC91X=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pata.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pata.cfg
deleted file mode 100644
index 6272288..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pata.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
-CONFIG_ATA=y
-CONFIG_ATA_GENERIC=y
-CONFIG_PATA_PLATFORM=y
-CONFIG_PATA_OF_PLATFORM=y
-CONFIG_SATA_AHCI=y
-CONFIG_SATA_AHCI_PLATFORM=y
-CONFIG_ATA_PIIX=y
-CONFIG_PATA_OLDPIIX=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_SG=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pci.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pci.cfg
deleted file mode 100644
index c8ae9d4..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-pci.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_PCI=y
-CONFIG_PCI_HOST_GENERIC=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-rtc.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-rtc.cfg
deleted file mode 100644
index 5d377b3..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-rtc.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_PL031=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-serial.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-serial.cfg
deleted file mode 100644
index f58e3c2..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-serial.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-CONFIG_SERIAL_AMBA_PL011=y
-CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
-CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-virtio.cfg b/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-virtio.cfg
deleted file mode 100644
index b4a53da..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/gem5-kmeta/bsp/gem5-platforms/gem5-arm64/gem5-arm64-virtio.cfg
+++ /dev/null
@@ -1,9 +0,0 @@
-CONFIG_VIRTIO=y
-CONFIG_VIRTIO_MMIO=y
-CONFIG_BLOCK=y
-CONFIG_VIRTIO_BLK=y
-CONFIG_BLK_MQ_VIRTIO=y
-CONFIG_SCSI_VIRTIO=y
-CONFIG_VIRTIO_BLK_SCSI=y
-CONFIG_VIRTIO_PCI=y
-CONFIG_VIRTIO_PCI_LEGACY=y
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_%.bbappend b/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_%.bbappend
deleted file mode 100644
index e66dd21..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_%.bbappend
+++ /dev/null
@@ -1,12 +0,0 @@
-FILESEXTRAPATHS:prepend:gem5-arm64 := "${THISDIR}:${THISDIR}/files:"
-
-COMPATIBLE_MACHINE:gem5-arm64 = "gem5-arm64"
-KMACHINE:gem5-arm64 = "gem5-arm64"
-SRC_URI:append:gem5-arm64 = " file://gem5-kmeta;type=kmeta;name=gem5-kmeta;destsuffix=gem5-kmeta \
- file://dts/gem5-arm64;subdir=add-files \
- file://init_disassemble_info-signature-changes-causes-compile-failures.patch"
-
-do_patch:append:gem5-arm64() {
- tar -C ${WORKDIR}/add-files/dts -cf - gem5-arm64 | \
- tar -C arch/arm64/boot/dts -xf -
-}
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bb b/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bb
deleted file mode 100644
index a1a301c..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-KBRANCH ?= "v5.4/standard/base"
-
-require recipes-kernel/linux/linux-yocto.inc
-
-SRCREV_machine ?= "8a59dfded81659402005acfb06fbb00b71c8ce86"
-SRCREV_meta ?= "e8c675c7e11fbd96cd812dfb9f4f6fb6f92b6abb"
-
-SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
- git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA} \
- file://0001-lib-build_OID_registry-fix-reproducibility-issues.patch \
- file://0002-vt-conmakehash-improve-reproducibility.patch \
- "
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
-LINUX_VERSION ?= "5.4.205"
-
-DEPENDS += "openssl-native util-linux-native"
-
-PV = "${LINUX_VERSION}+git${SRCPV}"
-
-KMETA = "kernel-meta"
-KCONF_BSP_AUDIT_LEVEL = "1"
-
-# Functionality flags
-KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
diff --git a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bbappend b/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bbappend
deleted file mode 100644
index 078b684..0000000
--- a/meta-arm/meta-gem5/recipes-kernel/linux/linux-yocto_5.4.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-require ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', 'recipes-kernel/linux/linux-yocto_virtualization.inc', '', d)}
diff --git a/meta-arm/scripts/machine-summary.py b/meta-arm/scripts/machine-summary.py
index c2b43da..8bd0fa7 100755
--- a/meta-arm/scripts/machine-summary.py
+++ b/meta-arm/scripts/machine-summary.py
@@ -56,7 +56,7 @@
# TODO: assumes default branch
if layer == "core":
return f"https://git.openembedded.org/openembedded-core/tree/meta/{relative}"
- elif layer in ("meta-arm", "meta-arm-bsp", "arm-toolchain", "meta-atp", "meta-gem5"):
+ elif layer in ("meta-arm", "meta-arm-bsp", "arm-toolchain"):
return f"https://git.yoctoproject.org/meta-arm/tree/{layer}/{relative}"
else:
print(f"WARNING: Don't know web URL for layer {layer}", file=sys.stderr)