diff options
author | Patrick Williams <patrick@stwcx.xyz> | 2022-09-03 14:53:57 +0300 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2022-09-09 21:54:38 +0300 |
commit | 92b42cb35d755f8cfe6c17d403711a536e0f0721 (patch) | |
tree | 7b8663e1a7226f7a0811034af44979d1705b026f /meta-arm/meta-arm-bsp | |
parent | 497a421571ce561308d0501e73cb2c8128296fa7 (diff) | |
download | openbmc-92b42cb35d755f8cfe6c17d403711a536e0f0721.tar.xz |
subtree updates
meta-raspberrypi: b6a1645a97..c57b464b88:
Lluis Campos (1):
rpi-cmdline: do_compile: Use pure Python syntax to get `CMDLINE`
meta-openembedded: 2eb39477a7..a755af4fb5:
Adrian Zaharia (1):
lapack: add packageconfig for lapacke
Akash Hadke (1):
polkit: Add --shell /bin/nologin to polkitd user
Alex Kiernan (3):
ntpsec: Add UPSTREAM_CHECK_URI
libgpiod: Detect ptest using PTEST_ENABLED
ostree: Cleanup PACKAGECONFIGs
Anuj Mittal (1):
yasm: fix buildpaths warning
Atanas Bunchev (1):
python3-twitter: Upgrade 4.8.0 -> 4.10.1
Bartosz Golaszewski (4):
imagemagick: add PACKAGECONFIG for C++ bindings
python3-matplotlib: don't use PYTHON_PN
python3-matplotlib: add packaging to RDEPENDS
python3-matplotlib: bump to 3.5.2
Bruce Ashfield (3):
vboxguestdrivers: fix build against 5.19 kernel / libc-headers
zfs: update to v2.1.5
vboxguestdrivers: make kernel shared directory dependency explicit
Carsten Bäcker (1):
spdlog: Fix CMake flag
Changqing Li (3):
fuse3: support ptest
redis: fix do_patch fuzz warning
dlt-daemon: fix dlt-system.service failed since buffer overflow
Clément Péron (1):
python: add Pydantic data validation package
Devendra Tewari (1):
android-tools: sleep more in android-gadget-start
Ed Tanous (1):
Add python-requests-unixsocket recipe
Enguerrand de Ribaucourt (1):
mdio-tools: add recipes
Etienne Cordonnier (1):
uutils-coreutils: add recipe
Jagadeesh Krishnanjanappa (4):
python3-asgiref: add recipe
python3-django: make 3.2.x as default version
python3-django: Add python3-asgiref runtime dependency
python3-django: remove 2.2.x recipe
Jan Luebbe (2):
chrony: add support for config and source snippet includes
gensio: upgrade 2.3.1 -> 2.5.2
Jan Vermaete (1):
makeself: added makeself as new recipe
Jim Broadus (1):
networkmanager: fix iptables and nft paths
Jose Quaresma (2):
wireguard-module: 1.0.20210219 -> 1.0.20220627
wireguard-tools: Add a new package for wg-quick
Julian Haller (2):
pcsc-lite: upgrade 1.9.0 -> 1.9.8
ccid: upgrade 1.4.33 -> 1.5.0
Justin Bronder (1):
lmdb: only set SONAME on the shared library
Khem Raj (61):
mariadb: Inherit pkgconfig
mariadb: Add packageconfig for lz4 and enable it
ibus: Swith to use main branch instead of master
kronosnet: Upgrade to 1.24
ostree: Upgrade to 2022.5 release
sdbus-c++-libsystemd: Fix build with glibc 2.36
xfstests: Upgrade to v2022.07.10
autofs: Fix build with glibc 2.36
audit: Upgrade to 3.0.8 and fix build with linux 5.17+
pcp: Add to USERADD_PACKAGES instead of override
mozjs: Use RUST_HOST_SYS and RUST_TARGET_SYS
fluentbit: Fix build with clang
audit: Fix build with musl
fluentbit: Fix build with musl
klibc: Upgrade to 2.0.10
gnome-keyring,cunit,xfce4-panel: Do not inherit remove-libtool class here
mpd: Update to 0.23.8
openipmi: Enable largefile cflags
proftpd: Always enable largefile support
netperf: Always enable largefile support
openipmi: Always enable largefile support
unbound: Always enable largefile support
sysbench: Always enable largefile support
libmtp: Always enable largefile support
toybox: Fix build with glibc 2.36+
xfstests: Upgrade to 2022.07.31 release
libmpd: Fix function returns and casts
audit: Revert the tweak done in configure step in do_install
mpd: Upgrade to 0.23.9
fluentbit: Use CMAKE_C_STANDARD_LIBRARIES cmake var to pass libatomic
fluentbit: Upgrade to 1.9.7 and fix build on x86
klibc: Fix build with kernel 5.19 headers
ntpsec: Add -D_GNU_SOURCE and fix building with devtool
gd: Fix build with clang-15
cpulimit: Define -D_GNU_SOURCE
safec: Remove unused variable 'len'
ncftp: Enable autoreconf
ncftp: Fix TMPDIR path embedding into ncftpget
libb64: Switch to github fork and upgrade to 2.0.0.1+git
dhrystone: Disable warnings as errors with clang
dibbler: Fix build with musl
fio: Fix additional warnings seen with musl
ssmtp: Fix null pointer assignments
gst-editing-services: Add recipe
rygel: Upgrade to 0.40.4
libesmtp: Define _GNU_SOURCE
python3-grpcio: Enable largefile support explicitly
libteam: Include missing headers for strrchr and memcmp
neon: Upgrade to 0.32.2
satyr: Fix build on musl/clang
libmusicbrainz: Avoid -Wnonnull warning
aom: Upgrade to 3.4.0
vorbis-tools: Fix build on musl
dvb-apps: Use tarball for SRC_URI and fix build on musl
python3-netifaces: Fix build with python3 and musl
python3-pyephem: Fix build with python3 and musl
samba: Fix warnings in configure tests for rpath checks
lirc: Fix build on musl
mongodb: Fix boost build with clang-15
crda: Fix build with clang-15
monkey: Fix build with musl
Lei Maohui (2):
dnf-plugin-tui: Fix somw issue in postinstall process.
xrdp: Fix buildpaths warning.
Leon Anavi (16):
python3-nocasedict: Upgrade 1.0.3 -> 1.0.4
python3-frozenlist: Upgrade 1.3.0 -> 1.3.1
python3-networkx: Upgrade 2.8.4 -> 2.8.5
python3-pyhamcrest: Upgrade 2.0.3 -> 2.0.4
python3-aiohue: Upgrade 4.4.2 -> 4.5.0
python3-pyperf: Upgrade 2.3.0 -> 2.4.1
python3-eth-abi: Upgrade 3.0.0 -> 3.0.1
python3-cytoolz: Upgrade 0.11.2 -> 0.12.0
python3-yarl: Upgrade 1.7.2 -> 1.8.1
python3-term: Upgrade 2.3 -> 2.4
python3-coverage: Upgrade 6.4.1 -> 6.4.4
python3-regex: Upgrade 2022.7.25 -> 2022.8.17
python3-awesomeversion: Upgrade 22.6.0 -> 22.8.0
python3-typed-ast: Upgrade 1.5.2 -> 1.5.4
python3-prompt-toolkit: Upgrade 3.0.24 -> 3.0.30
python3-prettytable: Upgrade 3.1.1 -> 3.3.0
Markus Volk (6):
libass: update to v1.16.0
spdlog: update to v1.10.0
waylandpp: add recipe
wireplumber: update to v0.4.11
pipewire: update to v0.3.56
pipewire: improve runtime dependency settings
Marta Rybczynska (1):
polkit: update patches for musl compilation
Matthias Klein (1):
libftdi: update to 1.5
Mike Crowe (1):
yasm: Only depend on xmlto when docs are enabled
Mike Petersen (1):
sshpass: add recipe
Mingli Yu (10):
net-snmp: set ac_cv_path_PSPROG
postgresql: Fix the buildpaths issue
freeradius: Fix buildpaths issue
openipmi: Fix buildpaths issue
apache2: Fix the buildpaths issue
frr: fix buildpaths issue
nspr: fix buildpaths issue
liblockfile: fix buildpaths issue
freediameter: fix buildpaths issue
postgresql: make sure pam conf installed when pam enabled
Ovidiu Panait (1):
net-snmp: upgrade 5.9.1 -> 5.9.3
Paulo Neves (1):
fluentbit Upgrade to 1.3.5 -> 1.9.6
Philip Balister (2):
python3-pybind11: Update to Version 2.10.0.
Remove dead link and old information from the README.
Potin Lai (7):
libplist: add libplist_git.bb
libimobiledevice-glue: SRCREV bump bc6c44b..d2ff796
libimobiledevice: add libimobiledevice_git.bb
libirecovery: SRCREV bump e190945..ab5b4d8
libusbmuxd: add libusbmuxd_git.bb
usbmuxd: add usbmuxd_git.bb
idevicerestore: SRCREV bump 280575b..7d622d9
Richard Purdie (1):
lmdb: Don't inherit base
Sam Van Den Berge (1):
python3-jsonrpcserver: add patch to use importlib.resources instead of pkg_resources
Saul Wold (10):
libipc-signal-perl: Fix LICENSE string
libdigest-hmac-perl: Fix LICENSE string
libio-socket-ssl-perl: Fix LICENSE string
libdigest-sha1-perl: Fix LICENSE string
libmime-types-perl: Fix LICENSE string
libauthen-sasl-perl: Fix LICENSE string
libnet-ldap-perl: Fix LICENSE string
libxml-libxml-perl: Fix LICENSE string
libnet-telnet-perl: Fix LICENSE string
libproc-waitstat-perl: Fix LICENSE string
Sean Anderson (2):
image_types_sparse: Pad source image to block size
image_types_sparse: Generate "don't care" chunks
Vyacheslav Yurkov (4):
protobuf: correct ptest dependency
protobuf: 3.19.4 -> 3.21.5 upgrade
protobuf: change build system to cmake
protobuf: disable protoc binary for target
Wang Mingyu (60):
cifs-utils: upgrade 6.15 -> 7.0
geocode-glib: upgrade 3.26.3 -> 3.26.4
gjs: upgrade 1.72.1 -> 1.72.2
htpdate: upgrade 1.3.5 -> 1.3.6
icewm: upgrade 2.9.8 -> 2.9.9
ipc-run: upgrade 20200505.0 -> 20220807.0
iwd: upgrade 1.28 -> 1.29
ldns: upgrade 1.8.1 -> 1.8.2
libadwaita: upgrade 1.1.3 -> 1.1.4
libencode-perl: upgrade 3.18 -> 3.19
libmime-charset-perl: upgrade 1.012.2 -> 1.013.1
libtest-warn-perl: upgrade 0.36 -> 0.37
nano: upgrade 6.3 -> 6.4
nbdkit: upgrade 1.31.15 -> 1.32.1
netdata: upgrade 1.35.1 -> 1.36.0
fio: upgrade 3.30 -> 3.31
nlohmann-json: upgrade 3.10.5 -> 3.11.2
poco: upgrade 1.12.1 -> 1.12.2
postgresql: upgrade 14.4 -> 14.5
poppler: upgrade 22.07.0 -> 22.08.0
smarty: upgrade 4.1.1 -> 4.2.0
tracker: upgrade 3.3.2 -> 3.3.3
uftp: upgrade 5.0 -> 5.0.1
xdg-user-dirs: upgrade 0.17 -> 0.18
python3-pycodestyle: upgrade 2.9.0 -> 2.9.1
python3-pyzmq: upgrade 23.2.0 -> 23.2.1
python3-setuptools-declarative-requirements: upgrade 1.2.0 -> 1.3.0
python3-sqlalchemy: upgrade 1.4.39 -> 1.4.40
python3-werkzeug: upgrade 2.2.1 -> 2.2.2
python3-xmlschema: upgrade 2.0.1 -> 2.0.2
python3-yappi: upgrade 1.3.5 -> 1.3.6
ade: upgrade 0.1.1f -> 0.1.2
babl: upgrade 0.1.92 -> 0.1.94
ctags: upgrade 5.9.20220703.0 -> 5.9.20220821.0
grilo-plugins: upgrade 0.3.14 -> 0.3.15
ldns: upgrade 1.8.2 -> 1.8.3
libcurses-perl: upgrade 1.38 -> 1.41
mosquitto: upgrade 2.0.14 -> 2.0.15
nbdkit: upgrade 1.32.1 -> 1.33.1
netdata: upgrade 1.36.0 -> 1.36.1
libsdl2-ttf: upgrade 2.20.0 -> 2.20.1
xfstests: upgrade 2022.07.31 -> 2022.08.07
php: upgrade 8.1.8 -> 8.1.9
rdma-core: upgrade 41.0 -> 42.0
spitools: upgrade 1.0.1 -> 1.0.2
unbound: upgrade 1.16.1 -> 1.16.2
zlog: upgrade 1.2.15 -> 1.2.16
python3-hexbytes: upgrade 0.2.3 -> 0.3.0
python3-pythonping: upgrade 1.1.2 -> 1.1.3
python3-jsonrpcserver: Add dependence python3-typing-extensions
feh: upgrade 3.9 -> 3.9.1
gnome-bluetooth: upgrade 42.2 -> 42.3
hunspell: upgrade 1.7.0 -> 1.7.1
gtk4: upgrade 4.6.6 -> 4.6.7
logwatch: upgrade 7.6 -> 7.7
bdwgc: upgrade 8.2.0 -> 8.2.2
tcpreplay: upgrade 4.4.1 -> 4.4.2
tree: upgrade 2.0.2 -> 2.0.3
xfsdump: upgrade 3.1.10 -> 3.1.11
babl: upgrade 0.1.94 -> 0.1.96
Wolfgang Meyer (1):
libsdl2-ttf: upgrade 2.0.18 -> 2.20.0
Xu Huan (18):
python3-protobuf: upgrade 4.21.3 -> 4.21.4
python3-pycodestyle: upgrade 2.8.0 -> 2.9.0
python3-pyflakes: upgrade 2.4.0 -> 2.5.0
python3-pythonping: upgrade 1.1.1 -> 1.1.2
python3-regex: upgrade 2022.7.24 -> 2022.7.25
python3-werkzeug: upgrade 2.2.0 -> 2.2.1
python3-google-auth: upgrade 2.9.1 -> 2.10.0
python3-humanize: upgrade 4.2.3 -> 4.3.0
python3-hexbytes: upgrade 0.2.2 -> 0.2.3
python3-imageio: upgrade 2.21.0 -> 2.21.1
python3-nocaselist: upgrade 1.0.5 -> 1.0.6
python3-protobuf: upgrade 4.21.4 -> 4.21.5
python3-pycares: upgrade 4.2.1 -> 4.2.2
python3-fastjsonschema: upgrade 2.16.1 -> 2.16.2
python3-google-api-python-client: upgrade 2.56.0 -> 2.57.0
python3-google-auth: upgrade 2.10.0 -> 2.11.0
python3-grpcio-tools: upgrade 1.47.0 -> 1.48.0
python3-grpcio: upgrade 1.47.0 -> 1.48.0
Yi Zhao (5):
strongswan: upgrade 5.9.6 -> 5.9.7
libldb: upgrade 2.3.3 -> 2.3.4
samba: upgrade 4.14.13 -> 4.14.14
python3-jsonrpcserver: upgrade 5.0.7 -> 5.0.8
samba: fix buildpaths issue
wangmy (16):
gedit: upgrade 42.1 -> 42.2
libwacom: upgrade 2.3.0 -> 2.4.0
htpdate: upgrade 1.3.4 -> 1.3.5
nbdkit: upgrade 1.31.14 -> 1.31.15
pure-ftpd: upgrade 1.0.50 -> 1.0.51
avro-c: upgrade 1.11.0 -> 1.11.1
debootstrap: upgrade 1.0.126 -> 1.0.127
freerdp: upgrade 2.7.0 -> 2.8.0
icewm: upgrade 2.9.7 -> 2.9.8
libmxml: upgrade 3.3 -> 3.3.1
poco: upgrade 1.12.0 -> 1.12.1
xfontsel: upgrade 1.0.6 -> 1.1.0
xmessage: upgrade 1.0.5 -> 1.0.6
xrefresh: upgrade 1.0.6 -> 1.0.7
zabbix: upgrade 6.0.5 -> 6.2.1
xrdp: upgrade 0.9.18 -> 0.9.19
zhengrq.fnst (4):
python3-asttokens: upgrade 2.0.7 -> 2.0.8
python3-charset-normalizer: upgrade 2.1.0 -> 2.1.1
python3-eth-account: 0.6.1 -> 0.7.0
python3-cantools: upgrade 37.1.0 -> 37.1.2
zhengruoqin (12):
python3-dominate: upgrade 2.6.0 -> 2.7.0
python3-flask-login: upgrade 0.6.1 -> 0.6.2
python3-google-api-python-client: upgrade 2.54.0 -> 2.55.0
python3-haversine: upgrade 2.5.1 -> 2.6.0
python3-imageio: upgrade 2.19.5 -> 2.21.0
python3-autobahn: upgrade 22.6.1 -> 22.7.1
python3-engineio: upgrade 4.3.3 -> 4.3.4
python3-flask: upgrade 2.1.3 -> 2.2.2
python3-gcovr: upgrade 5.1 -> 5.2
python3-google-api-python-client: upgrade 2.55.0 -> 2.56.0
python3-asttokens: upgrade 2.0.5 -> 2.0.7
python3-zeroconf: upgrade 0.38.7 -> 0.39.0
meta-security: 2a2d650ee0..10fdc2b13a:
Anton Antonov (2):
Use CARGO_TARGET_SUBDIR in do_install
parsec-service: Update oeqa tests
Armin Kuster (8):
python3-privacyidea: update to 3.7.3
lkrg-module: update to 0.9.5
apparmor: update to 3.0.6
packagegroup-core-security: add space for appends
cryptmount: Add new pkg
packagegroup-core-security: add pkg to grp
cyptmount: Fix mount.h conflicts seen with glibc 2.36+
kas: update testimage inherit
John Edward Broadbent (1):
meta-security: Add recipe for Glome
Mingli Yu (1):
samhain-standalone: fix buildpaths issue
poky: fc59c28724..9b1db65e7d:
Alejandro Hernandez Samaniego (1):
baremetal-image.bbclass: Emulate image.bbclass to handle new classes scope
Alex Stewart (1):
maintainers: update opkg maintainer
Alexander Kanavin (113):
kmscube: address linux 5.19 fails
rpm: update 4.17.0 -> 4.17.1
go: update 1.18.4 -> 1.19
bluez5: update 5.64 -> 5.65
python3-pip: update 22.2.1 -> 22.2.2
ffmpeg: update 5.0.1 -> 5.1
iproute2: upgrade 5.18.0 -> 5.19.0
harfbuzz: upgrade 4.4.1 -> 5.1.0
libwpe: upgrade 1.12.0 -> 1.12.2
bind: upgrade 9.18.4 -> 9.18.5
diffoscope: upgrade 218 -> 220
ell: upgrade 0.51 -> 0.52
gnutls: upgrade 3.7.6 -> 3.7.7
iso-codes: upgrade 4.10.0 -> 4.11.0
kea: upgrade 2.0.2 -> 2.2.0
kexec-tools: upgrade 2.0.24 -> 2.0.25
libcap: upgrade 2.64 -> 2.65
libevdev: upgrade 1.12.1 -> 1.13.0
libnotify: upgrade 0.8.0 -> 0.8.1
libwebp: upgrade 1.2.2 -> 1.2.3
libxcvt: upgrade 0.1.1 -> 0.1.2
mesa: upgrade 22.1.3 -> 22.1.5
mobile-broadband-provider-info: upgrade 20220511 -> 20220725
nettle: upgrade 3.8 -> 3.8.1
piglit: upgrade to latest revision
puzzles: upgrade to latest revision
python3: upgrade 3.10.5 -> 3.10.6
python3-dtschema: upgrade 2022.7 -> 2022.8
python3-hypothesis: upgrade 6.50.1 -> 6.54.1
python3-jsonschema: upgrade 4.9.0 -> 4.9.1
python3-markdown: upgrade 3.3.7 -> 3.4.1
python3-setuptools: upgrade 63.3.0 -> 63.4.1
python3-sphinx: upgrade 5.0.2 -> 5.1.1
python3-urllib3: upgrade 1.26.10 -> 1.26.11
sqlite3: upgrade 3.39.1 -> 3.39.2
sysklogd: upgrade 2.4.0 -> 2.4.2
webkitgtk: upgrade 2.36.4 -> 2.36.5
kernel-dev: working with kernel using devtool does not require building and installing eSDK
sdk-manual: describe how to use extensible SDK functionality directly in a Yocto build
dropbear: merge .inc into .bb
rust: update 1.62.0 -> 1.62.1
cmake: update 3.23.2 -> 3.24.0
weston: upgrade 10.0.1 -> 10.0.2
patchelf: update 0.14.5 -> 0.15.0
patchelf: replace a rejected patch with an equivalent uninative.bbclass tweak
weston: exclude pre-releases from version check
tzdata: upgrade 2022a -> 2022b
libcgroup: update 2.0.2 -> 3.0.0
python3-setuptools-rust: update 1.4.1 -> 1.5.1
shadow: update 4.11.1 -> 4.12.1
slang: update 2.3.2 -> 2.3.3
xz: update 5.2.5 -> 5.2.6
gdk-pixbuf: update 2.42.8 -> 2.42.9
xorgproto: update 2022.1 -> 2022.2
boost-build-native: update 4.4.1 -> 1.80.0
boost: update 1.79.0 -> 1.80.0
vulkan-samples: update to latest revision
epiphany: upgrade 42.3 -> 42.4
git: upgrade 2.37.1 -> 2.37.2
glib-networking: upgrade 2.72.1 -> 2.72.2
gnu-efi: upgrade 3.0.14 -> 3.0.15
gpgme: upgrade 1.17.1 -> 1.18.0
libjpeg-turbo: upgrade 2.1.3 -> 2.1.4
libwebp: upgrade 1.2.3 -> 1.2.4
lighttpd: upgrade 1.4.65 -> 1.4.66
mesa: upgrade 22.1.5 -> 22.1.6
meson: upgrade 0.63.0 -> 0.63.1
mpg123: upgrade 1.30.1 -> 1.30.2
pango: upgrade 1.50.8 -> 1.50.9
piglit: upgrade to latest revision
pkgconf: upgrade 1.8.0 -> 1.9.2
python3-dtschema: upgrade 2022.8 -> 2022.8.1
python3-more-itertools: upgrade 8.13.0 -> 8.14.0
python3-numpy: upgrade 1.23.1 -> 1.23.2
python3-pbr: upgrade 5.9.0 -> 5.10.0
python3-pyelftools: upgrade 0.28 -> 0.29
python3-pytz: upgrade 2022.1 -> 2022.2.1
strace: upgrade 5.18 -> 5.19
sysklogd: upgrade 2.4.2 -> 2.4.4
wireless-regdb: upgrade 2022.06.06 -> 2022.08.12
wpebackend-fdo: upgrade 1.12.0 -> 1.12.1
python3-hatchling: update 1.6.0 -> 1.8.0
python3-setuptools: update 63.4.1 -> 65.0.2
devtool: do not leave behind source trees in workspace/sources
systemtap: add a patch to address a python 3.11 failure
bitbake: bitbake-layers: initialize tinfoil before registering command line arguments
scripts/oe-setup-builddir: add a check that TEMPLATECONF is valid
bitbake-layers: add a command to save the active build configuration as a template into a layer
bitbake-layers: add ability to save current layer repository configuration into a file
scripts/oe-setup-layers: add a script that restores the layer configuration from a json file
selftest/bblayers: add a test for creating a layer setup and using it to restore the layers
selftest/bblayers: adjust the revision for the layer setup test
perl: run builds from a pristine source tree
meta-poky/conf: move default templates to conf/templates/default/
syslinux: mark all pending patches as Inactive-Upstream
shadow: correct the pam patch status
mtd-utils: remove patch that adds -I option
gstreamer1.0-plugins-bad: remove an unneeded patch
ghostscript: remove unneeded patch
ovmf: drop the force no-stack-protector patch
python: submit CC to cc_basename patch upstream
mc: submit perl warnings patch upstream
sysvinit: send install.patch upstream
valgrind: (re)send ppc instructions patch upstream
gdk-pixbuf: submit fatal-loader.patch upstream
libsdl2: follow upstream version is even rule
python3-pip: submit reproducible.patch upstream
python3-pip: remove unneeded reproducible.patch
llvm: remove 0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch
scripts/oe-setup-builddir: migrate build/conf/templateconf.cfg to new template locations
meta/files/layers.schema.json: drop the layers property
scripts/oe-setup-builddir: write to conf/templateconf.cfg after the build is set up
scripts/oe-setup-builddir: make environment variable the highest priority source for TEMPLATECONF
Alexandre Belloni (1):
ruby: drop capstone support
Andrei Gherzan (7):
shadow: Enable subid support
rootfspostcommands.py: Restructure sort_passwd and related functions
rootfspostcommands.py: Cleanup subid backup files generated by shadow-utils
selftest: Add module for testing rootfs postcommands
rootfs-postcommands.bbclass: Follow function rename in rootfspostcommands.py
shadow: Avoid nss warning/error with musl
linux-yocto: Fix COMPATIBLE_MACHINE regex match
Andrey Konovalov (2):
mesa: add pipe-loader's libraries to libopencl-mesa package
mesa: build clover with native LLVM codegen support for freedreno
Anuj Mittal (1):
poky.conf: add ubuntu-22.04 to tested distros
Armin Kuster (1):
system-requirements.rst: remove EOL and Centos7 hosts
Aryaman Gupta (1):
bitbake: runqueue: add memory pressure regulation
Awais Belal (1):
kernel-fitimage.bbclass: only package unique DTBs
Beniamin Sandu (1):
libpam: use /run instead of /var/run in systemd tmpfiles
Bertrand Marquis (1):
sysvinit-inittab/start_getty: Fix respawn too fast
Bruce Ashfield (22):
linux-yocto/5.15: update to v5.15.58
linux-yocto/5.10: update to v5.10.134
linux-yocto-rt/5.15: update to -rt48 (and fix -stable merge)
linux-libc-headers: update to v5.19
kernel-devsrc: support arm v5.19+ on target build
kernel-devsrc: support powerpc on v5.19+
lttng-modules: fix build against mips and v5.19 kernel
linux-yocto: introduce v5.19 reference kernel recipes
meta/conf: update preferred linux-yocto version to v5.19
linux-yocto: drop v5.10 reference kernel recipes
linux-yocto/5.15: update to v5.15.59
linux-yocto/5.15: fix reproducibility issues
linux-yocto/5.19: cfg: update x32 configuration fragment
linux-yocto/5.19: fix reproducibility issues
poky: update preferred version to v5.19
poky: change preferred kernel version to 5.15 in poky-alt
yocto-bsp: drop v5.10 bbappend and create 5.19 placeholder
lttng-modules: replace mips compaction fix with upstream change
linux-yocto/5.15: update to v5.15.60
linux-yocto/5.19: update to v5.19.1
linux-yocto/5.19: update to v5.19.3
linux-yocto/5.15: update to v5.15.62
Changqing Li (1):
apt: fix nativesdk-apt build failure during the second time build
Chen Qi (2):
python3-hypothesis: revert back to 6.46.11
python3-requests: add python3-compression dependency
Drew Moseley (1):
rng-tools: Replace obsolete "wants systemd-udev-settle"
Enrico Scholz (2):
npm.bbclass: fix typo in 'fund' config option
npm.bbclass: fix architecture mapping
Ernst Sjöstrand (1):
cve-check: Don't use f-strings
Jacob Kroon (1):
python3-cython: Remove debug lines
Jan Luebbe (2):
openssh: sync local ssh_config + sshd_config files with upstream 8.7p1
openssh: add support for config snippet includes to ssh and sshd
JeongBong Seo (1):
wic: add 'none' fstype for custom image
Johannes Schneider (1):
classes: rootfs-postcommands: autologin root on serial-getty
Jon Mason (2):
oeqa/parselogs: add qemuarmv5 arm-charlcd masking
ref-manual: add numa to machine features
Jose Quaresma (4):
bitbake: build: prefix the tasks with a timestamp in the log task_order
archiver.bbclass: some recipes that uses the kernelsrc bbclass uses the shared source
linux-yocto: prepend the the value with a space when append to KERNEL_EXTRA_ARGS
shaderc: upgrade 2022.1 -> 2022.2
Joshua Watt (4):
bitbake: siggen: Fix insufficent entropy in sigtask file names
bitbake: utils: Pass lock argument in fileslocked
classes: cve-check: Get shared database lock
meta/files: add layer setup JSON schema and example
Kai Kang (1):
packagegroup-self-hosted: update for strace
Kevin Hao (1):
uboot-config.bbclass: Don't bail out early in multi configs
Khem Raj (83):
qemu: Fix build with glibc 2.36
mtd-utils: Fix build with glibc 2.36
stress-ng: Upgrade to 0.14.03
bootchart2: Fix build with glibc 2.36+
ltp: Fix sys/mount.h conflicts needed for glibc 2.36+ compile
efivar: Fix build with glibc 2.36
cracklib: Drop using register keyword
util-linux: Define pidfd_* function signatures
util-linux: Upgrade to 2.38.1
tcp-wrappers: Fix implicit-function-declaration warnings
perl-cross: Correct function signatures in configure_func.sh
perl: Pass additional flags to enable lfs and gnu source
sysvinit: Fix mount.h conflicts seen with glibc 2.36+
glibc: Bump to 2.36
glibc: Update patch status
zip: Enable largefile support based on distro feature
zip: Make configure checks to be more robust
unzip: Fix configure tests to use modern C
unzip: Enable largefile support when enabled in distro
iproute2: Fix netns check during configure
glibc: Bump to latest 2.36 branch
gstreamer1.0-plugins-base: Include required system headers for isspace() and sscanf()
musl: Upgrade to latest tip of trunk
zip: Always enable LARGE_FILE_SUPPORT
libmicrohttpd: Enable largefile support unconditionally
unzip: Always enable largefile support
default-distrovars: Remove largefile from defualt DISTRO_FEATURES
zlib: Resolve CVE-2022-37434
json-c: Fix function prototypes
rsync: Backport fix to address CVE-2022-29154
rsync: Upgrade to 3.2.5
libtirpc: Backport fix for CVE-2021-46828
libxml2: Ignore CVE-2016-3709
tiff: Backport a patch for CVE-2022-34526
libtirpc: Upgrade to 1.3.3
perf: Add packageconfig for libbfd support and use disabled as default
connman: Backports for security fixes
systemd: Upgrade to 251.4 and fix build with binutils 2.39
time: Add missing include for memset
screen: Add missing include files in configure checks
setserial: Fix build with clang
expect: Fix implicit-function-declaration warnings
spirv-tools: Remove default copy constructor in header
boost: Compile out stdlib unary/binary_functions for c++11 and newer
vulkan-samples: Qualify move as std::move
apt: Do not use std::binary_function
ltp: Fix sys/mount.h and linux/mount.h conflict
rpm: Remove -Wimplicit-function-declaration warnings
binutils: Upgrade to 2.39 release
binutils-cross: Disable gprofng for when building cross binutils
binutils: Package up gprofng
binutils: Disable gprofng when using clang
binutils-cross-canadian: Package up new gprofng.rc file
autoconf: Fix strict prototype errors in generated tests
rsync: Add missing prototypes to function declarations
nfs-utils: Upgrade to 2.6.2
webkitgtk: Upgrade to 2.36.6 minor update
musl: Update to tip
binutils: Disable gprofng on musl systems
binutils: Upgrade to latest on 2.39 release branch
cargo_common.bbclass: Add missing space in shell conditional code
rng-tools: Remove depndencies on hwrng
ccache: Update the patch status
ccache: Fix build with gcc12 on musl
alsa-plugins: Include missing string.h
xinetd: Pass missing -D_GNU_SOURCE
watchdog: Include needed system header for function decls
libcgroup: Use GNU strerror_r only when its available
pinentry: enable _XOPEN_SOURCE on musl for wchar usage in curses
apr: Use correct strerror_r implementation based on libc type
gcr: Define _GNU_SOURCE
ltp: Adjust types to match create_fifo_thread return
gcc: Upgrade to 12.2.0
glibc: Update to latest on 2.36
ltp: Remove -mfpmath=sse on x86-64 too
apr: Cache configure tests which use AC_TRY_RUN
rust: Fix build failure on riscv32
ncurses: Fix configure tests for exit and mbstate_t
rust-llvm: Update to matching LLVM_VERSION from rust-source
librepo: Fix build on musl
rsync: Turn on -pedantic-errors at the end of 'configure'
ccache: Upgrade to 4.6.2
xmlto: Update to use upstream tip of trunk
Konrad Weihmann (1):
python3: disable user site-pkg for native target
Lee Chee Yang (1):
migration guides: add release notes for 4.0.3
Luca Ceresoli (1):
libmnl: remove unneeded SRC_URI 'name' option
Markus Volk (2):
connman: add PACKAGECONFIG to support iwd
packagegroup-base.bb: add a configure option to set the wireless-daemon
Martin Jansa (5):
glibc: revert one upstream change to work around broken DEBUG_BUILD build
syslinux: Fix build with glibc-2.36
syslinux: refresh patches with devtool
glibc: fix new upstream build issue with DEBUG_BUILD build
glibc: apply proposed patch from upstream instead of revert
Mateusz Marciniec (2):
util-linux: Remove --enable-raw from EXTRA_OECONF
util-linux: Improve check for magic in configure.ac
Michael Halstead (1):
uninative: Upgrade to 3.7 to work with glibc 2.36
Michael Opdenacker (1):
dev-manual: use proper note directive
Mingli Yu (1):
bitbake: fetch: use BPN instead
Neil Horman (1):
bitbake: Fix npm to use https rather than http
Paul Eggleton (1):
relocate_sdk.py: ensure interpreter size error causes relocation to fail
Pavel Zhukov (6):
package_rpm: Do not replace square brackets in %files
selftest: Add regression test for rpm filesnames
parselogs: Ignore xf86OpenConsole error
bitbake: gitsm: Error out if submodule refers to parent repo
bitbake: tests: Add Timeout class
bitbake: tests: Add test for possible gitsm deadlock
Peter Bergin (3):
rust-cross-canadian: rename shell variables for easier appends
packagegroup-rust-cross-canadian: add native compiler environment
oeqa/sdk: extend rust test to also use a build script
Peter Marko (1):
create-spdx: handle links to inaccessible locations
Quentin Schulz (3):
docs: conf.py: update yocto_git base URL
docs: README: add TeX font package required for building PDF
docs: ref-manual: system-requirements: add missing packages
Randy MacLeod (1):
rust: update from 1.62.1 to 1.63.0
Rasmus Villemoes (1):
bitbake.conf: set BB_DEFAULT_UMASK using ??=
Richard Purdie (85):
oeqa/selftest/sstate: Ensure tests are deterministic
nativesdk: Clear TUNE_FEATURES
populate_sdk_base: Disable rust SDK for MIPS n32
selftest/reproducible: Exclude rust/rust-dbg for now until we can fix
conf/distro/no-static-libs: Allow static musl for rust
rust-target-config: Add mips n32 target information
rust-common: Add CXXFLAGS
rust-common: Drop export directive from wrappers
rust-common: Rework wrappers to handle musl
rust: Work around reproducibility issues
rust: Switch to use RUST_XXX_SYS consistently
rust.inc: Rename variables to make code clearer
rust.inc: Fix cross build llvm-config handling
rust/mesa: Drop obsolete YOCTO_ALTERNATE_MULTILIB_NAME
rust-target-config: Show clear error when target isn't defined
rust: Generate per recipe target configuration files
rust-common/rust: Improve bootstrap BUILD_SYS handling
cargo_common: Handle build SYS as well as HOST/TARGET
rust-llvm: Enable nativesdk variant
rust.inc: Fix for cross compilation configuration
rust-common: Update to match cross targets
rust-target-config: Make target workaround generic
rust-common: Simplify libc handling
cargo: Drop cross-canadian variant and fix/use nativesdk
rust-common: Set rustlibdir to match target expectation
rust-cross-canadian: Simplify and fix
rust: Drop cross/crosssdk
rust: Enable nativesdk and target builds + replace rust-tools-cross-canadian
rust: Fix musl builds
rust: Ensure buildpaths are handled in debug symbols correctly
rust: Update README
selftest/wic: Tweak test case to not depend on kernel size
bitbake: runqueue: Ensure deferred tasks are sorted by multiconfig
bitbake: runqueue: Improve deadlock warning messages
bitbake: runqueue: Drop deadlock breaking force fail
rust-common: Remove conflict with utils create_wrapper
kern-devsrc: Drop auto.conf creation
cargo: Work around host system library conflicts
rust-cross-canadian: Use shell from SDK, not the host
buildhistory: Only use image-artifact-names as an image class
rust: Remove unneeded RUST_TARGETGENS settings
meta-skeleton/hello-mod: Switch to SPDX-License-Identifier
perf: Fix reproducibility issues with 5.19 onwards
selftest/runtime_test/incompatible_lic: Use IMAGE_CLASSES for testimage
testexport: Fix to work as an image class
testexport: Use IMAGE_CLASSES for testimage
selftest/runtime_test: Use testexport in IMAGE_CLASSES, not globally
bitbake: BBHandler: Allow earlier exit for classes not found
bitbake: BBHandler: Make inherit calls more directly
bitbake: bitbake: Add copyright headers where missing
bitbake: BBHandler/cooker: Implement recipe and global classes
classes: Add copyright statements to files without one
scripts: Add copyright statements to files without one
classes: Add SPDX license identifiers
lib: Add copyright statements to files without one
insane: Update to allow for class layout changes
classes: Update classes to match new bitbake class scope functionality
recipetool: Update for class changes
package: Switch debug source handling to use prefix map
libgcc/gcc-runtime: Improve source reference handling
bitbake.conf: Handle S and B separately for debug mapping
python3-cython: Update code to match debug path changes
gcc-cross: Fix relative links
gcc: Resolve relative prefix-map filenames
gcc: Add a patch to avoid hardcoded paths in libgcc on powerpc
gcc: Update patch status to submitted for two patches
valgrind: Disable drd/tests/std_thread2 ptest
valgrind: Update to match debug file layout changes
skeleton/service: Ensure debug path handling works as intended
distrooverrides: Move back to classes whilst it's usage is clarified
vim: Upgrade 9.0.0115 -> 9.0.0242
icu: Drop binconfig support (icu-config)
libtirpc: Mark CVE-2021-46828 as resolved
bitbake: runqueue: Change pressure file warning to a note
rust-target-config: Drop has-elf-tls option
llvm: Add llvm-config wrapper to improve flags handling
mesa: Rework llvm handling
rust-target-config: Fix qemuppc target cpu option
rust: Fix crossbeam-utils for arches without atomics
pseudo: Update to include recent upstream minor fixes
bitbake: Revert "fetch: use BPN instead"
vim: Upgrade 9.0.0242 -> 9.0.0341
gcc-multilib-config: Fix i686 toolchain relocation issues
kernel: Always set CC and LD for the kernel build
kernel: Use consistent make flags for menuconfig
Robert Joslyn (1):
curl: Update to 7.85.0
Ross Burton (9):
oeqa/qemurunner: add run_serial() comment
oeqa/commands: add support for running cross tools to runCmd
oeqa/selftest: rewrite gdbserver test
libxml2: wrap xmllint to use the correct XML catalogues
oeqa/selftest: add test for debuginfod
libgcrypt: remove obsolete pkgconfig install
libgcrypt: remove obsolete patch
libgcrypt: rewrite ptest
cve-check: close cursors as soon as possible
Sakib Sajal (2):
qemu: fix CVE-2021-3507
qemu: fix CVE-2022-0216
Shubham Kulkarni (1):
sanity: add a comment to ensure CONNECTIVITY_CHECK_URIS is correct
Simone Weiss (1):
json-c: Add ptest for json-c
Sundeep KOKKONDA (1):
glibc : stable 2.35 branch updates
Thomas Roos (1):
oeqa devtool: Add tests to cover devtool handling of various git URL styles
Tom Hochstein (1):
piglit: Add PACKAGECONFIG for glx and opencl
Tom Rini (1):
qemux86-64: Allow higher tunes
Ulrich Ölmann (1):
scripts/runqemu.README: fix typos and trailing whitespaces
William A. Kennington III (1):
image_types: Set SOURCE_DATE_EPOCH for squashfs
Yang Xu (1):
insane.bbclass: Skip patches not in oe-core by full path
Yogesh Tyagi (1):
gdbserver : add selftest
Yongxin Liu (1):
grub2: fix several CVEs
wangmy (19):
msmtp: upgrade 1.8.20 -> 1.8.22
bind: upgrade 9.18.5 -> 9.18.6
btrfs-tools: upgrade 5.18.1 -> 5.19
libdnf: upgrade 0.67.0 -> 0.68.0
librepo: upgrade 1.14.3 -> 1.14.4
pkgconf: upgrade 1.9.2 -> 1.9.3
python3-pygments: upgrade 2.12.0 -> 2.13.0
ethtool: upgrade 5.18 -> 5.19
librsvg: upgrade 2.54.4 -> 2.54.5
libtasn1: upgrade 4.18.0 -> 4.19.0
liburcu: upgrade 0.13.1 -> 0.13.2
libwpe: upgrade 1.12.2 -> 1.12.3
lttng-tools: upgrade 2.13.7 -> 2.13.8
lttng-ust: upgrade 2.13.3 -> 2.13.4
libatomic-ops: upgrade 7.6.12 -> 7.6.14
lz4: upgrade 1.9.3 -> 1.9.4
python3-hatchling: upgrade 1.8.0 -> 1.8.1
python3-urllib3: upgrade 1.26.11 -> 1.26.12
repo: upgrade 2.28 -> 2.29.1
meta-arm: 20a629180c..52f07a4b0b:
Anton Antonov (11):
arm/optee-os: backport RWX permission error patch
work around for too few arguments to function init_disassemble_info() error
arm/optee-os: backport linker warning patches
arm/tf-a-tests: work around RWX permission error on segment
Recipes for Trusted Services dependencies.
Recipes for Trusted Services Secure Partitions
ARM-FFA kernel drivers and kernel configs for Trusted Services
Trusted Services test/demo NWd tools
psa-api-tests for Trusted Services
Include Trusted Services SPs into optee-os image
Define qemuarm64-secureboot-ts CI pipeline and include it into meta-arm
Gowtham Suresh Kumar (2):
arm-bsp/secure-partitions: fix SMM gateway bug for EFI GetVariable()
arm-bsp/u-boot: drop EFI GetVariable() workarounds patches
Jon Mason (11):
arm-bsp/fvp-base-arm32: Update kernel patch for v5.19
arm/qemuarm64-secureboot: remove tfa memory patch
arm/linux-yocto: remove optee num pages kernel config variable
arm-bsp/juno: drop scmi patch
arm/qemuarm-secureboot: remove vmalloc from QB_KERNEL_CMDLINE_APPEND
arm/fvp: use image-artifact-names as an image class
atp/atp: drop package inherits
arm/optee: Update to 3.18
arm-bsp/fvp-base: set preferred kernel to 5.15
arm/arm-bsp: Add yocto-kernel-cache bluetooth support
arm-bsp/corstone1000: use compressed kernel image
Khem Raj (2):
gator-daemon: Define _GNU_SOURCE feature test macro
optee-os: Add section attribute parameters when clang is used
Peter Hoyes (3):
docs: Update FVP_CONSOLES in runfvp documentation
docs: Introduce meta-arm OEQA documentation
arm/oeqa: Make linuxboot test case timeout configurable
Richard Purdie (1):
gem5/gem5-m5ops: Drop uneeded package inherit
Ross Burton (2):
arm/trusted-firmware-a: remove redundant patches
arm/trusted-firmware-a: work around RWX permission error on segment
Rui Miguel Silva (2):
arm-bsp:corstone500: rebase u-boot patches on v2022.07
arm-bsp/corstone1000: rebase u-boot patches on top v2022.07
Vishnu Banavath (3):
arm-bsp/trusted-firmware-a: Bump TF-A version for N1SDP
arm-bsp/optee: add optee-os support for N1SDP target
arm/optee: update optee-client to v3.18
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I90aa0a94410dd208163af126566d22c77787abc2
Diffstat (limited to 'meta-arm/meta-arm-bsp')
51 files changed, 1171 insertions, 989 deletions
diff --git a/meta-arm/meta-arm-bsp/conf/machine/corstone500.conf b/meta-arm/meta-arm-bsp/conf/machine/corstone500.conf index 1d25471c68..adcfddd0d0 100644 --- a/meta-arm/meta-arm-bsp/conf/machine/corstone500.conf +++ b/meta-arm/meta-arm-bsp/conf/machine/corstone500.conf @@ -26,7 +26,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0" UBOOT_MACHINE = "corstone500_defconfig" UBOOT_IMAGE_ENTRYPOINT = "0x84000000" UBOOT_IMAGE_LOADADDRESS = "0x84000000" -PREFERRED_VERSION_u-boot ?= "2022.04" +PREFERRED_VERSION_u-boot ?= "2022.07" # making sure EXTRA_IMAGEDEPENDS will be used while creating the image WKS_FILE_DEPENDS:append = " ${EXTRA_IMAGEDEPENDS}" diff --git a/meta-arm/meta-arm-bsp/conf/machine/fvp-base.conf b/meta-arm/meta-arm-bsp/conf/machine/fvp-base.conf index 434812b3f9..04ec112053 100644 --- a/meta-arm/meta-arm-bsp/conf/machine/fvp-base.conf +++ b/meta-arm/meta-arm-bsp/conf/machine/fvp-base.conf @@ -10,6 +10,8 @@ require conf/machine/include/arm/arch-armv8a.inc TUNE_FEATURES = "aarch64" PREFERRED_VERSION_u-boot ?= "2022.04" +PREFERRED_VERSION_linux-yocto ?= "5.15%" +PREFERRED_VERSION_linux-yocto-rt ?= "5.15%" # FVP u-boot configuration UBOOT_MACHINE = "vexpress_aemv8a_semi_defconfig" diff --git a/meta-arm/meta-arm-bsp/conf/machine/include/corstone1000.inc b/meta-arm/meta-arm-bsp/conf/machine/include/corstone1000.inc index 91dbbfdb1f..ec48222956 100644 --- a/meta-arm/meta-arm-bsp/conf/machine/include/corstone1000.inc +++ b/meta-arm/meta-arm-bsp/conf/machine/include/corstone1000.inc @@ -22,7 +22,7 @@ TFM_SIGN_PRIVATE_KEY = "${S}/bl2/ext/mcuboot/root-RSA-3072_1.pem" RE_IMAGE_OFFSET = "0x1000" # u-boot -PREFERRED_VERSION_u-boot ?= "2022.04" +PREFERRED_VERSION_u-boot ?= "2022.07" EXTRA_IMAGEDEPENDS += "u-boot" UBOOT_CONFIG ??= "EFI" @@ -46,7 +46,7 @@ EXTRA_IMAGEDEPENDS += "secure-partitions" # Linux kernel PREFERRED_PROVIDER_virtual/kernel:forcevariable = "linux-yocto" PREFERRED_VERSION_linux-yocto = "5.15%" -KERNEL_IMAGETYPE = "Image" +KERNEL_IMAGETYPE = "Image.gz" INITRAMFS_IMAGE_BUNDLE ?= "1" diff --git a/meta-arm/meta-arm-bsp/conf/machine/n1sdp.conf b/meta-arm/meta-arm-bsp/conf/machine/n1sdp.conf index 5e87e61dfd..5d1be823bb 100644 --- a/meta-arm/meta-arm-bsp/conf/machine/n1sdp.conf +++ b/meta-arm/meta-arm-bsp/conf/machine/n1sdp.conf @@ -30,6 +30,9 @@ EXTRA_IMAGEDEPENDS += "virtual/control-processor-firmware" #UEFI EDK2 firmware EXTRA_IMAGEDEPENDS += "edk2-firmware" +#optee +PREFERRED_VERSION_optee-os ?= "3.18.%" + #grub-efi EFI_PROVIDER ?= "grub-efi" MACHINE_FEATURES += "efi" diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/files/n1sdp/bl_size.patch b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/files/n1sdp/bl_size.patch deleted file mode 100644 index a5b30195d4..0000000000 --- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/files/n1sdp/bl_size.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 80b1efa92486a87f9e82dbf665ef612291148de8 Mon Sep 17 00:00:00 2001 -From: Adam Johnston <adam.johnston@arm.com> -Date: Tue, 14 Jun 2022 11:19:30 +0000 -Subject: [PATCH] arm-bsp/trusted-firmware-a: N1SDP trusted boot - -Increase max size of BL2 on N1SDP by 4KB to enable trusted boot -Decrease max size of BL1 on N1SDP by 8KB so BL1/BL2 fits above BL31 progbits - -Signed-off-by: Adam Johnston <adam.johnston@arm.com> -Upstream-Status: Pending [Flagged to upstream] - ---- - plat/arm/board/n1sdp/include/platform_def.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/plat/arm/board/n1sdp/include/platform_def.h b/plat/arm/board/n1sdp/include/platform_def.h -index c9b81bafa..7468a31ed 100644 ---- a/plat/arm/board/n1sdp/include/platform_def.h -+++ b/plat/arm/board/n1sdp/include/platform_def.h -@@ -91,7 +91,7 @@ - * PLAT_ARM_MAX_BL1_RW_SIZE is calculated using the current BL1 RW debug size - * plus a little space for growth. - */ --#define PLAT_ARM_MAX_BL1_RW_SIZE 0xE000 -+#define PLAT_ARM_MAX_BL1_RW_SIZE 0xC000 - - /* - * PLAT_ARM_MAX_ROMLIB_RW_SIZE is define to use a full page -@@ -110,7 +110,7 @@ - * little space for growth. - */ - #if TRUSTED_BOARD_BOOT --# define PLAT_ARM_MAX_BL2_SIZE 0x20000 -+# define PLAT_ARM_MAX_BL2_SIZE 0x21000 - #else - # define PLAT_ARM_MAX_BL2_SIZE 0x14000 - #endif --- -2.35.1 - diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-n1sdp.inc b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-n1sdp.inc index f8a0b8d517..034dac30f4 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-n1sdp.inc +++ b/meta-arm/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-n1sdp.inc @@ -1,5 +1,8 @@ # N1SDP specific TFA support +SRCREV_tfa = "1d867c14cb41c1171d16fa7e395a4eaed3d572b2" +PV .= "+git${SRCPV}" + COMPATIBLE_MACHINE = "n1sdp" TFA_PLATFORM = "n1sdp" TFA_BUILD_TARGET = "all fip" @@ -9,16 +12,23 @@ TFA_MBEDTLS = "1" TFA_UBOOT = "0" TFA_UEFI = "1" -SRC_URI:append = " file://bl_size.patch" - TFA_ROT_KEY= "plat/arm/board/common/rotpk/arm_rotprivk_rsa.pem" +# Enabling Secure-EL1 Payload Dispatcher (SPD) +TFA_SPD = "spmd" +# Cortex-A35 supports Armv8.0-A (no S-EL2 execution state). +# So, the SPD SPMC component should run at the S-EL1 execution state +TFA_SPMD_SPM_AT_SEL2 = "0" + +# BL2 loads BL32 (optee). So, optee needs to be built first: +DEPENDS += "optee-os" + EXTRA_OEMAKE:append = "\ TRUSTED_BOARD_BOOT=1 \ - GENERATE_COT=1 \ - CREATE_KEYS=1 \ - ENABLE_PIE=0 \ - ARM_ROTPK_LOCATION="devel_rsa" \ - ROT_KEY="${TFA_ROT_KEY}" \ - BL33=${RECIPE_SYSROOT}/firmware/uefi.bin \ - " + GENERATE_COT=1 \ + CREATE_KEYS=1 \ + ARM_ROTPK_LOCATION="devel_rsa" \ + ROT_KEY="${TFA_ROT_KEY}" \ + BL32=${RECIPE_SYSROOT}/lib/firmware/tee-pager_v2.bin \ + BL33=${RECIPE_SYSROOT}/firmware/uefi.bin \ + " diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0001-cmd-load-add-load-command-for-memory-mapped.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0001-cmd-load-add-load-command-for-memory-mapped.patch index d0ae964f1b..dc64e3cf6c 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0001-cmd-load-add-load-command-for-memory-mapped.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0001-cmd-load-add-load-command-for-memory-mapped.patch @@ -1,7 +1,7 @@ -From c047b15fba9da36616bc9a346d9fe4d76e7ca4b2 Mon Sep 17 00:00:00 2001 +From 7a1a84ea74fdd06a7f5f239f4c5f4b727d6cd232 Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Thu, 24 Jun 2021 09:25:00 +0100 -Subject: [PATCH 01/27] cmd: load: add load command for memory mapped +Subject: [PATCH 01/24] cmd: load: add load command for memory mapped cp.b is used a lot as a way to load binaries to memory and execute them, however we may need to integrate this with the efi subsystem to @@ -26,10 +26,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 6 files changed, 78 insertions(+) diff --git a/README b/README -index f51f392111f9..049bcd108980 100644 +index b7ab6e50708d..cd76f95e74c1 100644 --- a/README +++ b/README -@@ -2760,6 +2760,7 @@ rarpboot- boot image via network using RARP/TFTP protocol +@@ -2578,6 +2578,7 @@ rarpboot- boot image via network using RARP/TFTP protocol diskboot- boot from IDE devicebootd - boot default, i.e., run 'bootcmd' loads - load S-Record file over serial line loadb - load binary file over serial line (kermit mode) @@ -38,10 +38,10 @@ index f51f392111f9..049bcd108980 100644 mm - memory modify (auto-incrementing) nm - memory modify (constant address) diff --git a/cmd/Kconfig b/cmd/Kconfig -index 5e25e45fd288..ff50102a89c7 100644 +index 09193b61b95f..ba2f321ae989 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig -@@ -1076,6 +1076,12 @@ config CMD_LOADB +@@ -1143,6 +1143,12 @@ config CMD_LOADB help Load a binary file over serial line. @@ -55,7 +55,7 @@ index 5e25e45fd288..ff50102a89c7 100644 bool "loads" default y diff --git a/cmd/bootefi.c b/cmd/bootefi.c -index 53d9f0e0dcca..8d492ea9e70c 100644 +index 827fcd97dfd8..37ce659fa123 100644 --- a/cmd/bootefi.c +++ b/cmd/bootefi.c @@ -34,6 +34,18 @@ static struct efi_device_path *bootefi_device_path; @@ -141,10 +141,10 @@ index 7e4a552d90ef..1224a7f85bb3 100644 +); +#endif /* CONFIG_CMD_LOADM */ diff --git a/include/efi_loader.h b/include/efi_loader.h -index af36639ec6a7..126db279dd3e 100644 +index 11930fbea838..5b41985244e2 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h -@@ -585,6 +585,8 @@ efi_status_t efi_load_pe(struct efi_loaded_image_obj *handle, +@@ -591,6 +591,8 @@ efi_status_t efi_load_pe(struct efi_loaded_image_obj *handle, void efi_save_gd(void); /* Call this to relocate the runtime section to an address space */ void efi_runtime_relocate(ulong offset, struct efi_mem_desc *map); @@ -154,10 +154,10 @@ index af36639ec6a7..126db279dd3e 100644 void efi_add_handle(efi_handle_t obj); /* Create handle */ diff --git a/lib/efi_loader/efi_device_path.c b/lib/efi_loader/efi_device_path.c -index 0542aaae16c7..d8dc59b2c95c 100644 +index 171661b89727..2493d7432613 100644 --- a/lib/efi_loader/efi_device_path.c +++ b/lib/efi_loader/efi_device_path.c -@@ -1138,6 +1138,8 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr, +@@ -1158,6 +1158,8 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr, { struct blk_desc *desc = NULL; struct disk_partition fs_partition; @@ -166,7 +166,7 @@ index 0542aaae16c7..d8dc59b2c95c 100644 int part = 0; char *filename; char *s; -@@ -1153,6 +1155,13 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr, +@@ -1173,6 +1175,13 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr, } else if (!strcmp(dev, "Uart")) { if (device) *device = efi_dp_from_uart(); @@ -181,5 +181,5 @@ index 0542aaae16c7..d8dc59b2c95c 100644 part = blk_get_device_part_str(dev, devnr, &desc, &fs_partition, 1); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0002-arm-add-support-to-corstone1000-platform.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0002-arm-add-support-to-corstone1000-platform.patch index e0caaa44b9..186362907e 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0002-arm-add-support-to-corstone1000-platform.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0002-arm-add-support-to-corstone1000-platform.patch @@ -1,7 +1,7 @@ -From 5cc889db3279ef4944ab64e36db3dbab1bf9ffa5 Mon Sep 17 00:00:00 2001 +From c9a9a467bb335047812004dd022dcadf9514101f Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Tue, 15 Feb 2022 09:44:10 +0000 -Subject: [PATCH 02/27] arm: add support to corstone1000 platform +Subject: [PATCH 02/24] arm: add support to corstone1000 platform Corstone1000 is a platform from arm, which includes pre verified Corstone SSE710 sub-system that combines Cortex-A and @@ -27,10 +27,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> board/armltd/corstone1000/Kconfig | 12 ++ board/armltd/corstone1000/MAINTAINERS | 7 + board/armltd/corstone1000/Makefile | 7 + - board/armltd/corstone1000/corstone1000.c | 121 ++++++++++++++++ + board/armltd/corstone1000/corstone1000.c | 125 +++++++++++++++++ configs/corstone1000_defconfig | 80 +++++++++++ include/configs/corstone1000.h | 86 ++++++++++++ - 11 files changed, 548 insertions(+) + 11 files changed, 552 insertions(+) create mode 100644 arch/arm/dts/corstone1000-fvp.dts create mode 100644 arch/arm/dts/corstone1000-mps3.dts create mode 100644 arch/arm/dts/corstone1000.dtsi @@ -42,12 +42,12 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 include/configs/corstone1000.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 4567c183fb84..d64051b533a7 100644 +index 9898c7d68e1b..2fc2b7d20f12 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -1266,6 +1266,12 @@ config TARGET_VEXPRESS64_JUNO - select USB - imply OF_HAS_PRIOR_STAGE +@@ -1347,6 +1347,12 @@ config ARCH_VEXPRESS64 + select ENV_IS_IN_FLASH if MTD + imply DISTRO_DEFAULTS +config TARGET_CORSTONE1000 + bool "Support Corstone1000 Platform" @@ -58,7 +58,7 @@ index 4567c183fb84..d64051b533a7 100644 config TARGET_TOTAL_COMPUTE bool "Support Total Compute Platform" select ARM64 -@@ -2198,6 +2204,8 @@ source "arch/arm/mach-nexell/Kconfig" +@@ -2295,6 +2301,8 @@ source "arch/arm/mach-npcm/Kconfig" source "board/armltd/total_compute/Kconfig" @@ -68,10 +68,10 @@ index 4567c183fb84..d64051b533a7 100644 source "board/bosch/guardian/Kconfig" source "board/Marvell/octeontx/Kconfig" diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile -index 644ba961a223..7de25d09c9fe 100644 +index a7e0d9f6c0e8..8c8f15b6a813 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile -@@ -1215,6 +1215,9 @@ dtb-$(CONFIG_TARGET_EA_LPC3250DEVKITV2) += lpc3250-ea3250.dtb +@@ -1265,6 +1265,9 @@ dtb-$(CONFIG_TARGET_EA_LPC3250DEVKITV2) += lpc3250-ea3250.dtb dtb-$(CONFIG_ARCH_QEMU) += qemu-arm.dtb qemu-arm64.dtb @@ -369,10 +369,10 @@ index 000000000000..77a82c28929b +obj-y := corstone1000.o diff --git a/board/armltd/corstone1000/corstone1000.c b/board/armltd/corstone1000/corstone1000.c new file mode 100644 -index 000000000000..eff1739f0b02 +index 000000000000..2fa485ff3799 --- /dev/null +++ b/board/armltd/corstone1000/corstone1000.c -@@ -0,0 +1,121 @@ +@@ -0,0 +1,125 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * (C) Copyright 2022 ARM Limited @@ -452,6 +452,10 @@ index 000000000000..eff1739f0b02 + +struct mm_region *mem_map = corstone1000_mem_map; + ++void set_dfu_alt_info(char *interface, char *devstr) ++{ ++} ++ +int board_init(void) +{ + return 0; @@ -673,5 +677,5 @@ index 000000000000..cf166f107efd + "bootefi $kernel_addr_r $fdtcontroladdr;" +#endif -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0003-usb-common-move-urb-code-to-common.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0003-usb-common-move-urb-code-to-common.patch index 9974915a0b..1cebd07279 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0003-usb-common-move-urb-code-to-common.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0003-usb-common-move-urb-code-to-common.patch @@ -1,7 +1,7 @@ -From b8f4f76e135ff2061d0032292f5209ac911dba16 Mon Sep 17 00:00:00 2001 +From 61c5fe3758a0febdee33429f5be16f69279045cc Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Mon, 28 Jun 2021 23:20:55 +0100 -Subject: [PATCH 03/27] usb: common: move urb code to common +Subject: [PATCH 03/24] usb: common: move urb code to common Move urb code from musb only use to a more common scope, so other drivers in the future can use the handling of urb in usb. @@ -493,5 +493,5 @@ index 6dd2c997f9b3..ec00161710a5 100644 /* * Hub Status & Hub Change bit masks -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0004-usb-add-isp1760-family-driver.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0004-usb-add-isp1760-family-driver.patch index 5940f06d4d..1dd6f2597e 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0004-usb-add-isp1760-family-driver.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0004-usb-add-isp1760-family-driver.patch @@ -1,7 +1,7 @@ -From 62a666a83766f5517e90464638455286bb33f433 Mon Sep 17 00:00:00 2001 +From 8abb9c6a342d750a3a3a66e674c3be6597fc9f66 Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Mon, 28 Jun 2021 23:31:25 +0100 -Subject: [PATCH 04/27] usb: add isp1760 family driver +Subject: [PATCH 04/24] usb: add isp1760 family driver ISP1760/61/63 are a family of usb controllers, blah, blah, more info here. @@ -34,10 +34,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 drivers/usb/isp1760/isp1760-uboot.h diff --git a/Makefile b/Makefile -index ad83d60dc39d..2c857c1fe2cc 100644 +index 98867fbe06b4..67851020f5c1 100644 --- a/Makefile +++ b/Makefile -@@ -834,6 +834,7 @@ libs-y += drivers/usb/host/ +@@ -841,6 +841,7 @@ libs-y += drivers/usb/host/ libs-y += drivers/usb/mtu3/ libs-y += drivers/usb/musb/ libs-y += drivers/usb/musb-new/ @@ -3801,5 +3801,5 @@ index 000000000000..2486de6f9e27 + +#endif -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0005-corstone1000-enable-isp1763-usb-controller.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0005-corstone1000-enable-isp1763-usb-controller.patch index 2ce03b6401..c4654557c0 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0005-corstone1000-enable-isp1763-usb-controller.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0005-corstone1000-enable-isp1763-usb-controller.patch @@ -1,7 +1,7 @@ -From b7fb62e512e00a5fdbb4321bb0b4109261518481 Mon Sep 17 00:00:00 2001 +From 5031fea320bb4ccc1ce7470193d8f4402ae819c9 Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Thu, 3 Mar 2022 16:52:02 +0000 -Subject: [PATCH 05/27] corstone1000: enable isp1763 usb controller +Subject: [PATCH 05/24] corstone1000: enable isp1763 usb controller MPS3 board have a ISP1763 usb controller, add the correspondent mmio area and enable it to be used for mass @@ -44,5 +44,5 @@ index cf166f107efd..8ba0effb0ab2 100644 "boot_bank_flag=0x08002000\0" \ "kernel_addr_bank_0=0x083EE000\0" \ -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0006-arm_ffa-introducing-Arm-FF-A-low-level-driver.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0006-arm_ffa-introducing-Arm-FF-A-low-level-driver.patch index 8cc848fec3..617aaf77e2 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0006-arm_ffa-introducing-Arm-FF-A-low-level-driver.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0006-arm_ffa-introducing-Arm-FF-A-low-level-driver.patch @@ -1,7 +1,7 @@ -From ede21dc1ca75132698cc81e88357c5789ccf67c7 Mon Sep 17 00:00:00 2001 +From 968c86e8a6ed3e9e6621f0ae44977b5b13d90bfd Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Tue, 16 Nov 2021 12:34:52 +0000 -Subject: [PATCH 06/27] arm_ffa: introducing Arm FF-A low-level driver +Subject: [PATCH 06/24] arm_ffa: introducing Arm FF-A low-level driver This driver implements Arm Firmware Framework for Armv8-A on u-boot @@ -58,10 +58,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 lib/arm-ffa/arm_ffa_helper.c diff --git a/MAINTAINERS b/MAINTAINERS -index 96582fc67777..14307e6da644 100644 +index 7f27ff4c20fc..d29d7e040764 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -232,6 +232,14 @@ F: board/CZ.NIC/ +@@ -244,6 +244,14 @@ F: board/CZ.NIC/ F: configs/turris_*_defconfig F: include/configs/turris_*.h @@ -143,20 +143,20 @@ index 22fd541f9a28..45eca83a473c 100644 DEFINE(ARM_SMCCC_QUIRK_STATE_OFFS, offsetof(struct arm_smccc_quirk, state)); #endif diff --git a/common/board_r.c b/common/board_r.c -index c24d9b4e220b..af20f38b104c 100644 +index 6f4aca2077d6..412a0ea9fac3 100644 --- a/common/board_r.c +++ b/common/board_r.c -@@ -61,6 +61,9 @@ - #include <wdt.h> +@@ -62,6 +62,9 @@ #include <asm-generic/gpio.h> #include <efi_loader.h> + #include <relocate.h> +#ifdef CONFIG_ARM_FFA_TRANSPORT +#include <arm_ffa_helper.h> +#endif DECLARE_GLOBAL_DATA_PTR; -@@ -770,6 +773,9 @@ static init_fnc_t init_sequence_r[] = { +@@ -779,6 +782,9 @@ static init_fnc_t init_sequence_r[] = { INIT_FUNC_WATCHDOG_RESET initr_net, #endif @@ -180,10 +180,10 @@ index b26ca8cf70c9..e83c23789d1b 100644 source "drivers/axi/Kconfig" diff --git a/drivers/Makefile b/drivers/Makefile -index 4e7cf284405a..6671d2a604ab 100644 +index 67c8af74424e..1be687b55d13 100644 --- a/drivers/Makefile +++ b/drivers/Makefile -@@ -107,6 +107,7 @@ obj-y += iommu/ +@@ -109,6 +109,7 @@ obj-y += iommu/ obj-y += smem/ obj-y += thermal/ obj-$(CONFIG_TEE) += tee/ @@ -2249,10 +2249,10 @@ index 000000000000..0e143e54511e +int ffa_uuid_str_to_bin(const char *uuid_str, unsigned char *uuid_bin); +#endif diff --git a/include/dm/uclass-id.h b/include/dm/uclass-id.h -index 0e26e1d13824..a1181b8f48e7 100644 +index 3ba69ad9a084..732441824557 100644 --- a/include/dm/uclass-id.h +++ b/include/dm/uclass-id.h -@@ -52,6 +52,7 @@ enum uclass_id { +@@ -55,6 +55,7 @@ enum uclass_id { UCLASS_EFI_MEDIA, /* Devices provided by UEFI firmware */ UCLASS_ETH, /* Ethernet device */ UCLASS_ETH_PHY, /* Ethernet PHY device */ @@ -2320,10 +2320,10 @@ index 7f2be2339475..54980a130fdb 100644 #define arm_smccc_smc_quirk(...) __arm_smccc_smc(__VA_ARGS__) diff --git a/lib/Kconfig b/lib/Kconfig -index 3c6fa99b1a6a..473821b882e2 100644 +index acc0ac081a44..65db65c3c4cd 100644 --- a/lib/Kconfig +++ b/lib/Kconfig -@@ -810,6 +810,7 @@ config SMBIOS_PARSER +@@ -902,6 +902,7 @@ config SMBIOS_PARSER source lib/efi/Kconfig source lib/efi_loader/Kconfig source lib/optee/Kconfig @@ -2332,7 +2332,7 @@ index 3c6fa99b1a6a..473821b882e2 100644 config TEST_FDTDEC bool "enable fdtdec test" diff --git a/lib/Makefile b/lib/Makefile -index 11b03d1cbec8..8e6fad613067 100644 +index d9b1811f7506..4aa3e2ed2a7e 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -9,6 +9,7 @@ obj-$(CONFIG_EFI) += efi/ @@ -2564,7 +2564,7 @@ index 000000000000..623899d38044 + return 0; +} diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c -index 5bcb8253edba..cffa2c69d621 100644 +index 4da64b5d2962..c68d9ed4f0bd 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -23,6 +23,10 @@ @@ -2578,7 +2578,7 @@ index 5bcb8253edba..cffa2c69d621 100644 DECLARE_GLOBAL_DATA_PTR; /* Task priority level */ -@@ -2114,6 +2118,10 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, +@@ -2113,6 +2117,10 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, struct efi_event *evt, *next_event; efi_status_t ret = EFI_SUCCESS; @@ -2589,7 +2589,7 @@ index 5bcb8253edba..cffa2c69d621 100644 EFI_ENTRY("%p, %zx", image_handle, map_key); /* Check that the caller has read the current memory map */ -@@ -2174,6 +2182,15 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, +@@ -2173,6 +2181,15 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, dm_remove_devices_flags(DM_REMOVE_ACTIVE_ALL); } @@ -2606,5 +2606,5 @@ index 5bcb8253edba..cffa2c69d621 100644 efi_runtime_detach(); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0007-arm_ffa-introducing-armffa-command.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0007-arm_ffa-introducing-armffa-command.patch index 83f0547ea9..582bc3e5aa 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0007-arm_ffa-introducing-armffa-command.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0007-arm_ffa-introducing-armffa-command.patch @@ -1,7 +1,7 @@ -From 541b2b51dc77832ab5845cab4762d29976838d36 Mon Sep 17 00:00:00 2001 +From 58358f79d9f8abbdc8bcfc7d08bd0c7c4c90ec84 Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Tue, 16 Nov 2021 12:36:27 +0000 -Subject: [PATCH 07/27] arm_ffa: introducing armffa command +Subject: [PATCH 07/24] arm_ffa: introducing armffa command A new armffa command is provided as an example of how to use the FF-A helper functions to communicate with secure world. @@ -20,10 +20,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 cmd/armffa.c diff --git a/MAINTAINERS b/MAINTAINERS -index 14307e6da644..f3fd559da54a 100644 +index d29d7e040764..32fc267fcf13 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -235,6 +235,7 @@ F: include/configs/turris_*.h +@@ -247,6 +247,7 @@ F: include/configs/turris_*.h ARM FF-A M: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> S: Maintained @@ -32,10 +32,10 @@ index 14307e6da644..f3fd559da54a 100644 F: include/arm_ffa.h F: include/arm_ffa_helper.h diff --git a/cmd/Kconfig b/cmd/Kconfig -index ff50102a89c7..ff124bf4bad0 100644 +index ba2f321ae989..090e668125d5 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig -@@ -813,6 +813,16 @@ endmenu +@@ -873,6 +873,16 @@ endmenu menu "Device access commands" @@ -53,7 +53,7 @@ index ff50102a89c7..ff124bf4bad0 100644 #depends on FLASH_CFI_DRIVER bool "armflash" diff --git a/cmd/Makefile b/cmd/Makefile -index 166c652d9825..770b846c44e0 100644 +index 5e43a1e022e8..e40f52f1e416 100644 --- a/cmd/Makefile +++ b/cmd/Makefile @@ -12,6 +12,8 @@ obj-y += panic.o @@ -338,5 +338,5 @@ index 000000000000..71a6ebb656d1 + "devlist\n" + " - displays the arm_ffa device info\n"); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0008-arm_ffa-introducing-MM-communication-with-FF-A.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0008-arm_ffa-introducing-MM-communication-with-FF-A.patch index 9b1383ebe4..3b82b416a8 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0008-arm_ffa-introducing-MM-communication-with-FF-A.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0008-arm_ffa-introducing-MM-communication-with-FF-A.patch @@ -1,7 +1,7 @@ -From 2f09d4a2e87febd7365b9e18d669208ff2c35edc Mon Sep 17 00:00:00 2001 +From ee7c0aee66db53b2372a3b4245a8754dceee804d Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Wed, 13 Oct 2021 17:51:44 +0100 -Subject: [PATCH 08/27] arm_ffa: introducing MM communication with FF-A +Subject: [PATCH 08/24] arm_ffa: introducing MM communication with FF-A This commit allows to perform MM communication using FF-A transport. @@ -30,10 +30,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 2 files changed, 273 insertions(+), 6 deletions(-) diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig -index e5e35fe51f65..6827b821545e 100644 +index e3f2402d0e8e..37131237af3f 100644 --- a/lib/efi_loader/Kconfig +++ b/lib/efi_loader/Kconfig -@@ -56,13 +56,23 @@ config EFI_VARIABLE_FILE_STORE +@@ -60,13 +60,23 @@ config EFI_VARIABLE_FILE_STORE stored as file /ubootefi.var on the EFI system partition. config EFI_MM_COMM_TEE @@ -42,7 +42,7 @@ index e5e35fe51f65..6827b821545e 100644 + bool "UEFI variables storage service via the trusted world" + depends on OPTEE || ARM_FFA_TRANSPORT help -+ The MM SP (also called partition) can be StandAlonneMM or smm-gateway. ++ the MM SP (also called partition) can be StandAlonneMM or smm-gateway. + When using the u-boot OP-TEE driver, StandAlonneMM is supported. + When using the u-boot FF-A driver, StandAlonneMM and smm-gateway are supported. + @@ -56,9 +56,9 @@ index e5e35fe51f65..6827b821545e 100644 + MM buffer. The data is copied by u-boot to thea shared buffer before issuing + the door bell event. + - endchoice - - config EFI_VARIABLES_PRESEED + config EFI_VARIABLE_NO_STORE + bool "Don't persist non-volatile UEFI variables" + help diff --git a/lib/efi_loader/efi_variable_tee.c b/lib/efi_loader/efi_variable_tee.c index dfef18435dfa..9cb8cfb9c779 100644 --- a/lib/efi_loader/efi_variable_tee.c @@ -379,5 +379,5 @@ index dfef18435dfa..9cb8cfb9c779 100644 /* -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0009-arm_ffa-introducing-test-module-for-UCLASS_FFA.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0009-arm_ffa-introducing-test-module-for-UCLASS_FFA.patch index 4fb317ba85..ae4bb02f18 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0009-arm_ffa-introducing-test-module-for-UCLASS_FFA.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0009-arm_ffa-introducing-test-module-for-UCLASS_FFA.patch @@ -1,7 +1,7 @@ -From c9a2c457648b732292482fae59a7fd61cefffd33 Mon Sep 17 00:00:00 2001 +From 6f998a5e94e2562b5876b88864876c8b03b88f5a Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Tue, 16 Nov 2021 12:38:48 +0000 -Subject: [PATCH 09/27] arm_ffa: introducing test module for UCLASS_FFA +Subject: [PATCH 09/24] arm_ffa: introducing test module for UCLASS_FFA This is the test module for the UCLASS_FFA class. @@ -17,10 +17,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 test/dm/ffa.h diff --git a/MAINTAINERS b/MAINTAINERS -index f3fd559da54a..6510f844fe09 100644 +index 32fc267fcf13..8209dc9319f1 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -240,6 +240,7 @@ F: drivers/arm-ffa/ +@@ -252,6 +252,7 @@ F: drivers/arm-ffa/ F: include/arm_ffa.h F: include/arm_ffa_helper.h F: lib/arm-ffa/ @@ -29,7 +29,7 @@ index f3fd559da54a..6510f844fe09 100644 ARM FREESCALE IMX M: Stefano Babic <sbabic@denx.de> diff --git a/test/dm/Makefile b/test/dm/Makefile -index d46552fbf320..ddac250cdff0 100644 +index f0a7c97e3d17..09a3403d2f53 100644 --- a/test/dm/Makefile +++ b/test/dm/Makefile @@ -79,6 +79,7 @@ obj-$(CONFIG_POWER_DOMAIN) += power-domain.o @@ -128,5 +128,5 @@ index 000000000000..a0802bd6928a + +#endif /*__TEST_DM_FFA_H */ -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0010-arm_ffa-corstone1000-enable-FF-A-and-MM-support.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0010-arm_ffa-corstone1000-enable-FF-A-and-MM-support.patch index bc96fc4619..8cab40c200 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0010-arm_ffa-corstone1000-enable-FF-A-and-MM-support.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0010-arm_ffa-corstone1000-enable-FF-A-and-MM-support.patch @@ -1,7 +1,7 @@ -From ce6598d255113458fd5c9d19bb7469b721e37f6f Mon Sep 17 00:00:00 2001 +From c0b01dff84d74f1b5aaff0d9b594e0aaec16c744 Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Tue, 2 Nov 2021 16:44:39 +0000 -Subject: [PATCH 10/27] arm_ffa: corstone1000: enable FF-A and MM support +Subject: [PATCH 10/24] arm_ffa: corstone1000: enable FF-A and MM support This commit allows corstone1000 platform to perform MM communication between u-boot and the secure world @@ -53,5 +53,5 @@ index 8ba0effb0ab2..afc9ccfc192b 100644 #define CONFIG_SKIP_LOWLEVEL_INIT -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0011-efi-corstone1000-introduce-EFI-capsule-update.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0011-efi-corstone1000-introduce-EFI-capsule-update.patch index cb24ec3e14..0a829c410a 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0011-efi-corstone1000-introduce-EFI-capsule-update.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0011-efi-corstone1000-introduce-EFI-capsule-update.patch @@ -1,7 +1,7 @@ -From e70d0128090158872847b82b82cdbcf0e2f13885 Mon Sep 17 00:00:00 2001 +From 652259af2f795a5d69c628ae7b1e79d33c234abd Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Thu, 11 Nov 2021 16:27:59 +0000 -Subject: [PATCH 11/27] efi: corstone1000: introduce EFI capsule update +Subject: [PATCH 11/24] efi: corstone1000: introduce EFI capsule update This commit provides capsule update feature for Corstone1000. @@ -58,10 +58,10 @@ index afc9ccfc192b..a400cdef69d0 100644 #define MM_SP_UUID_DATA \ 0xed, 0x32, 0xd5, 0x33, \ diff --git a/include/efi_loader.h b/include/efi_loader.h -index 126db279dd3e..01b432e6184b 100644 +index 5b41985244e2..796419b69b40 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h -@@ -965,11 +965,11 @@ extern const struct efi_firmware_management_protocol efi_fmp_fit; +@@ -984,11 +984,11 @@ extern const struct efi_firmware_management_protocol efi_fmp_fit; extern const struct efi_firmware_management_protocol efi_fmp_raw; /* Capsule update */ @@ -76,10 +76,10 @@ index 126db279dd3e..01b432e6184b 100644 efi_uintn_t capsule_count, u64 *maximum_capsule_size, diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c -index cffa2c69d621..5c77a40c3ebe 100644 +index c68d9ed4f0bd..f2b5c7834c01 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c -@@ -2096,6 +2096,44 @@ static void efi_exit_caches(void) +@@ -2095,6 +2095,44 @@ static void efi_exit_caches(void) #endif } @@ -124,7 +124,7 @@ index cffa2c69d621..5c77a40c3ebe 100644 /** * efi_exit_boot_services() - stop all boot services * @image_handle: handle of the loaded image -@@ -2209,6 +2247,15 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, +@@ -2208,6 +2246,15 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, /* Recalculate CRC32 */ efi_update_table_header_crc32(&systab.hdr); @@ -141,10 +141,10 @@ index cffa2c69d621..5c77a40c3ebe 100644 efi_set_watchdog(0); WATCHDOG_RESET(); diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c -index f00440163d41..c100c1b95298 100644 +index a6b98f066a0b..a0689ba912fc 100644 --- a/lib/efi_loader/efi_capsule.c +++ b/lib/efi_loader/efi_capsule.c -@@ -24,6 +24,14 @@ +@@ -25,6 +25,14 @@ #include <crypto/pkcs7_parser.h> #include <linux/err.h> @@ -159,7 +159,7 @@ index f00440163d41..c100c1b95298 100644 DECLARE_GLOBAL_DATA_PTR; const efi_guid_t efi_guid_capsule_report = EFI_CAPSULE_REPORT_GUID; -@@ -509,6 +517,89 @@ static efi_status_t efi_capsule_update_firmware( +@@ -512,6 +520,89 @@ static efi_status_t efi_capsule_update_firmware( } #endif /* CONFIG_EFI_CAPSULE_FIRMWARE_MANAGEMENT */ @@ -249,7 +249,7 @@ index f00440163d41..c100c1b95298 100644 /** * efi_update_capsule() - process information from operating system * @capsule_header_array: Array of virtual address pointers -@@ -522,7 +613,7 @@ static efi_status_t efi_capsule_update_firmware( +@@ -525,7 +616,7 @@ static efi_status_t efi_capsule_update_firmware( * * Return: status code */ @@ -258,7 +258,7 @@ index f00440163d41..c100c1b95298 100644 struct efi_capsule_header **capsule_header_array, efi_uintn_t capsule_count, u64 scatter_gather_list) -@@ -539,6 +630,13 @@ efi_status_t EFIAPI efi_update_capsule( +@@ -542,6 +633,13 @@ efi_status_t EFIAPI efi_update_capsule( goto out; } @@ -272,7 +272,7 @@ index f00440163d41..c100c1b95298 100644 ret = EFI_SUCCESS; for (i = 0, capsule = *capsule_header_array; i < capsule_count; i++, capsule = *(++capsule_header_array)) { -@@ -551,6 +649,39 @@ efi_status_t EFIAPI efi_update_capsule( +@@ -554,6 +652,39 @@ efi_status_t EFIAPI efi_update_capsule( log_debug("Capsule[%d] (guid:%pUs)\n", i, &capsule->capsule_guid); @@ -312,7 +312,7 @@ index f00440163d41..c100c1b95298 100644 if (!guidcmp(&capsule->capsule_guid, &efi_guid_firmware_management_capsule_id)) { ret = efi_capsule_update_firmware(capsule); -@@ -589,7 +720,7 @@ out: +@@ -592,7 +723,7 @@ out: * * Return: status code */ @@ -322,7 +322,7 @@ index f00440163d41..c100c1b95298 100644 efi_uintn_t capsule_count, u64 *maximum_capsule_size, diff --git a/lib/efi_loader/efi_setup.c b/lib/efi_loader/efi_setup.c -index eee54e48784f..989380d4f8cd 100644 +index 492ecf4cb15c..bfd4687e10b5 100644 --- a/lib/efi_loader/efi_setup.c +++ b/lib/efi_loader/efi_setup.c @@ -16,6 +16,13 @@ @@ -355,5 +355,5 @@ index eee54e48784f..989380d4f8cd 100644 ret = efi_set_variable_int(u"CapsuleMax", &efi_guid_capsule_report, -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0012-corstone1000-Update-FFA-shared-buffer-address.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0012-corstone1000-Update-FFA-shared-buffer-address.patch index 60dc8501b4..d1e13f68cf 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0012-corstone1000-Update-FFA-shared-buffer-address.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0012-corstone1000-Update-FFA-shared-buffer-address.patch @@ -1,7 +1,7 @@ -From b2d752b4bbd5b2dc4cb22d2d652a261287505926 Mon Sep 17 00:00:00 2001 +From 1ff229c8e02bdd3c859d581787636cfdf674eec1 Mon Sep 17 00:00:00 2001 From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> Date: Wed, 17 Nov 2021 15:28:06 +0000 -Subject: [PATCH 12/27] corstone1000: Update FFA shared buffer address +Subject: [PATCH 12/24] corstone1000: Update FFA shared buffer address FFA shared buffer address changed to 0x02000000. @@ -33,5 +33,5 @@ index a400cdef69d0..db0f91335cef 100644 #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x03f00000) #define CONFIG_SKIP_LOWLEVEL_INIT -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-corstone1000-Make-sure-shared-buffer-contents-are-no.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-corstone1000-Make-sure-shared-buffer-contents-are-no.patch index 2495538d91..2caeb58b82 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-corstone1000-Make-sure-shared-buffer-contents-are-no.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-corstone1000-Make-sure-shared-buffer-contents-are-no.patch @@ -1,7 +1,7 @@ -From 67a755f74716068cfd44a8897c31151fe9ee4328 Mon Sep 17 00:00:00 2001 +From 370422921b2a3f4f7b73ce5b08820c24e82bba19 Mon Sep 17 00:00:00 2001 From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> Date: Thu, 18 Nov 2021 16:42:59 +0000 -Subject: [PATCH 13/27] corstone1000: Make sure shared buffer contents are not +Subject: [PATCH 13/24] corstone1000: Make sure shared buffer contents are not cached After updating the shared buffer, it is required to flush the cache @@ -48,5 +48,5 @@ index 9cb8cfb9c779..b6be2b54a030 100644 ffa_ret = ffa_notify_mm_sp(); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0014-arm-corstone1000-fix-unrecognized-filesystem-type.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0014-arm-corstone1000-fix-unrecognized-filesystem-type.patch index fa201eb9c8..3151741027 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0014-arm-corstone1000-fix-unrecognized-filesystem-type.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0014-arm-corstone1000-fix-unrecognized-filesystem-type.patch @@ -1,7 +1,7 @@ -From e2463e3ef52260b38131085c0901de8708d52693 Mon Sep 17 00:00:00 2001 +From 340ba3fbb0ea388578e30aede92695886f221eaf Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Fri, 4 Mar 2022 15:56:09 +0000 -Subject: [PATCH 14/27] arm: corstone1000: fix unrecognized filesystem type +Subject: [PATCH 14/24] arm: corstone1000: fix unrecognized filesystem type Some usb sticks are not recognized by usb, just add a delay before checking status. @@ -12,10 +12,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 1 file changed, 3 insertions(+) diff --git a/common/usb_storage.c b/common/usb_storage.c -index c9e2d7343ce2..ae72338323ba 100644 +index eaa31374ef73..79cf4297d4f4 100644 --- a/common/usb_storage.c +++ b/common/usb_storage.c -@@ -769,6 +769,9 @@ static int usb_stor_BBB_transport(struct scsi_cmd *srb, struct us_data *us) +@@ -784,6 +784,9 @@ static int usb_stor_BBB_transport(struct scsi_cmd *srb, struct us_data *us) st: retry = 0; again: @@ -26,5 +26,5 @@ index c9e2d7343ce2..ae72338323ba 100644 result = usb_bulk_msg(us->pusb_dev, pipein, csw, UMASS_BBB_CSW_SIZE, &actlen, USB_CNTL_TIMEOUT*5); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0015-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0015-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch index 0d1912c880..4e3f237f63 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0015-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0015-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch @@ -1,7 +1,7 @@ -From 81bf9ed7e8e858cef13cfc3d1435c44445e523df Mon Sep 17 00:00:00 2001 +From 4c249de0915750b328e456c34f18546f92850afd Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Fri, 10 Dec 2021 20:03:35 +0000 -Subject: [PATCH 15/27] efi_capsule: corstone1000: pass interface id and buffer +Subject: [PATCH 15/24] efi_capsule: corstone1000: pass interface id and buffer event id using register w4 Initially the interface/event IDs are passed to the SP using register @@ -39,10 +39,10 @@ index db0f91335cef..a7445e61348b 100644 #define CORSTONE1000_CAPSULE_BUFFER_SIZE (8192) /* 32 MB */ diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c -index c100c1b95298..17d769803b2a 100644 +index a0689ba912fc..e08e97cf3fb7 100644 --- a/lib/efi_loader/efi_capsule.c +++ b/lib/efi_loader/efi_capsule.c -@@ -27,6 +27,8 @@ +@@ -28,6 +28,8 @@ #ifdef CONFIG_TARGET_CORSTONE1000 #include <arm_ffa_helper.h> #include <cpu_func.h> @@ -51,7 +51,7 @@ index c100c1b95298..17d769803b2a 100644 void *__efi_runtime_data corstone1000_capsule_buf; /* capsule shared buffer virtual address */ efi_guid_t corstone1000_capsule_guid = EFI_CORSTONE1000_CAPSULE_ID_GUID; -@@ -587,11 +589,12 @@ static int __efi_runtime efi_corstone1000_buffer_ready_event(u32 capsule_image_s +@@ -590,11 +592,12 @@ static int __efi_runtime efi_corstone1000_buffer_ready_event(u32 capsule_image_s func_data.data0 = &part_id; /* @@ -69,5 +69,5 @@ index c100c1b95298..17d769803b2a 100644 func_data.data1_size = sizeof(msg); func_data.data1 = &msg; -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0016-efi_boottime-corstone1000-pass-interface-id-and-kern.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0016-efi_boottime-corstone1000-pass-interface-id-and-kern.patch index f460fad8ec..e134f23a66 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0016-efi_boottime-corstone1000-pass-interface-id-and-kern.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0016-efi_boottime-corstone1000-pass-interface-id-and-kern.patch @@ -1,7 +1,7 @@ -From 10d0ffc26ddcecd83921c2b3b37cb4eff54a154f Mon Sep 17 00:00:00 2001 +From e5e1cf36cb7b77a5bb526f1744c0c77164374ca3 Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Fri, 10 Dec 2021 20:10:41 +0000 -Subject: [PATCH 16/27] efi_boottime: corstone1000: pass interface id and +Subject: [PATCH 16/24] efi_boottime: corstone1000: pass interface id and kernel event id using register w4 Initially the interface/event IDs are passed to the SP using register @@ -21,7 +21,7 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c -index 5c77a40c3ebe..b58a8c98fd05 100644 +index f2b5c7834c01..140d0f4f71da 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -27,6 +27,11 @@ @@ -36,7 +36,7 @@ index 5c77a40c3ebe..b58a8c98fd05 100644 DECLARE_GLOBAL_DATA_PTR; /* Task priority level */ -@@ -2121,10 +2126,12 @@ static int efi_corstone1000_kernel_started_event(void) +@@ -2120,10 +2125,12 @@ static int efi_corstone1000_kernel_started_event(void) func_data.data0 = &part_id; /* @@ -53,5 +53,5 @@ index 5c77a40c3ebe..b58a8c98fd05 100644 func_data.data1_size = sizeof(msg); func_data.data1 = &msg; -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0017-efi_loader-corstone1000-remove-guid-check-from-corst.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0017-efi_loader-corstone1000-remove-guid-check-from-corst.patch index fa6ab326ad..b5a17156e0 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0017-efi_loader-corstone1000-remove-guid-check-from-corst.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0017-efi_loader-corstone1000-remove-guid-check-from-corst.patch @@ -1,7 +1,7 @@ -From c463798489e41725f8ba33debeedc7c4011cda38 Mon Sep 17 00:00:00 2001 +From 596cf4d04580b191d2f4f6082000534bdab13791 Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Sat, 11 Dec 2021 13:23:55 +0000 -Subject: [PATCH 17/27] efi_loader: corstone1000: remove guid check from +Subject: [PATCH 17/24] efi_loader: corstone1000: remove guid check from corstone1000 config option Use generic fmp guid and no separte check is required for @@ -14,10 +14,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c -index 17d769803b2a..939040d2755e 100644 +index e08e97cf3fb7..891143c33909 100644 --- a/lib/efi_loader/efi_capsule.c +++ b/lib/efi_loader/efi_capsule.c -@@ -654,12 +654,6 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( +@@ -657,12 +657,6 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( i, &capsule->capsule_guid); #if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) @@ -30,7 +30,7 @@ index 17d769803b2a..939040d2755e 100644 if (efi_size_in_pages(capsule->capsule_image_size) > CORSTONE1000_CAPSULE_BUFFER_SIZE) { log_err("Corstone1000: Capsule data size exceeds the shared buffer size\n"); -@@ -685,15 +679,7 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( +@@ -688,15 +682,7 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( goto out; #endif @@ -48,5 +48,5 @@ index 17d769803b2a..939040d2755e 100644 goto out; } -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0018-arm_ffa-removing-the-cast-when-using-binary-OR-on-FI.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0018-arm_ffa-removing-the-cast-when-using-binary-OR-on-FI.patch index 4ee10a0be1..f858a26ebc 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0018-arm_ffa-removing-the-cast-when-using-binary-OR-on-FI.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0018-arm_ffa-removing-the-cast-when-using-binary-OR-on-FI.patch @@ -1,7 +1,7 @@ -From 1cfca60850727448bdbfe720d98d9e0d4523f6aa Mon Sep 17 00:00:00 2001 +From 460406b46b51b6c585788001147a8961c95cc73c Mon Sep 17 00:00:00 2001 From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Date: Sat, 11 Dec 2021 21:05:10 +0000 -Subject: [PATCH 18/27] arm_ffa: removing the cast when using binary OR on +Subject: [PATCH 18/24] arm_ffa: removing the cast when using binary OR on FIELD_PREP macros When the GENMASK used is above 16-bits wide a u16 cast will cause @@ -36,5 +36,5 @@ index 38ea4ba83efc..d0db3ef508a1 100644 /* The FF-A SMC function prototype definition */ -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0019-Return-proper-error-code-when-rx-buffer-is-larger.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0019-Return-proper-error-code-when-rx-buffer-is-larger.patch deleted file mode 100644 index 21a89a4001..0000000000 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0019-Return-proper-error-code-when-rx-buffer-is-larger.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 7db27eeaba0fd5ddb1e49977bb7e342a1980aa3d Mon Sep 17 00:00:00 2001 -From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> -Date: Sun, 12 Dec 2021 17:51:17 +0000 -Subject: [PATCH 19/27] Return proper error code when rx buffer is larger - -ffa_mm_communicate should return EFI_BUFFER_TOO_SMALL when -the buffer received from the secure world is larger than the -comm buffer as this value is forwarded by mm_communicate. - -Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> -Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> ---- - lib/efi_loader/efi_variable_tee.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/efi_loader/efi_variable_tee.c b/lib/efi_loader/efi_variable_tee.c -index b6be2b54a030..38655a9dbb7c 100644 ---- a/lib/efi_loader/efi_variable_tee.c -+++ b/lib/efi_loader/efi_variable_tee.c -@@ -358,7 +358,7 @@ static efi_status_t __efi_runtime ffa_mm_communicate(void *comm_buf, ulong comm_ - - if (rx_data_size > comm_buf_size) { - unmap_sysmem(virt_shared_buf); -- return EFI_OUT_OF_RESOURCES; -+ return EFI_BUFFER_TOO_SMALL; - } - - efi_memcpy_runtime(comm_buf, virt_shared_buf, rx_data_size); --- -2.30.2 - diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0020-Use-correct-buffer-size.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0019-Use-correct-buffer-size.patch index 54328a73d8..af857f4147 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0020-Use-correct-buffer-size.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0019-Use-correct-buffer-size.patch @@ -1,7 +1,7 @@ -From 9ad9ead58e8e9e4f9e7a283c916421b443b424ce Mon Sep 17 00:00:00 2001 +From 936c857add300f41bc58c300793a0e10b48ff69f Mon Sep 17 00:00:00 2001 From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> Date: Mon, 13 Dec 2021 15:25:23 +0000 -Subject: [PATCH 20/27] Use correct buffer size +Subject: [PATCH 19/24] Use correct buffer size The comm buffer created has additional 4 bytes length which needs to be trimmed. This change will reduce the size of the @@ -36,5 +36,5 @@ index e65fbde60d0a..bb9919095649 100644 efi_uintn_t data_size; efi_uintn_t name_size; -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0022-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0020-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch index aaea20e632..1204f2a428 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0022-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0020-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch @@ -1,7 +1,7 @@ -From 5fec641015f8f1ca80f55f05b5e1f67653321303 Mon Sep 17 00:00:00 2001 +From 5c57ef351882afebde479de430acf2c4f8fdefc8 Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Fri, 17 Dec 2021 19:49:02 +0000 -Subject: [PATCH 22/27] efi_loader: populate ESRT table if EFI_ESRT config +Subject: [PATCH 20/24] efi_loader: populate ESRT table if EFI_ESRT config option is set This change is to call efi_esrt_populate function if CONFIG_EFI_ESRT @@ -14,10 +14,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 1 file changed, 7 insertions(+) diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c -index 939040d2755e..790d2ba8fe19 100644 +index 891143c33909..7db78f1f7648 100644 --- a/lib/efi_loader/efi_capsule.c +++ b/lib/efi_loader/efi_capsule.c -@@ -676,6 +676,13 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( +@@ -679,6 +679,13 @@ efi_status_t __efi_runtime EFIAPI efi_update_capsule( ret = EFI_SUCCESS; } @@ -32,5 +32,5 @@ index 939040d2755e..790d2ba8fe19 100644 #endif -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0021-Update-comm_buf-when-EFI_BUFFER_TOO_SMALL.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0021-Update-comm_buf-when-EFI_BUFFER_TOO_SMALL.patch deleted file mode 100644 index c7ac38f77c..0000000000 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0021-Update-comm_buf-when-EFI_BUFFER_TOO_SMALL.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b81214dea7056c3877aa9eb775557dc4702660ec Mon Sep 17 00:00:00 2001 -From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> -Date: Sun, 12 Dec 2021 17:58:08 +0000 -Subject: [PATCH 21/27] Update comm_buf when EFI_BUFFER_TOO_SMALL - -When the received buffer is larger than the comm buffer, -the contents of the shared buffer which can fit in the -comm buffer should be read before returning. - -Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> -Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> ---- - lib/efi_loader/efi_variable_tee.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/efi_loader/efi_variable_tee.c b/lib/efi_loader/efi_variable_tee.c -index 38655a9dbb7c..67743d1f8fce 100644 ---- a/lib/efi_loader/efi_variable_tee.c -+++ b/lib/efi_loader/efi_variable_tee.c -@@ -357,6 +357,7 @@ static efi_status_t __efi_runtime ffa_mm_communicate(void *comm_buf, ulong comm_ - sizeof(size_t); - - if (rx_data_size > comm_buf_size) { -+ efi_memcpy_runtime(comm_buf, virt_shared_buf, comm_buf_size); - unmap_sysmem(virt_shared_buf); - return EFI_BUFFER_TOO_SMALL; - } --- -2.30.2 - diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0023-efi_firmware-add-get_image_info-for-corstone1000.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0021-efi_firmware-add-get_image_info-for-corstone1000.patch index c86b658158..8f86b653bf 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0023-efi_firmware-add-get_image_info-for-corstone1000.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0021-efi_firmware-add-get_image_info-for-corstone1000.patch @@ -1,7 +1,7 @@ -From 34fadec4f659248a6020676f5894895977ccf79d Mon Sep 17 00:00:00 2001 +From fcd1dc670d83bd7e7528370d0d6f168bfb44054d Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Fri, 17 Dec 2021 19:50:25 +0000 -Subject: [PATCH 23/27] efi_firmware: add get_image_info for corstone1000 +Subject: [PATCH 21/24] efi_firmware: add get_image_info for corstone1000 This change is to populate get_image_info which eventually will be populated in ESRT table @@ -12,26 +12,25 @@ Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> --- - lib/efi_loader/efi_firmware.c | 64 ++++++++++++++++++++++++++++++++++- - 1 file changed, 63 insertions(+), 1 deletion(-) + lib/efi_loader/efi_firmware.c | 71 ++++++++++++++++++++++++++++++++++- + 1 file changed, 70 insertions(+), 1 deletion(-) diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c -index a5ff32f121f4..9eb89849b28d 100644 +index 30cafd15caac..af43d4502f92 100644 --- a/lib/efi_loader/efi_firmware.c +++ b/lib/efi_loader/efi_firmware.c -@@ -241,6 +241,7 @@ const efi_guid_t efi_firmware_image_type_uboot_fit = - * - * Return status code - */ -+ - static - efi_status_t EFIAPI efi_firmware_fit_get_image_info( - struct efi_firmware_management_protocol *this, -@@ -332,6 +333,56 @@ const struct efi_firmware_management_protocol efi_fmp_fit = { - const efi_guid_t efi_firmware_image_type_uboot_raw = - EFI_FIRMWARE_IMAGE_TYPE_UBOOT_RAW_GUID; +@@ -17,11 +17,69 @@ + + #define FMP_PAYLOAD_HDR_SIGNATURE SIGNATURE_32('M', 'S', 'S', '1') +#if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) ++#define EFI_FIRMWARE_IMAGE_TYPE_UBOOT_RAW_GUID \ ++ EFI_GUID(0xe2bb9c06, 0x70e9, 0x4b14, 0x97, 0xa3, \ ++ 0x5a, 0x79, 0x13, 0x17, 0x6e, 0x3f) ++ ++ const efi_guid_t efi_firmware_image_type_uboot_raw = ++ EFI_FIRMWARE_IMAGE_TYPE_UBOOT_RAW_GUID; ++ +static efi_status_t efi_corstone1000_img_info_get ( + efi_uintn_t *image_info_size, + struct efi_firmware_image_descriptor *image_info, @@ -81,34 +80,38 @@ index a5ff32f121f4..9eb89849b28d 100644 + return EFI_SUCCESS; +} +#endif ++ /** - * efi_firmware_raw_get_image_info - return information about the current - firmware image -@@ -376,12 +427,20 @@ efi_status_t EFIAPI efi_firmware_raw_get_image_info( + * struct fmp_payload_header - EDK2 header for the FMP payload + * + * This structure describes the header which is preprended to the +- * FMP payload by the edk2 capsule generation scripts. ++ * FMP payload by the edk1 capsule generation scripts. + * + * @signature: Header signature used to identify the header + * @header_size: Size of the structure +@@ -285,10 +343,18 @@ efi_status_t EFIAPI efi_firmware_get_image_info( !descriptor_size || !package_version || !package_version_name)) return EFI_EXIT(EFI_INVALID_PARAMETER); -- ret = efi_get_dfu_info(image_info_size, image_info, +#if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) + ret = efi_corstone1000_img_info_get(image_info_size, image_info, - descriptor_version, descriptor_count, - descriptor_size, - package_version, package_version_name, - &efi_firmware_image_type_uboot_raw); -+#else - -+ ret = efi_get_dfu_info(image_info_size, image_info, + descriptor_version, descriptor_count, + descriptor_size, + package_version, package_version_name, + &efi_firmware_image_type_uboot_raw); ++#else + ret = efi_fill_image_desc_array(image_info_size, image_info, + descriptor_version, descriptor_count, + descriptor_size, package_version, + package_version_name); +#endif + return EFI_EXIT(ret); } - -@@ -462,6 +521,9 @@ efi_status_t EFIAPI efi_firmware_raw_set_image( - - } +@@ -401,6 +467,9 @@ efi_status_t EFIAPI efi_firmware_raw_set_image( + if (status != EFI_SUCCESS) + return EFI_EXIT(status); +#if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) + return EFI_EXIT(EFI_SUCCESS); @@ -117,5 +120,5 @@ index a5ff32f121f4..9eb89849b28d 100644 NULL, NULL)) return EFI_EXIT(EFI_DEVICE_ERROR); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0025-efi_loader-send-bootcomplete-message-to-secure-encla.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0022-efi_loader-send-bootcomplete-message-to-secure-encla.patch index d5a0ec0b1b..1dc04553d7 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0025-efi_loader-send-bootcomplete-message-to-secure-encla.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0022-efi_loader-send-bootcomplete-message-to-secure-encla.patch @@ -1,7 +1,7 @@ -From af2defbfaffa4264052e30f269b91794068e4773 Mon Sep 17 00:00:00 2001 +From 902d5c499b6627a505986d298986a4ac430592b8 Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Wed, 5 Jan 2022 17:56:09 +0000 -Subject: [PATCH 25/27] efi_loader: send bootcomplete message to secure enclave +Subject: [PATCH 22/24] efi_loader: send bootcomplete message to secure enclave On corstone1000 platform, Secure Enclave will be expecting an event from uboot when it performs capsule update. Previously, @@ -32,10 +32,10 @@ index a7445e61348b..06b605e43bdf 100644 #define PREP_SEPROXY_SVC_ID_MASK GENMASK(31, 16) #define PREP_SEPROXY_SVC_ID(x) (FIELD_PREP(PREP_SEPROXY_SVC_ID_MASK, (x))) diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c -index b58a8c98fd05..d0703060491b 100644 +index 140d0f4f71da..6b9f5cf272b8 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c -@@ -2101,46 +2101,6 @@ static void efi_exit_caches(void) +@@ -2100,46 +2100,6 @@ static void efi_exit_caches(void) #endif } @@ -82,7 +82,7 @@ index b58a8c98fd05..d0703060491b 100644 /** * efi_exit_boot_services() - stop all boot services * @image_handle: handle of the loaded image -@@ -2254,15 +2214,6 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, +@@ -2253,15 +2213,6 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, /* Recalculate CRC32 */ efi_update_table_header_crc32(&systab.hdr); @@ -99,10 +99,10 @@ index b58a8c98fd05..d0703060491b 100644 efi_set_watchdog(0); WATCHDOG_RESET(); diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c -index 9eb89849b28d..477ad072070e 100644 +index af43d4502f92..25f427b93669 100644 --- a/lib/efi_loader/efi_firmware.c +++ b/lib/efi_loader/efi_firmware.c -@@ -356,7 +356,7 @@ static efi_status_t efi_corstone1000_img_info_get ( +@@ -47,7 +47,7 @@ static efi_status_t efi_corstone1000_img_info_get ( *package_version_name = NULL; /* not supported */ if(image_info == NULL) { @@ -112,7 +112,7 @@ index 9eb89849b28d..477ad072070e 100644 } diff --git a/lib/efi_loader/efi_setup.c b/lib/efi_loader/efi_setup.c -index 989380d4f8cd..515a0bdf74ef 100644 +index bfd4687e10b5..a20128e9b582 100644 --- a/lib/efi_loader/efi_setup.c +++ b/lib/efi_loader/efi_setup.c @@ -17,6 +17,9 @@ @@ -187,5 +187,5 @@ index 989380d4f8cd..515a0bdf74ef 100644 if (ret != EFI_SUCCESS) { printf("EFI: Corstone-1000: cannot allocate caspsule shared buffer\n"); -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0026-efi_loader-fix-null-pointer-exception-with-get_image.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0023-efi_loader-fix-null-pointer-exception-with-get_image.patch index 532e872677..165fac5fa0 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0026-efi_loader-fix-null-pointer-exception-with-get_image.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0023-efi_loader-fix-null-pointer-exception-with-get_image.patch @@ -1,7 +1,7 @@ -From 2da8554ab732c59c7ca624ac4b16412fa9c2e39c Mon Sep 17 00:00:00 2001 +From 383078dde2fbf509dc3d24505f6b328316aee030 Mon Sep 17 00:00:00 2001 From: Vishnu Banavath <vishnu.banavath@arm.com> Date: Fri, 14 Jan 2022 15:24:18 +0000 -Subject: [PATCH 26/27] efi_loader: fix null pointer exception with +Subject: [PATCH 23/24] efi_loader: fix null pointer exception with get_image_info get_img_info API implemented for corstone1000 target does not @@ -16,10 +16,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c -index 477ad072070e..f99c57fde576 100644 +index 25f427b93669..28d9a19edb90 100644 --- a/lib/efi_loader/efi_firmware.c +++ b/lib/efi_loader/efi_firmware.c -@@ -347,26 +347,29 @@ static efi_status_t efi_corstone1000_img_info_get ( +@@ -38,26 +38,29 @@ static efi_status_t efi_corstone1000_img_info_get ( int i = 0; *image_info_size = sizeof(*image_info); @@ -58,5 +58,5 @@ index 477ad072070e..f99c57fde576 100644 IMAGE_ATTRIBUTE_AUTHENTICATION_REQUIRED; image_info[i].attributes_setting = IMAGE_ATTRIBUTE_IMAGE_UPDATABLE; -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0024-Comment-mm_communicate-failure-log.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0024-Comment-mm_communicate-failure-log.patch deleted file mode 100644 index c6a1aed2e6..0000000000 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0024-Comment-mm_communicate-failure-log.patch +++ /dev/null @@ -1,34 +0,0 @@ -From c0c6e4c1166c4868afc36649b9ed98081a6966e1 Mon Sep 17 00:00:00 2001 -From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> -Date: Fri, 24 Dec 2021 14:22:52 +0000 -Subject: [PATCH 24/27] Comment mm_communicate failure log - -When a getVariable() call is made with data size set to 0, -mm_communicate should return EFI_BUFFER_TOO_SMALL. This is -an expected behavior. There should not be any failure logs -in this case. So the error log is commented here. - -Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> ---- - lib/efi_loader/efi_variable_tee.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/lib/efi_loader/efi_variable_tee.c b/lib/efi_loader/efi_variable_tee.c -index 67743d1f8fce..a34989efac83 100644 ---- a/lib/efi_loader/efi_variable_tee.c -+++ b/lib/efi_loader/efi_variable_tee.c -@@ -411,7 +411,10 @@ static efi_status_t __efi_runtime mm_communicate(u8 *comm_buf, efi_uintn_t dsize - ret = ffa_mm_communicate(comm_buf, dsize); - #endif - if (ret != EFI_SUCCESS) { -- log_err("%s failed!\n", __func__); -+ /* mm_communicate failure is logged even when getVariable() is called -+ * with data size set to 0. This is not expected so logging is commented. -+ */ -+ //log_err("%s failed!\n", __func__); - return ret; - } - --- -2.30.2 - diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0027-arm-corstone1000-add-mmc-for-fvp.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0024-arm-corstone1000-add-mmc-for-fvp.patch index bf95ed7273..2b9ca780e6 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0027-arm-corstone1000-add-mmc-for-fvp.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0024-arm-corstone1000-add-mmc-for-fvp.patch @@ -1,7 +1,7 @@ -From cbf16548dc6dcc8eea97aa18c6ae17fb848e5c6c Mon Sep 17 00:00:00 2001 +From cc3356c2a30b7aa85a25e9bc7b69a03537df3f27 Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Tue, 5 Apr 2022 10:24:38 +0100 -Subject: [PATCH 27/27] arm:corstone1000: add mmc for fvp +Subject: [PATCH 24/24] arm:corstone1000: add mmc for fvp Enable support mmc/sdcard for the corstone1000 FVP. @@ -52,7 +52,7 @@ index 1fcc137a493c..26b0f1b3cea6 100644 + }; }; diff --git a/board/armltd/corstone1000/corstone1000.c b/board/armltd/corstone1000/corstone1000.c -index eff1739f0b02..936a6c9f8b89 100644 +index 2fa485ff3799..3d537d7a9052 100644 --- a/board/armltd/corstone1000/corstone1000.c +++ b/board/armltd/corstone1000/corstone1000.c @@ -46,22 +46,38 @@ static struct mm_region corstone1000_mem_map[] = { @@ -144,5 +144,5 @@ index 06b605e43bdf..d9855bf91ebf 100644 #include <config_distro_bootcmd.h> -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0025-corstone1000-use-a-compressed-kernel.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0025-corstone1000-use-a-compressed-kernel.patch new file mode 100644 index 0000000000..4cc2498bf0 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0025-corstone1000-use-a-compressed-kernel.patch @@ -0,0 +1,32 @@ +From df70c467c5d100f1522b4521f48da4c51e43688c Mon Sep 17 00:00:00 2001 +From: Jon Mason <jon.mason@arm.com> +Date: Thu, 25 Aug 2022 13:48:22 +0000 +Subject: [PATCH 25/25] corstone1000: use a compressed kernel + +The corstone1000 kernel has become too large to fit in the available +storage. Swtiching to a compressed kernel avoids the problem, but +requires uncompressing it. Add this decompression to the default boot +instructions. + +Signed-off-by: Jon Mason <jon.mason@arm.com> +--- + include/configs/corstone1000.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/include/configs/corstone1000.h b/include/configs/corstone1000.h +index d9855bf91e..d0cbc40121 100644 +--- a/include/configs/corstone1000.h ++++ b/include/configs/corstone1000.h +@@ -126,7 +126,8 @@ + #define CONFIG_BOOTCOMMAND \ + "run retrieve_kernel_load_addr;" \ + "echo Loading kernel from $kernel_addr to memory ... ;" \ +- "loadm $kernel_addr $kernel_addr_r 0xc00000;" \ ++ "unzip $kernel_addr 0x90000000;" \ ++ "loadm 0x90000000 $kernel_addr_r 0xd00000;" \ + "usb start; usb reset;" \ + "run distro_bootcmd;" \ + "bootefi $kernel_addr_r $fdtcontroladdr;" +-- +2.30.2 + diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0001-armv7-adding-generic-timer-access-through-MMIO.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0001-armv7-adding-generic-timer-access-through-MMIO.patch index 8a98f9dedc..9a2997569f 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0001-armv7-adding-generic-timer-access-through-MMIO.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0001-armv7-adding-generic-timer-access-through-MMIO.patch @@ -1,4 +1,4 @@ -From fff63cfd7d9654dc9ed0c106f29d3a7ad01b0502 Mon Sep 17 00:00:00 2001 +From d75d794785419592ba49046165d19a6ec9488b2d Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Wed, 18 Dec 2019 21:52:34 +0000 Subject: [PATCH 1/2] armv7: adding generic timer access through MMIO @@ -21,6 +21,8 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> %% original patch: 0001-armv7-adding-generic-timer-access-through-MMIO.patch + +Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> --- arch/arm/cpu/armv7/Makefile | 1 + arch/arm/cpu/armv7/mmio_timer.c | 75 +++++++++++++++++++++++++++++++++ @@ -29,7 +31,7 @@ Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> create mode 100644 arch/arm/cpu/armv7/mmio_timer.c diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile -index bfbd85ae64..1a0a24e531 100644 +index bfbd85ae64ef..1a0a24e53110 100644 --- a/arch/arm/cpu/armv7/Makefile +++ b/arch/arm/cpu/armv7/Makefile @@ -28,6 +28,7 @@ obj-$(CONFIG_ARMV7_PSCI) += psci.o psci-common.o @@ -42,7 +44,7 @@ index bfbd85ae64..1a0a24e531 100644 obj-y += s5p-common/ diff --git a/arch/arm/cpu/armv7/mmio_timer.c b/arch/arm/cpu/armv7/mmio_timer.c new file mode 100644 -index 0000000000..edd806e06e +index 000000000000..edd806e06e42 --- /dev/null +++ b/arch/arm/cpu/armv7/mmio_timer.c @@ -0,0 +1,75 @@ @@ -122,17 +124,17 @@ index 0000000000..edd806e06e + return gd->arch.timer_rate_hz; +} diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt -index a6bc234f51..8d5cd67ace 100644 +index c61df4fb1c9b..cfb1c68b6297 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt -@@ -1524,6 +1524,7 @@ CONFIG_SYS_MMC_U_BOOT_DST +@@ -1253,6 +1253,7 @@ CONFIG_SYS_MMC_U_BOOT_DST CONFIG_SYS_MMC_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_SIZE CONFIG_SYS_MMC_U_BOOT_START +CONFIG_SYS_MMIO_TIMER - CONFIG_SYS_MONITOR_BASE CONFIG_SYS_MONITOR_LEN CONFIG_SYS_MONITOR_SEC + CONFIG_SYS_MOR_VAL -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0002-board-arm-add-corstone500-board.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0002-board-arm-add-corstone500-board.patch index 29b29438c8..c389a64c87 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0002-board-arm-add-corstone500-board.patch +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone500/0002-board-arm-add-corstone500-board.patch @@ -1,4 +1,4 @@ -From 73c319a1096259652853fa2538a733a8ebea96a8 Mon Sep 17 00:00:00 2001 +From 3566cf4ab79ca78acd69cfb87e74587394e5aeb2 Mon Sep 17 00:00:00 2001 From: Rui Miguel Silva <rui.silva@linaro.org> Date: Wed, 8 Jan 2020 09:48:11 +0000 Subject: [PATCH 2/2] board: arm: add corstone500 board @@ -13,6 +13,8 @@ makefile for this system. Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> %% original patch: 0002-board-arm-add-corstone500-board.patch + +Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> --- arch/arm/Kconfig | 10 +++ board/armltd/corstone500/Kconfig | 12 +++ @@ -28,10 +30,10 @@ Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org> create mode 100644 include/configs/corstone500.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 4567c183fb..66f99fdf4f 100644 +index 9898c7d68e1b..8c60ed39712e 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -641,6 +641,15 @@ config ARCH_BCMSTB +@@ -718,6 +718,15 @@ config ARCH_BCMSTB This enables support for Broadcom ARM-based set-top box chipsets, including the 7445 family of chips. @@ -47,7 +49,7 @@ index 4567c183fb..66f99fdf4f 100644 config TARGET_VEXPRESS_CA9X4 bool "Support vexpress_ca9x4" select CPU_V7A -@@ -2202,6 +2211,7 @@ source "board/bosch/shc/Kconfig" +@@ -2299,6 +2308,7 @@ source "board/bosch/shc/Kconfig" source "board/bosch/guardian/Kconfig" source "board/Marvell/octeontx/Kconfig" source "board/Marvell/octeontx2/Kconfig" @@ -57,7 +59,7 @@ index 4567c183fb..66f99fdf4f 100644 source "board/cortina/presidio-asic/Kconfig" diff --git a/board/armltd/corstone500/Kconfig b/board/armltd/corstone500/Kconfig new file mode 100644 -index 0000000000..8e689bd1fd +index 000000000000..8e689bd1fdc8 --- /dev/null +++ b/board/armltd/corstone500/Kconfig @@ -0,0 +1,12 @@ @@ -75,7 +77,7 @@ index 0000000000..8e689bd1fd +endif diff --git a/board/armltd/corstone500/Makefile b/board/armltd/corstone500/Makefile new file mode 100644 -index 0000000000..6598fdd3ae +index 000000000000..6598fdd3ae0d --- /dev/null +++ b/board/armltd/corstone500/Makefile @@ -0,0 +1,8 @@ @@ -89,7 +91,7 @@ index 0000000000..6598fdd3ae +obj-y := corstone500.o diff --git a/board/armltd/corstone500/corstone500.c b/board/armltd/corstone500/corstone500.c new file mode 100644 -index 0000000000..e878f5c6a5 +index 000000000000..e878f5c6a521 --- /dev/null +++ b/board/armltd/corstone500/corstone500.c @@ -0,0 +1,48 @@ @@ -143,7 +145,7 @@ index 0000000000..e878f5c6a5 + diff --git a/configs/corstone500_defconfig b/configs/corstone500_defconfig new file mode 100644 -index 0000000000..d3161a4b40 +index 000000000000..d3161a4b40d8 --- /dev/null +++ b/configs/corstone500_defconfig @@ -0,0 +1,40 @@ @@ -189,7 +191,7 @@ index 0000000000..d3161a4b40 +CONFIG_OF_LIBFDT=y diff --git a/include/configs/corstone500.h b/include/configs/corstone500.h new file mode 100644 -index 0000000000..93c397d2f5 +index 000000000000..93c397d2f515 --- /dev/null +++ b/include/configs/corstone500.h @@ -0,0 +1,109 @@ @@ -303,5 +305,5 @@ index 0000000000..93c397d2f5 +#define CONFIG_ENV_IS_IN_FLASH 1 +#endif -- -2.30.2 +2.37.1 diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot_%.bbappend b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot_%.bbappend index e254d41b4c..a0a7284554 100644 --- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot_%.bbappend +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot_%.bbappend @@ -36,15 +36,13 @@ SRC_URI:append:corstone1000 = " \ file://0016-efi_boottime-corstone1000-pass-interface-id-and-kern.patch \ file://0017-efi_loader-corstone1000-remove-guid-check-from-corst.patch \ file://0018-arm_ffa-removing-the-cast-when-using-binary-OR-on-FI.patch \ - file://0019-Return-proper-error-code-when-rx-buffer-is-larger.patch \ - file://0020-Use-correct-buffer-size.patch \ - file://0021-Update-comm_buf-when-EFI_BUFFER_TOO_SMALL.patch \ - file://0022-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch \ - file://0023-efi_firmware-add-get_image_info-for-corstone1000.patch \ - file://0024-Comment-mm_communicate-failure-log.patch \ - file://0025-efi_loader-send-bootcomplete-message-to-secure-encla.patch \ - file://0026-efi_loader-fix-null-pointer-exception-with-get_image.patch \ - file://0027-arm-corstone1000-add-mmc-for-fvp.patch \ + file://0019-Use-correct-buffer-size.patch \ + file://0020-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch \ + file://0021-efi_firmware-add-get_image_info-for-corstone1000.patch \ + file://0022-efi_loader-send-bootcomplete-message-to-secure-encla.patch \ + file://0023-efi_loader-fix-null-pointer-exception-with-get_image.patch \ + file://0024-arm-corstone1000-add-mmc-for-fvp.patch \ + file://0025-corstone1000-use-a-compressed-kernel.patch \ " # diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/arm-platforms-kmeta/bsp/arm-platforms/juno.scc b/meta-arm/meta-arm-bsp/recipes-kernel/linux/arm-platforms-kmeta/bsp/arm-platforms/juno.scc index 2980b39338..240ecf5e48 100644 --- a/meta-arm/meta-arm-bsp/recipes-kernel/linux/arm-platforms-kmeta/bsp/arm-platforms/juno.scc +++ b/meta-arm/meta-arm-bsp/recipes-kernel/linux/arm-platforms-kmeta/bsp/arm-platforms/juno.scc @@ -1,5 +1,6 @@ include features/input/input.scc include features/net/net.scc +include features/bluetooth/bluetooth.scc include cfg/timer/no_hz.scc include cfg/usb-mass-storage.scc diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/fvp-base-arm32/0001-ARM-vexpress-enable-GICv3.patch b/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/fvp-base-arm32/0001-ARM-vexpress-enable-GICv3.patch index d0a05c2462..184a763176 100644 --- a/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/fvp-base-arm32/0001-ARM-vexpress-enable-GICv3.patch +++ b/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/fvp-base-arm32/0001-ARM-vexpress-enable-GICv3.patch @@ -1,4 +1,4 @@ -From 5dbb6c4267b1e46ed08359be363d8bc9b6a79397 Mon Sep 17 00:00:00 2001 +From 9fe529a146f4528ec80a3d04588e387f3651dc22 Mon Sep 17 00:00:00 2001 From: Ryan Harkin <ryan.harkin@linaro.org> Date: Wed, 16 Nov 2016 14:43:02 +0000 Subject: [PATCH] ARM: vexpress: enable GICv3 @@ -11,21 +11,21 @@ ARMv7 kernel. And these targets often contain GICv3. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Jon Medhurst <tixy@linaro.org> --- - arch/arm/mach-vexpress/Kconfig | 1 + + arch/arm/mach-versatile/Kconfig | 1 + 1 file changed, 1 insertion(+) -diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig -index 7c728ebc0b33..ed579382d41f 100644 ---- a/arch/arm/mach-vexpress/Kconfig -+++ b/arch/arm/mach-vexpress/Kconfig -@@ -4,6 +4,7 @@ menuconfig ARCH_VEXPRESS - select ARCH_SUPPORTS_BIG_ENDIAN +diff --git a/arch/arm/mach-versatile/Kconfig b/arch/arm/mach-versatile/Kconfig +index 2ef226194c3a..3d54877fe339 100644 +--- a/arch/arm/mach-versatile/Kconfig ++++ b/arch/arm/mach-versatile/Kconfig +@@ -251,6 +251,7 @@ menuconfig ARCH_VEXPRESS + depends on ARCH_MULTI_V7 select ARM_AMBA select ARM_GIC + select ARM_GIC_V3 select ARM_GLOBAL_TIMER select ARM_TIMER_SP804 - select COMMON_CLK_VERSATILE + select GPIOLIB -- -2.17.1 +2.30.2 diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch b/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch deleted file mode 100644 index 81f641c478..0000000000 --- a/meta-arm/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch +++ /dev/null @@ -1,616 +0,0 @@ -Add MHU doorbell support and SCMI device nodes to the Juno DeviceTree. - -Patch taken from https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux.git/log/?h=scmi_dt_defconfig - -Upstream-Status: Pending -Signed-off-by: Ross Burton <ross.burton@arm.com> - -From 821ffd8e5dc4d2fb2716d5fb912b343b932e1e77 Mon Sep 17 00:00:00 2001 -From: Sudeep Holla <sudeep.holla@arm.com> -Date: Thu, 20 Apr 2017 11:58:01 +0100 -Subject: [PATCH] arm64: dts: juno: add mhu doorbell support and scmi device - nodes - -Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> ---- - arch/arm64/boot/dts/arm/juno-base.dtsi | 139 ++++++++++++---------- - arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 6 +- - arch/arm64/boot/dts/arm/juno-r1.dts | 12 +- - arch/arm64/boot/dts/arm/juno-r2.dts | 12 +- - arch/arm64/boot/dts/arm/juno.dts | 12 +- - 5 files changed, 96 insertions(+), 85 deletions(-) - -diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi -index 6288e104a089..36844f7d861e 100644 ---- a/arch/arm64/boot/dts/arm/juno-base.dtsi -+++ b/arch/arm64/boot/dts/arm/juno-base.dtsi -@@ -23,11 +23,12 @@ frame@2a830000 { - }; - - mailbox: mhu@2b1f0000 { -- compatible = "arm,mhu", "arm,primecell"; -+ compatible = "arm,mhu-doorbell", "arm,primecell"; - reg = <0x0 0x2b1f0000 0x0 0x1000>; - interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; -- #mbox-cells = <1>; -+ #mbox-cells = <2>; -+ mbox-name = "ARM-MHU"; - clocks = <&soc_refclk100mhz>; - clock-names = "apb_pclk"; - }; -@@ -39,7 +40,7 @@ smmu_gpu: iommu@2b400000 { - <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; - #iommu-cells = <1>; - #global-interrupts = <1>; -- power-domains = <&scpi_devpd 1>; -+ power-domains = <&scmi_devpd 9>; - dma-coherent; - status = "disabled"; - }; -@@ -63,7 +64,7 @@ smmu_etr: iommu@2b600000 { - #iommu-cells = <1>; - #global-interrupts = <1>; - dma-coherent; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - gic: interrupt-controller@2c010000 { -@@ -123,7 +124,7 @@ etf@20010000 { /* etf0 */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - - in-ports { - port { -@@ -147,7 +148,7 @@ tpiu@20030000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - in-ports { - port { - tpiu_in_port: endpoint { -@@ -164,7 +165,7 @@ main_funnel: funnel@20040000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - - out-ports { - port { -@@ -201,7 +202,7 @@ etr@20070000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - arm,scatter-gather; - in-ports { - port { -@@ -220,7 +221,7 @@ stm@20100000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - stm_out_port: endpoint { -@@ -235,7 +236,7 @@ replicator@20120000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - - out-ports { - #address-cells = <1>; -@@ -270,7 +271,7 @@ cpu_debug0: cpu-debug@22010000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm0: etm@22040000 { -@@ -279,7 +280,7 @@ etm0: etm@22040000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster0_etm0_out_port: endpoint { -@@ -295,7 +296,7 @@ funnel@220c0000 { /* cluster0 funnel */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster0_funnel_out_port: endpoint { -@@ -330,7 +331,7 @@ cpu_debug1: cpu-debug@22110000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm1: etm@22140000 { -@@ -339,7 +340,7 @@ etm1: etm@22140000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster0_etm1_out_port: endpoint { -@@ -355,7 +356,7 @@ cpu_debug2: cpu-debug@23010000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm2: etm@23040000 { -@@ -364,7 +365,7 @@ etm2: etm@23040000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster1_etm0_out_port: endpoint { -@@ -380,7 +381,7 @@ funnel@230c0000 { /* cluster1 funnel */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster1_funnel_out_port: endpoint { -@@ -427,7 +428,7 @@ cpu_debug3: cpu-debug@23110000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm3: etm@23140000 { -@@ -436,7 +437,7 @@ etm3: etm@23140000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster1_etm1_out_port: endpoint { -@@ -452,7 +453,7 @@ cpu_debug4: cpu-debug@23210000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm4: etm@23240000 { -@@ -461,7 +462,7 @@ etm4: etm@23240000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster1_etm2_out_port: endpoint { -@@ -477,7 +478,7 @@ cpu_debug5: cpu-debug@23310000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - }; - - etm5: etm@23340000 { -@@ -486,7 +487,7 @@ etm5: etm@23340000 { - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - cluster1_etm3_out_port: endpoint { -@@ -503,8 +504,8 @@ gpu: gpu@2d000000 { - <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; - interrupt-names = "job", "mmu", "gpu"; -- clocks = <&scpi_dvfs 2>; -- power-domains = <&scpi_devpd 1>; -+ clocks = <&scmi_dvfs 2>; -+ power-domains = <&scmi_devpd 9>; - dma-coherent; - /* The SMMU is only really of interest to bare-metal hypervisors */ - /* iommus = <&smmu_gpu 0>; */ -@@ -519,14 +520,24 @@ sram: sram@2e000000 { - #size-cells = <1>; - ranges = <0 0x0 0x2e000000 0x8000>; - -- cpu_scp_lpri: scp-sram@0 { -- compatible = "arm,juno-scp-shmem"; -- reg = <0x0 0x200>; -+ cpu_scp_lpri0: scp-sram@0 { -+ compatible = "arm,scmi-shmem"; -+ reg = <0x0 0x80>; - }; - -- cpu_scp_hpri: scp-sram@200 { -- compatible = "arm,juno-scp-shmem"; -- reg = <0x200 0x200>; -+ cpu_scp_lpri1: scp-sram@80 { -+ compatible = "arm,scmi-shmem"; -+ reg = <0x80 0x80>; -+ }; -+ -+ cpu_scp_hpri0: scp-sram@100 { -+ compatible = "arm,scmi-shmem"; -+ reg = <0x100 0x80>; -+ }; -+ -+ cpu_scp_hpri1: scp-sram@180 { -+ compatible = "arm,scmi-shmem"; -+ reg = <0x180 0x80>; - }; - }; - -@@ -558,37 +569,37 @@ pcie_ctlr: pcie@40000000 { - iommu-map = <0x0 &smmu_pcie 0x0 0x1>; - }; - -- scpi { -- compatible = "arm,scpi"; -- mboxes = <&mailbox 1>; -- shmem = <&cpu_scp_hpri>; -+ firmware { -+ scmi { -+ compatible = "arm,scmi"; -+ mbox-names = "tx", "rx"; -+ mboxes = <&mailbox 0 0 &mailbox 0 1>; -+ shmem = <&cpu_scp_lpri0 &cpu_scp_lpri1>; -+ #address-cells = <1>; -+ #size-cells = <0>; - -- clocks { -- compatible = "arm,scpi-clocks"; -+ scmi_devpd: protocol@11 { -+ reg = <0x11>; -+ #power-domain-cells = <1>; -+ }; - -- scpi_dvfs: clocks-0 { -- compatible = "arm,scpi-dvfs-clocks"; -+ scmi_dvfs: protocol@13 { -+ reg = <0x13>; - #clock-cells = <1>; -- clock-indices = <0>, <1>, <2>; -- clock-output-names = "atlclk", "aplclk","gpuclk"; -+ mbox-names = "tx", "rx"; -+ mboxes = <&mailbox 1 0 &mailbox 1 1>; -+ shmem = <&cpu_scp_hpri0 &cpu_scp_hpri1>; - }; -- scpi_clk: clocks-1 { -- compatible = "arm,scpi-variable-clocks"; -+ -+ scmi_clk: protocol@14 { -+ reg = <0x14>; - #clock-cells = <1>; -- clock-indices = <3>; -- clock-output-names = "pxlclk"; - }; -- }; - -- scpi_devpd: power-controller { -- compatible = "arm,scpi-power-domains"; -- num-domains = <2>; -- #power-domain-cells = <1>; -- }; -- -- scpi_sensors0: sensors { -- compatible = "arm,scpi-sensors"; -- #thermal-sensor-cells = <1>; -+ scmi_sensors0: protocol@15 { -+ reg = <0x15>; -+ #thermal-sensor-cells = <1>; -+ }; - }; - }; - -@@ -596,40 +607,40 @@ thermal-zones { - pmic { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 0>; -+ thermal-sensors = <&scmi_sensors0 0>; - }; - - soc { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 3>; -+ thermal-sensors = <&scmi_sensors0 3>; - }; - - big_cluster_thermal_zone: big-cluster { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 21>; -+ thermal-sensors = <&scmi_sensors0 21>; - status = "disabled"; - }; - - little_cluster_thermal_zone: little-cluster { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 22>; -+ thermal-sensors = <&scmi_sensors0 22>; - status = "disabled"; - }; - - gpu0_thermal_zone: gpu0 { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 23>; -+ thermal-sensors = <&scmi_sensors0 23>; - status = "disabled"; - }; - - gpu1_thermal_zone: gpu1 { - polling-delay = <1000>; - polling-delay-passive = <100>; -- thermal-sensors = <&scpi_sensors0 24>; -+ thermal-sensors = <&scmi_sensors0 24>; - status = "disabled"; - }; - }; -@@ -705,7 +716,7 @@ hdlcd@7ff50000 { - reg = <0 0x7ff50000 0 0x1000>; - interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; - iommus = <&smmu_hdlcd1 0>; -- clocks = <&scpi_clk 3>; -+ clocks = <&scmi_clk 3>; - clock-names = "pxlclk"; - - port { -@@ -720,7 +731,7 @@ hdlcd@7ff60000 { - reg = <0 0x7ff60000 0 0x1000>; - interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; - iommus = <&smmu_hdlcd0 0>; -- clocks = <&scpi_clk 3>; -+ clocks = <&scmi_clk 3>; - clock-names = "pxlclk"; - - port { -diff --git a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi -index eda3d9e18af6..e6ecb0dfcbcd 100644 ---- a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi -+++ b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi -@@ -6,7 +6,7 @@ funnel@20130000 { /* cssys1 */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - csys1_funnel_out_port: endpoint { -@@ -29,7 +29,7 @@ etf@20140000 { /* etf1 */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - in-ports { - port { - etf1_in_port: endpoint { -@@ -52,7 +52,7 @@ funnel@20150000 { /* cssys2 */ - - clocks = <&soc_smc50mhz>; - clock-names = "apb_pclk"; -- power-domains = <&scpi_devpd 0>; -+ power-domains = <&scmi_devpd 8>; - out-ports { - port { - csys2_funnel_out_port: endpoint { -diff --git a/arch/arm64/boot/dts/arm/juno-r1.dts b/arch/arm64/boot/dts/arm/juno-r1.dts -index 0e24e29eb9b1..fee67943f4d5 100644 ---- a/arch/arm64/boot/dts/arm/juno-r1.dts -+++ b/arch/arm64/boot/dts/arm/juno-r1.dts -@@ -96,7 +96,7 @@ A57_0: cpu@0 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A57_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - }; -@@ -113,7 +113,7 @@ A57_1: cpu@1 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A57_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - }; -@@ -130,7 +130,7 @@ A53_0: cpu@100 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - }; -@@ -147,7 +147,7 @@ A53_1: cpu@101 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - }; -@@ -164,7 +164,7 @@ A53_2: cpu@102 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - }; -@@ -181,7 +181,7 @@ A53_3: cpu@103 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - }; -diff --git a/arch/arm64/boot/dts/arm/juno-r2.dts b/arch/arm64/boot/dts/arm/juno-r2.dts -index e609420ce3e4..7792626eb29e 100644 ---- a/arch/arm64/boot/dts/arm/juno-r2.dts -+++ b/arch/arm64/boot/dts/arm/juno-r2.dts -@@ -96,7 +96,7 @@ A72_0: cpu@0 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A72_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <450>; -@@ -114,7 +114,7 @@ A72_1: cpu@1 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A72_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <450>; -@@ -132,7 +132,7 @@ A53_0: cpu@100 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <485>; - dynamic-power-coefficient = <140>; -@@ -150,7 +150,7 @@ A53_1: cpu@101 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <485>; - dynamic-power-coefficient = <140>; -@@ -168,7 +168,7 @@ A53_2: cpu@102 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <485>; - dynamic-power-coefficient = <140>; -@@ -186,7 +186,7 @@ A53_3: cpu@103 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <485>; - dynamic-power-coefficient = <140>; -diff --git a/arch/arm64/boot/dts/arm/juno.dts b/arch/arm64/boot/dts/arm/juno.dts -index f00cffbd032c..a28316c65c1b 100644 ---- a/arch/arm64/boot/dts/arm/juno.dts -+++ b/arch/arm64/boot/dts/arm/juno.dts -@@ -95,7 +95,7 @@ A57_0: cpu@0 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A57_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <530>; -@@ -113,7 +113,7 @@ A57_1: cpu@1 { - d-cache-line-size = <64>; - d-cache-sets = <256>; - next-level-cache = <&A57_L2>; -- clocks = <&scpi_dvfs 0>; -+ clocks = <&scmi_dvfs 0>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <530>; -@@ -131,7 +131,7 @@ A53_0: cpu@100 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - dynamic-power-coefficient = <140>; -@@ -149,7 +149,7 @@ A53_1: cpu@101 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - dynamic-power-coefficient = <140>; -@@ -167,7 +167,7 @@ A53_2: cpu@102 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - dynamic-power-coefficient = <140>; -@@ -185,7 +185,7 @@ A53_3: cpu@103 { - d-cache-line-size = <64>; - d-cache-sets = <128>; - next-level-cache = <&A53_L2>; -- clocks = <&scpi_dvfs 1>; -+ clocks = <&scmi_dvfs 1>; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - capacity-dmips-mhz = <578>; - dynamic-power-coefficient = <140>; --- -2.25.1 - diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm-platforms.inc b/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm-platforms.inc index f05c5ffc46..7bb4a92556 100644 --- a/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm-platforms.inc +++ b/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm-platforms.inc @@ -91,7 +91,6 @@ COMPATIBLE_MACHINE:juno = "juno" KBUILD_DEFCONFIG:juno = "defconfig" KCONFIG_MODE:juno = "--alldefconfig" FILESEXTRAPATHS:prepend:juno := "${ARMBSPFILESPATHS}" -SRC_URI:append:juno = " file://juno-dts-mhu-doorbell.patch" # # Musca B1/S2 can't run Linux @@ -180,6 +179,7 @@ SRC_URI:append:tc = " \ file://0042-ANDROID-trusty-ffa-Add-support-for-FFA-memory-operat.patch \ file://0043-ANDROID-trusty-ffa-Enable-FFA-transport-for-both-mem.patch \ file://0044-ANDROID-trusty-Make-trusty-transports-configurable.patch \ + file://init_disassemble_info-signature-changes-causes-compile-failures.patch \ " KERNEL_FEATURES:append:tc = " bsp/arm-platforms/tc.scc" KERNEL_FEATURES:append:tc1 = " bsp/arm-platforms/tc-autofdo.scc" diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/init_disassemble_info-signature-changes-causes-compile-failures.patch b/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/init_disassemble_info-signature-changes-causes-compile-failures.patch new file mode 100644 index 0000000000..aa33bb7f1b --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/init_disassemble_info-signature-changes-causes-compile-failures.patch @@ -0,0 +1,99 @@ +From 1b2013986271de39360cf79e62ed9b7d2cc59f9b 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 6c8575e182ed..466a3a68f5cd 100644 +--- a/tools/perf/util/annotate.c ++++ b/tools/perf/util/annotate.c +@@ -1677,6 +1677,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) + { +@@ -1719,7 +1731,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-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0001-core-arm-add-MPIDR-affinity-shift-and-mask-for-32-bi.patch b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0001-core-arm-add-MPIDR-affinity-shift-and-mask-for-32-bi.patch new file mode 100644 index 0000000000..f249e526a8 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0001-core-arm-add-MPIDR-affinity-shift-and-mask-for-32-bi.patch @@ -0,0 +1,29 @@ +Upstream-Status: Pending [Not submitted to upstream yet] +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +From cf84c933bb7b8a95742d1e723950cb2cde2d5320 Mon Sep 17 00:00:00 2001 +From: Vishnu Banavath <vishnu.banavath@arm.com> +Date: Wed, 20 Jul 2022 16:37:10 +0100 +Subject: [PATCH] core: arm: add MPIDR affinity shift and mask for 32-bit + +This change is to add MPIDR affinity shift and mask for +32-bit + +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +diff --git a/core/arch/arm/include/arm.h b/core/arch/arm/include/arm.h +index f59478af..2f6f82e7 100644 +--- a/core/arch/arm/include/arm.h ++++ b/core/arch/arm/include/arm.h +@@ -63,6 +63,8 @@ + #define MPIDR_AFF1_MASK (MPIDR_AFFLVL_MASK << MPIDR_AFF1_SHIFT) + #define MPIDR_AFF2_SHIFT U(16) + #define MPIDR_AFF2_MASK (MPIDR_AFFLVL_MASK << MPIDR_AFF2_SHIFT) ++#define MPIDR_AFF3_SHIFT U(32) ++#define MPIDR_AFF3_MASK (MPIDR_AFFLVL_MASK << MPIDR_AFF3_SHIFT) + + #define MPIDR_MT_SHIFT U(24) + #define MPIDR_MT_MASK BIT(MPIDR_MT_SHIFT) +-- +2.17.1 + diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0002-plat-n1sdp-add-N1SDP-platform-support.patch b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0002-plat-n1sdp-add-N1SDP-platform-support.patch new file mode 100644 index 0000000000..db195ab337 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0002-plat-n1sdp-add-N1SDP-platform-support.patch @@ -0,0 +1,233 @@ +Upstream-Status: Pending [Not submitted to upstream yet] +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +From 22ba7c7789082dbc179921962cdcadece4499c89 Mon Sep 17 00:00:00 2001 +From: Vishnu Banavath <vishnu.banavath@arm.com> +Date: Thu, 30 Jun 2022 18:36:26 +0100 +Subject: [PATCH] plat-n1sdp: add N1SDP platform support + +These changes are to add N1SDP platform to optee-os + +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +diff --git a/core/arch/arm/plat-n1sdp/conf.mk b/core/arch/arm/plat-n1sdp/conf.mk +new file mode 100644 +index 00000000..06b4975a +--- /dev/null ++++ b/core/arch/arm/plat-n1sdp/conf.mk +@@ -0,0 +1,41 @@ ++include core/arch/arm/cpu/cortex-armv8-0.mk ++ ++CFG_DEBUG_INFO = y ++CFG_TEE_CORE_LOG_LEVEL = 4 ++ ++# Workaround 808870: Unconditional VLDM instructions might cause an ++# alignment fault even though the address is aligned ++# Either hard float must be disabled for AArch32 or strict alignment checks ++# must be disabled ++ifeq ($(CFG_SCTLR_ALIGNMENT_CHECK),y) ++$(call force,CFG_TA_ARM32_NO_HARD_FLOAT_SUPPORT,y) ++else ++$(call force,CFG_SCTLR_ALIGNMENT_CHECK,n) ++endif ++ ++CFG_ARM64_core ?= y ++ ++CFG_ARM_GICV3 = y ++ ++# ARM debugger needs this ++platform-cflags-debug-info = -gdwarf-4 ++platform-aflags-debug-info = -gdwarf-4 ++ ++CFG_CORE_SEL1_SPMC = y ++CFG_WITH_ARM_TRUSTED_FW = y ++ ++$(call force,CFG_GIC,y) ++$(call force,CFG_PL011,y) ++$(call force,CFG_SECURE_TIME_SOURCE_CNTPCT,y) ++ ++CFG_CORE_HEAP_SIZE = 0x32000 # 200kb ++ ++CFG_TEE_CORE_NB_CORE = 4 ++CFG_TZDRAM_START ?= 0x08000000 ++CFG_TZDRAM_SIZE ?= 0x02008000 ++ ++CFG_SHMEM_START ?= 0x83000000 ++CFG_SHMEM_SIZE ?= 0x00210000 ++# DRAM1 is defined above 4G ++$(call force,CFG_CORE_LARGE_PHYS_ADDR,y) ++$(call force,CFG_CORE_ARM64_PA_BITS,36) +diff --git a/core/arch/arm/plat-n1sdp/main.c b/core/arch/arm/plat-n1sdp/main.c +new file mode 100644 +index 00000000..cfb7f19b +--- /dev/null ++++ b/core/arch/arm/plat-n1sdp/main.c +@@ -0,0 +1,63 @@ ++// SPDX-License-Identifier: BSD-2-Clause ++/* ++ * Copyright (c) 2022, Arm Limited. ++ */ ++ ++#include <arm.h> ++#include <console.h> ++#include <drivers/gic.h> ++#include <drivers/pl011.h> ++#include <drivers/tpm2_mmio.h> ++#include <drivers/tpm2_ptp_fifo.h> ++#include <drivers/tzc400.h> ++#include <initcall.h> ++#include <keep.h> ++#include <kernel/boot.h> ++#include <kernel/interrupt.h> ++#include <kernel/misc.h> ++#include <kernel/notif.h> ++#include <kernel/panic.h> ++#include <kernel/spinlock.h> ++#include <kernel/tee_time.h> ++#include <mm/core_memprot.h> ++#include <mm/core_mmu.h> ++#include <platform_config.h> ++#include <sm/psci.h> ++#include <stdint.h> ++#include <string.h> ++#include <trace.h> ++ ++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_ddr(DRAM0_BASE, DRAM0_SIZE); ++ ++register_phys_mem_pgdir(MEM_AREA_IO_SEC, GICD_BASE, GIC_DIST_REG_SIZE); ++register_phys_mem_pgdir(MEM_AREA_IO_SEC, GICC_BASE, GIC_DIST_REG_SIZE); ++register_phys_mem_pgdir(MEM_AREA_IO_SEC, GICR_BASE, GIC_DIST_REG_SIZE); ++ ++void main_init_gic(void) ++{ ++ gic_init_base_addr(&gic_data, GICC_BASE, ++ GICD_BASE); ++ itr_init(&gic_data.chip); ++} ++ ++void main_secondary_init_gic(void) ++{ ++ gic_cpu_init(&gic_data); ++} ++ ++void itr_core_handler(void) ++{ ++ gic_it_handle(&gic_data); ++} ++ ++void console_init(void) ++{ ++ pl011_init(&console_data, CONSOLE_UART_BASE, CONSOLE_UART_CLK_IN_HZ, ++ CONSOLE_BAUDRATE); ++ register_serial_console(&console_data.chip); ++} +diff --git a/core/arch/arm/plat-n1sdp/n1sdp_core_pos.S b/core/arch/arm/plat-n1sdp/n1sdp_core_pos.S +new file mode 100644 +index 00000000..439d4e67 +--- /dev/null ++++ b/core/arch/arm/plat-n1sdp/n1sdp_core_pos.S +@@ -0,0 +1,32 @@ ++/* SPDX-License-Identifier: BSD-2-Clause */ ++/* ++ * Copyright (c) 2022, Arm Limited ++ */ ++ ++#include <asm.S> ++#include <arm.h> ++#include "platform_config.h" ++ ++FUNC get_core_pos_mpidr , : ++ mov x4, x0 ++ ++ /* ++ * The MT bit in MPIDR is always set for n1sdp and the ++ * affinity level 0 corresponds to thread affinity level. ++ */ ++ ++ /* Extract individual affinity fields from MPIDR */ ++ ubfx x0, x4, #MPIDR_AFF0_SHIFT, #MPIDR_AFFINITY_BITS ++ ubfx x1, x4, #MPIDR_AFF1_SHIFT, #MPIDR_AFFINITY_BITS ++ ubfx x2, x4, #MPIDR_AFF2_SHIFT, #MPIDR_AFFINITY_BITS ++ ubfx x3, x4, #MPIDR_AFF3_SHIFT, #MPIDR_AFFINITY_BITS ++ ++ /* Compute linear position */ ++ mov x4, #N1SDP_MAX_CLUSTERS_PER_CHIP ++ madd x2, x3, x4, x2 ++ mov x4, #N1SDP_MAX_CPUS_PER_CLUSTER ++ madd x1, x2, x4, x1 ++ mov x4, #N1SDP_MAX_PE_PER_CPU ++ madd x0, x1, x4, x0 ++ ret ++END_FUNC get_core_pos_mpidr +diff --git a/core/arch/arm/plat-n1sdp/platform_config.h b/core/arch/arm/plat-n1sdp/platform_config.h +new file mode 100644 +index 00000000..81b99409 +--- /dev/null ++++ b/core/arch/arm/plat-n1sdp/platform_config.h +@@ -0,0 +1,49 @@ ++/* SPDX-License-Identifier: BSD-2-Clause */ ++/* ++ * Copyright (c) 2022, Arm Limited ++ */ ++ ++#ifndef PLATFORM_CONFIG_H ++#define PLATFORM_CONFIG_H ++ ++#include <mm/generic_ram_layout.h> ++#include <stdint.h> ++ ++/* Make stacks aligned to data cache line length */ ++#define STACK_ALIGNMENT 64 ++ ++ /* N1SDP topology related constants */ ++#define N1SDP_MAX_CPUS_PER_CLUSTER U(2) ++#define PLAT_ARM_CLUSTER_COUNT U(2) ++#define PLAT_N1SDP_CHIP_COUNT U(2) ++#define N1SDP_MAX_CLUSTERS_PER_CHIP U(2) ++#define N1SDP_MAX_PE_PER_CPU U(1) ++ ++#define PLATFORM_CORE_COUNT (PLAT_N1SDP_CHIP_COUNT * \ ++ PLAT_ARM_CLUSTER_COUNT * \ ++ N1SDP_MAX_CPUS_PER_CLUSTER * \ ++ N1SDP_MAX_PE_PER_CPU) ++ ++#define GIC_BASE 0x2c010000 ++ ++#define UART1_BASE 0x1C0A0000 ++#define UART1_CLK_IN_HZ 24000000 /*24MHz*/ ++ ++#define CONSOLE_UART_BASE UART1_BASE ++#define CONSOLE_UART_CLK_IN_HZ UART1_CLK_IN_HZ ++ ++#define DRAM0_BASE 0x80000000 ++#define DRAM0_SIZE 0x80000000 ++ ++#define GICD_BASE 0x30000000 ++#define GICC_BASE 0x2C000000 ++#define GICR_BASE 0x300C0000 ++ ++#ifndef UART_BAUDRATE ++#define UART_BAUDRATE 115200 ++#endif ++#ifndef CONSOLE_BAUDRATE ++#define CONSOLE_BAUDRATE UART_BAUDRATE ++#endif ++ ++#endif /*PLATFORM_CONFIG_H*/ +diff --git a/core/arch/arm/plat-n1sdp/sub.mk b/core/arch/arm/plat-n1sdp/sub.mk +new file mode 100644 +index 00000000..a0b49da1 +--- /dev/null ++++ b/core/arch/arm/plat-n1sdp/sub.mk +@@ -0,0 +1,3 @@ ++global-incdirs-y += . ++srcs-y += main.c ++srcs-y += n1sdp_core_pos.S +-- +2.17.1 + diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0003-HACK-disable-instruction-cache-and-data-cache.patch b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0003-HACK-disable-instruction-cache-and-data-cache.patch new file mode 100644 index 0000000000..e8f4cc44dc --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0003-HACK-disable-instruction-cache-and-data-cache.patch @@ -0,0 +1,46 @@ +Upstream-Status: Pending [Not submitted to upstream yet] +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +From 0c3ce4c09cd7d2ff4cd2e62acab899dd88dc9514 Mon Sep 17 00:00:00 2001 +From: Vishnu Banavath <vishnu.banavath@arm.com> +Date: Wed, 20 Jul 2022 16:45:59 +0100 +Subject: [PATCH] HACK: disable instruction cache and data cache. + +For some reason, n1sdp fails to boot with instruction cache and +data cache enabled. This is a temporary change to disable I cache +and D cache until a proper fix is found. + +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +%% original patch: 0003-HACK-disable-instruction-cache-and-data-cache.patch + +diff --git a/core/arch/arm/kernel/entry_a64.S b/core/arch/arm/kernel/entry_a64.S +index 875b6e69..594d6928 100644 +--- a/core/arch/arm/kernel/entry_a64.S ++++ b/core/arch/arm/kernel/entry_a64.S +@@ -52,7 +52,7 @@ + + .macro set_sctlr_el1 + mrs x0, sctlr_el1 +- orr x0, x0, #SCTLR_I ++ bic x0, x0, #SCTLR_I + orr x0, x0, #SCTLR_SA + orr x0, x0, #SCTLR_SPAN + #if defined(CFG_CORE_RWDATA_NOEXEC) +@@ -490,11 +490,11 @@ LOCAL_FUNC enable_mmu , : , .identity_map + isb + + /* Enable I and D cache */ +- mrs x1, sctlr_el1 ++ /* mrs x1, sctlr_el1 + orr x1, x1, #SCTLR_I + orr x1, x1, #SCTLR_C + msr sctlr_el1, x1 +- isb ++ isb */ + + /* Adjust stack pointers and return address */ + msr spsel, #1 +-- +2.17.1 + diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0004-Handle-logging-syscall.patch b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0004-Handle-logging-syscall.patch new file mode 100644 index 0000000000..356be9e04f --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/files/optee-os/n1sdp/0004-Handle-logging-syscall.patch @@ -0,0 +1,33 @@ +Upstream-Status: Pending [Not submitted to upstream yet] +Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com> + +From b3fde6c2e1a950214f760ab9f194f3a6572292a8 Mon Sep 17 00:00:00 2001 +From: Balint Dobszay <balint.dobszay@arm.com> +Date: Fri, 15 Jul 2022 13:45:54 +0200 +Subject: [PATCH] Handle logging syscall + +Signed-off-by: Balint Dobszay <balint.dobszay@arm.com> +Change-Id: Ib8151cc9c66aea8bcc8fe8b1ecdc3f9f9c5f14e4 + +%% original patch: 0004-Handle-logging-syscall.patch + +diff --git a/core/arch/arm/kernel/spmc_sp_handler.c b/core/arch/arm/kernel/spmc_sp_handler.c +index e0fa0aa6..c7a45387 100644 +--- a/core/arch/arm/kernel/spmc_sp_handler.c ++++ b/core/arch/arm/kernel/spmc_sp_handler.c +@@ -1004,6 +1004,12 @@ void spmc_sp_msg_handler(struct thread_smc_args *args, + ffa_mem_reclaim(args, caller_sp); + sp_enter(args, caller_sp); + break; ++ case 0xdeadbeef: ++ ts_push_current_session(&caller_sp->ts_sess); ++ IMSG("%s", (char *)args->a1); ++ ts_pop_current_session(); ++ sp_enter(args, caller_sp); ++ break; + default: + EMSG("Unhandled FFA function ID %#"PRIx32, + (uint32_t)args->a0); +-- +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 new file mode 100644 index 0000000000..219f08bfd7 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os-n1sdp.inc @@ -0,0 +1,22 @@ +# N1 SDP specific configuration for optee-os + +COMPATIBLE_MACHINE:n1sdp = "n1sdp" +OPTEEMACHINE:n1sdp = "n1sdp" + +TS_INSTALL_PREFIX_PATH = "${RECIPE_SYSROOT}/firmware/sp/opteesp" + +FILESEXTRAPATHS:prepend := "${THISDIR}/files/optee-os/n1sdp:" +SRC_URI:append = " \ + file://0001-core-arm-add-MPIDR-affinity-shift-and-mask-for-32-bi.patch \ + file://0002-plat-n1sdp-add-N1SDP-platform-support.patch \ + file://0003-HACK-disable-instruction-cache-and-data-cache.patch \ + file://0004-Handle-logging-syscall.patch \ + " + +EXTRA_OEMAKE += " CFG_TEE_CORE_LOG_LEVEL=4" + +EXTRA_OEMAKE += " CFG_TEE_BENCHMARK=n" + +EXTRA_OEMAKE += " CFG_CORE_SEL1_SPMC=y CFG_CORE_FFA=y" + +EXTRA_OEMAKE += " CFG_WITH_SP=y" diff --git a/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.18.0.bbappend b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.18.0.bbappend new file mode 100644 index 0000000000..f80e09f82d --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/optee/optee-os_3.18.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/trusted-services/secure-partitions/corstone1000/0048-Fix-UEFI-get_variable-with-small-buffer.patch b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/secure-partitions/corstone1000/0048-Fix-UEFI-get_variable-with-small-buffer.patch new file mode 100644 index 0000000000..e4573a5196 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-security/trusted-services/secure-partitions/corstone1000/0048-Fix-UEFI-get_variable-with-small-buffer.patch @@ -0,0 +1,407 @@ +Upstream-Status: Pending +Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com> + +From 2d975e5ec5df6f81d6c35fe927f72d49181142f8 Mon Sep 17 00:00:00 2001 +From: Julian Hall <julian.hall@arm.com> +Date: Tue, 19 Jul 2022 12:43:30 +0100 +Subject: [PATCH] Fix UEFI get_variable with small buffer + +The handling of the UEFI get_variable operation was incorrect when +a small or zero data length was specified by a requester. A zero +length data length is a legitimate way to discover the size of a +variable without actually retrieving its data. This change adds +test cases that reproduce the problem and a fix. + +Signed-off-by: Julian Hall <julian.hall@arm.com> +Change-Id: Iec087fbf9305746d1438888e871602ec0ce15824 +--- + .../backend/test/variable_store_tests.cpp | 60 ++++++++++++++++-- + .../backend/uefi_variable_store.c | 46 +++++++++++--- + .../client/cpp/smm_variable_client.cpp | 33 +++++----- + .../client/cpp/smm_variable_client.h | 8 ++- + .../provider/smm_variable_provider.c | 2 +- + .../service/smm_variable_service_tests.cpp | 62 +++++++++++++++++++ + 6 files changed, 179 insertions(+), 32 deletions(-) + +diff --git a/components/service/smm_variable/backend/test/variable_store_tests.cpp b/components/service/smm_variable/backend/test/variable_store_tests.cpp +index 235642e6..98faf761 100644 +--- a/components/service/smm_variable/backend/test/variable_store_tests.cpp ++++ b/components/service/smm_variable/backend/test/variable_store_tests.cpp +@@ -128,7 +128,8 @@ TEST_GROUP(UefiVariableStoreTests) + + efi_status_t get_variable( + const std::wstring &name, +- std::string &data) ++ std::string &data, ++ size_t data_len_clamp = VARIABLE_BUFFER_SIZE) + { + std::vector<int16_t> var_name = to_variable_name(name); + size_t name_size = var_name.size() * sizeof(int16_t); +@@ -144,21 +145,40 @@ TEST_GROUP(UefiVariableStoreTests) + access_variable->NameSize = name_size; + memcpy(access_variable->Name, var_name.data(), name_size); + +- access_variable->DataSize = 0; ++ size_t max_data_len = (data_len_clamp == VARIABLE_BUFFER_SIZE) ? ++ VARIABLE_BUFFER_SIZE - ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(access_variable) : ++ data_len_clamp; ++ ++ access_variable->DataSize = max_data_len; + + efi_status_t status = uefi_variable_store_get_variable( + &m_uefi_variable_store, + access_variable, +- VARIABLE_BUFFER_SIZE - +- SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(access_variable), ++ max_data_len, + &total_size); + ++ data.clear(); ++ + if (status == EFI_SUCCESS) { + + const char *data_start = (const char*)(msg_buffer + + SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(access_variable)); + + data = std::string(data_start, access_variable->DataSize); ++ ++ UNSIGNED_LONGLONGS_EQUAL( ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_TOTAL_SIZE(access_variable), ++ total_size); ++ } ++ else if (status == EFI_BUFFER_TOO_SMALL) { ++ ++ /* String length set to reported variable length */ ++ data.insert(0, access_variable->DataSize, '!'); ++ ++ UNSIGNED_LONGLONGS_EQUAL( ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(access_variable), ++ total_size); + } + + return status; +@@ -336,6 +356,38 @@ TEST(UefiVariableStoreTests, persistentSetGet) + LONGS_EQUAL(0, input_data.compare(output_data)); + } + ++TEST(UefiVariableStoreTests, getWithSmallBuffer) ++{ ++ efi_status_t status = EFI_SUCCESS; ++ std::wstring var_name = L"test_variable"; ++ std::string input_data = "quick brown fox"; ++ std::string output_data; ++ ++ /* A get with a zero length buffer is a legitimate way to ++ * discover the variable size. This test performs GetVariable ++ * operations with various buffer small buffer sizes. */ ++ status = set_variable(var_name, input_data, 0); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, status); ++ ++ /* First get the variable without a constrained buffer */ ++ status = get_variable(var_name, output_data); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, status); ++ ++ /* Expect got variable data to be the same as the set value */ ++ UNSIGNED_LONGLONGS_EQUAL(input_data.size(), output_data.size()); ++ LONGS_EQUAL(0, input_data.compare(output_data)); ++ ++ /* Now try with a zero length buffer */ ++ status = get_variable(var_name, output_data, 0); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_BUFFER_TOO_SMALL, status); ++ UNSIGNED_LONGLONGS_EQUAL(input_data.size(), output_data.size()); ++ ++ /* Try with a non-zero length but too small buffer */ ++ status = get_variable(var_name, output_data, input_data.size() -1); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_BUFFER_TOO_SMALL, status); ++ UNSIGNED_LONGLONGS_EQUAL(input_data.size(), output_data.size()); ++} ++ + TEST(UefiVariableStoreTests, removeVolatile) + { + efi_status_t status = EFI_SUCCESS; +diff --git a/components/service/smm_variable/backend/uefi_variable_store.c b/components/service/smm_variable/backend/uefi_variable_store.c +index e8771c21..90d648de 100644 +--- a/components/service/smm_variable/backend/uefi_variable_store.c ++++ b/components/service/smm_variable/backend/uefi_variable_store.c +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2021, Arm Limited. All rights reserved. ++ * Copyright (c) 2021-2022, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + * +@@ -294,7 +294,10 @@ efi_status_t uefi_variable_store_get_variable( + + status = load_variable_data(context, info, var, max_data_len); + var->Attributes = info->metadata.attributes; +- *total_length = SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_TOTAL_SIZE(var); ++ ++ *total_length = (status == EFI_SUCCESS) ? ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_TOTAL_SIZE(var) : ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(var); + } + } + +@@ -682,7 +685,6 @@ static efi_status_t load_variable_data( + { + EMSG("In func %s\n", __func__); + psa_status_t psa_status = PSA_SUCCESS; +- size_t data_len = 0; + uint8_t *data = (uint8_t*)var + + SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(var); + +@@ -692,17 +694,41 @@ static efi_status_t load_variable_data( + + if (delegate_store->storage_backend) { + +- psa_status = delegate_store->storage_backend->interface->get( ++ struct psa_storage_info_t storage_info; ++ ++ psa_status = delegate_store->storage_backend->interface->get_info( + delegate_store->storage_backend->context, + context->owner_id, + info->metadata.uid, +- 0, +- max_data_len, +- data, +- &data_len); +- EMSG("In func %s get status is %d\n", __func__, psa_status); ++ &storage_info); ++ ++ if (psa_status == PSA_SUCCESS) { + +- var->DataSize = data_len; ++ size_t get_limit = (var->DataSize < max_data_len) ? ++ var->DataSize : ++ max_data_len; ++ ++ if (get_limit >= storage_info.size) { ++ ++ size_t got_len = 0; ++ ++ psa_status = delegate_store->storage_backend->interface->get( ++ delegate_store->storage_backend->context, ++ context->owner_id, ++ info->metadata.uid, ++ 0, ++ max_data_len, ++ data, ++ &got_len); ++ ++ var->DataSize = got_len; ++ } ++ else { ++ ++ var->DataSize = storage_info.size; ++ psa_status = PSA_ERROR_BUFFER_TOO_SMALL; ++ } ++ } + } + + return psa_to_efi_storage_status(psa_status); +diff --git a/components/service/smm_variable/client/cpp/smm_variable_client.cpp b/components/service/smm_variable/client/cpp/smm_variable_client.cpp +index 8438285b..b6b4ed90 100644 +--- a/components/service/smm_variable/client/cpp/smm_variable_client.cpp ++++ b/components/service/smm_variable/client/cpp/smm_variable_client.cpp +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved. ++ * Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +@@ -122,21 +122,22 @@ efi_status_t smm_variable_client::get_variable( + guid, + name, + data, +- 0); ++ 0, ++ MAX_VAR_DATA_SIZE); + } + + efi_status_t smm_variable_client::get_variable( + const EFI_GUID &guid, + const std::wstring &name, + std::string &data, +- size_t override_name_size) ++ size_t override_name_size, ++ size_t max_data_size) + { + efi_status_t efi_status = EFI_NOT_READY; + + std::vector<int16_t> var_name = to_variable_name(name); + size_t name_size = var_name.size() * sizeof(int16_t); +- size_t data_size = 0; +- size_t req_len = SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_SIZE(name_size, data_size); ++ size_t req_len = SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_SIZE(name_size, 0); + + rpc_call_handle call_handle; + uint8_t *req_buf; +@@ -154,7 +155,7 @@ efi_status_t smm_variable_client::get_variable( + + access_var->Guid = guid; + access_var->NameSize = name_size; +- access_var->DataSize = data_size; ++ access_var->DataSize = max_data_size; + + memcpy(access_var->Name, var_name.data(), name_size); + +@@ -168,26 +169,28 @@ efi_status_t smm_variable_client::get_variable( + + efi_status = opstatus; + +- if (efi_status == EFI_SUCCESS) { +- +- efi_status = EFI_PROTOCOL_ERROR; ++ if (resp_len >= SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_NAME_OFFSET) { + +- if (resp_len >= SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_NAME_OFFSET) { ++ access_var = (SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE*)resp_buf; ++ size_t data_size = access_var->DataSize; + +- access_var = (SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE*)resp_buf; ++ if (resp_len >= ++ SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_TOTAL_SIZE(access_var)) { + +- if (resp_len >= +- SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_TOTAL_SIZE(access_var)) { ++ if (efi_status == EFI_SUCCESS) { + +- data_size = access_var->DataSize; + const char *data_start = (const char*) + &resp_buf[ + SMM_VARIABLE_COMMUNICATE_ACCESS_VARIABLE_DATA_OFFSET(access_var)]; + + data.assign(data_start, data_size); +- efi_status = EFI_SUCCESS; + } + } ++ else if (efi_status == EFI_BUFFER_TOO_SMALL) { ++ ++ data.clear(); ++ data.insert(0, data_size, '!'); ++ } + } + } + else { +diff --git a/components/service/smm_variable/client/cpp/smm_variable_client.h b/components/service/smm_variable/client/cpp/smm_variable_client.h +index c7973916..3d2371a8 100644 +--- a/components/service/smm_variable/client/cpp/smm_variable_client.h ++++ b/components/service/smm_variable/client/cpp/smm_variable_client.h +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved. ++ * Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +@@ -56,7 +56,8 @@ public: + const EFI_GUID &guid, + const std::wstring &name, + std::string &data, +- size_t override_name_size); ++ size_t override_name_size, ++ size_t max_data_size = MAX_VAR_DATA_SIZE); + + /* Remove a variable */ + efi_status_t remove_variable( +@@ -113,6 +114,9 @@ public: + + + private: ++ ++ static const size_t MAX_VAR_DATA_SIZE = 65536; ++ + efi_status_t rpc_to_efi_status() const; + + static std::vector<int16_t> to_variable_name(const std::wstring &string); +diff --git a/components/service/smm_variable/provider/smm_variable_provider.c b/components/service/smm_variable/provider/smm_variable_provider.c +index 1f362c17..95c4fdc9 100644 +--- a/components/service/smm_variable/provider/smm_variable_provider.c ++++ b/components/service/smm_variable/provider/smm_variable_provider.c +@@ -165,7 +165,7 @@ static rpc_status_t get_variable_handler(void *context, struct call_req *req) + } + else { + +- /* Reponse buffer not big enough */ ++ /* Response buffer not big enough */ + efi_status = EFI_BAD_BUFFER_SIZE; + } + } +diff --git a/components/service/smm_variable/test/service/smm_variable_service_tests.cpp b/components/service/smm_variable/test/service/smm_variable_service_tests.cpp +index 38c08ebe..989a3e63 100644 +--- a/components/service/smm_variable/test/service/smm_variable_service_tests.cpp ++++ b/components/service/smm_variable/test/service/smm_variable_service_tests.cpp +@@ -284,6 +284,68 @@ TEST(SmmVariableServiceTests, setAndGetNv) + UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, efi_status); + } + ++TEST(SmmVariableServiceTests, getVarSize) ++{ ++ efi_status_t efi_status = EFI_SUCCESS; ++ std::wstring var_name = L"test_variable"; ++ std::string set_data = "UEFI variable data string"; ++ std::string get_data; ++ ++ efi_status = m_client->set_variable( ++ m_common_guid, ++ var_name, ++ set_data, ++ 0); ++ ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, efi_status); ++ ++ /* Get with the data size set to zero. This is the standard way ++ * to discover the variable size. */ ++ efi_status = m_client->get_variable( ++ m_common_guid, ++ var_name, ++ get_data, ++ 0, 0); ++ ++ UNSIGNED_LONGLONGS_EQUAL(EFI_BUFFER_TOO_SMALL, efi_status); ++ UNSIGNED_LONGS_EQUAL(set_data.size(), get_data.size()); ++ ++ /* Expect remove to be permitted */ ++ efi_status = m_client->remove_variable(m_common_guid, var_name); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, efi_status); ++} ++ ++TEST(SmmVariableServiceTests, getVarSizeNv) ++{ ++ efi_status_t efi_status = EFI_SUCCESS; ++ std::wstring var_name = L"test_variable"; ++ std::string set_data = "UEFI variable data string"; ++ std::string get_data; ++ ++ efi_status = m_client->set_variable( ++ m_common_guid, ++ var_name, ++ set_data, ++ EFI_VARIABLE_NON_VOLATILE); ++ ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, efi_status); ++ ++ /* Get with the data size set to zero. This is the standard way ++ * to discover the variable size. */ ++ efi_status = m_client->get_variable( ++ m_common_guid, ++ var_name, ++ get_data, ++ 0, 0); ++ ++ UNSIGNED_LONGLONGS_EQUAL(EFI_BUFFER_TOO_SMALL, efi_status); ++ UNSIGNED_LONGS_EQUAL(set_data.size(), get_data.size()); ++ ++ /* Expect remove to be permitted */ ++ efi_status = m_client->remove_variable(m_common_guid, var_name); ++ UNSIGNED_LONGLONGS_EQUAL(EFI_SUCCESS, efi_status); ++} ++ + TEST(SmmVariableServiceTests, enumerateStoreContents) + { + efi_status_t efi_status = EFI_SUCCESS; +-- +2.17.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-corstone1000.inc index 88c46a74b9..b04863fcfa 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-corstone1000.inc @@ -59,6 +59,7 @@ SRC_URI:append = " \ file://0046-Fix-update-psa_set_key_usage_flags-definition-to-the.patch \ file://0047-Fixes-in-AEAD-for-psa-arch-test-54-and-58.patch \ file://0003-corstone1000-port-crypto-config.patch;patchdir=../psa-arch-tests \ + file://0048-Fix-UEFI-get_variable-with-small-buffer.patch \ " SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;protocol=https;branch=development;name=mbedtls;destsuffix=git/mbedtls" diff --git a/meta-arm/meta-arm-bsp/wic/corstone1000-image.corstone1000.wks b/meta-arm/meta-arm-bsp/wic/corstone1000-image.corstone1000.wks index c58d7d6848..762567970a 100644 --- a/meta-arm/meta-arm-bsp/wic/corstone1000-image.corstone1000.wks +++ b/meta-arm/meta-arm-bsp/wic/corstone1000-image.corstone1000.wks @@ -12,4 +12,4 @@ part --source rawcopy --sourceparams="file=tfm_s_signed.bin" --align 1 --no-tabl part --source rawcopy --sourceparams="file=signed_fip-corstone1000.bin" --align 1 --no-table --fixed-size 2 # Rawcopy of kernel with initramfs -part --source rawcopy --sourceparams="file=Image-initramfs-${MACHINE}.bin" --no-table --fixed-size 12 +part --source rawcopy --sourceparams="file=Image.gz-initramfs-${MACHINE}.bin" --no-table --fixed-size 12 |