diff options
author | Patrick Williams <patrick@stwcx.xyz> | 2022-10-16 22:26:09 +0300 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2022-10-16 22:27:46 +0300 |
commit | 2194f503e17619bcd36b4289902d13457aac638e (patch) | |
tree | cafb71f7044ec9752543d5696295a7584927d249 /meta-arm/meta-arm-bsp/recipes-bsp/u-boot | |
parent | bdfb8a9cebc292bab790500a6439e4d83ec57bdf (diff) | |
download | openbmc-2194f503e17619bcd36b4289902d13457aac638e.tar.xz |
subtree updates
meta-arm: 0164b4ca7a..13199c55c0:
Adam Johnston (1):
arm-bsp/linux-yocto: Upgrade kernel to v5.19 for N1SDP
Anton Antonov (4):
meta-arm/trusted-services: Use GCC toolchain for specific TS recipes only.
arm/trusted-services: Remove patches merged upstream
arm/trusted-services: Remove remaining patches merged upstream
arm/trusted-services: include documentation
Davidson K (1):
arm-bsp/linux-arm64-ack: make it compatible with gcc-12 for TC
Emekcan (2):
arm-bsp/linux-yocto: update RPMSG_CTRL config for corstone1000
arm-bsp/kernel: Fix TEE driver bug for corstone1000
Jon Mason (3):
CI: trusted services as a feature instead of a machine
CI: cleanups for targets and removed tests
arm-bsp: zephyr removal
Peter Hoyes (1):
arm/lib: Do not log FVP return codes < 0
Ross Burton (2):
arm/optee-spdevkit: remove
CI: restrict compression threading
Rui Miguel Silva (1):
arm-bsp/corstone1000: bump kernel version to 5.19
Rupinderjit Singh (1):
arm: update Android common kernel
Satish Kumar (4):
arm-bsp/u-boot: corstone1000: esrt support
arm-bsp/trusted-firmware-m: corstone1000: bump tfm SHA
arm-bsp/trusted-firmware-m: corstone1000: fix sournce dir of libmetal and openamp
arm-bsp/trusted-firmware-m: corstone1000: secure debug code checkout from yocto
Sumit Garg (2):
arm-toolchain: update Arm GCC to 11.3
external-arm-toolchain: Enable 11.3.rel1 support
Vishnu Banavath (1):
arm-bsp/corstone500: upgrade kernel to v5.19
meta-raspberrypi: 45d56d82b7..fc5f80a47e:
Devendra Tewari (3):
rpi-cmdline: Leave cma value to kernel default
libcamera: Tweak to build for Raspberry Pi
rpi-libcamera-apps: add new recipe
Martin Jansa (1):
lirc: rename bbappend to match 0.10.%
Zygmunt Krynicki (2):
ci: fix typo: unconditionally
ci: fix apparent typo in file patterns
meta-openembedded: ce0b93fc12..6529e5f963:
Alexander Kanavin (3):
python3-cchardet: depend on cython
python3-gevent: make compatible with python 3.11
python3-pybluez: add python 3.11 patch
Anuj Mittal (1):
opencv: fix reproducibility issues
Devendra Tewari (2):
libcamera: Bump SRCREV and add libyaml to DEPENDS
libcamera: Remove boost from DEPENDS
Fabio Estevam (1):
spice: Include aarch64 to COMPATIBLE_HOST
Federico Pellegrin (2):
chrony: add pkgconfig class as pkg-config is explicitly searched for
chrony: correct parameter to configure to disable readline usage
Hao Jiang (1):
mctp: install the .target files
Jiaqing Zhao (1):
openldap: Upgrade 2.5.12 -> 2.5.13
Khem Raj (2):
open62541: Disable lto on riscv/clang
python3-gevent: Upgrade to 22.8.0
Leon Anavi (10):
python3-networkx: Upgrade 2.8.6 -> 2.8.7
python3-coverage: Upgrade 6.4.4 -> 6.5.0
python3-rdflib: Upgrade 6.1.1 -> 6.2.0
python3-tabulate: Upgrade 0.8.10 -> 0.9.0
python3-imageio: Upgrade 2.22.0 -> 2.22.1
python3-astroid: Upgrade 2.12.10 -> 2.12.11
python3-jsonref: Upgrade 0.2 -> 0.3.0
python3-sentry-sdk: Upgrade 1.5.12 -> 1.9.10
python3-greenlet: Upgrade 1.1.3 -> 1.1.3.post0
python3-xmltodict: Upgrade 0.12.0 -> 0.13.0
Markus Volk (2):
blueman: upgrade 2.2.4 -> 2.3.2
gtkmm3: upgrade 3.24.5 -> 3.24.7
Martin Jansa (2):
re2: fix branch name from master to main
jack: fix compatibility with python-3.11
Mathieu Dubois-Briand (3):
mbedtls: Fix CVE product name
mbedtls: Update to 2.28.1 version
mbedtls: Whitelist CVE-2021-43666, CVE-2021-45451
Matthias Klein (1):
paho-mqtt-c: upgrade 1.3.10 -> 1.3.11
Michael Opdenacker (1):
tio: correct license information
Mingli Yu (1):
mariadb: not use qemu to run cross-compiled binaries
S. Lockwood-Childs (1):
x265: support aarch64
Thomas Perrot (1):
spitools: remove unused BPV variable
Vyacheslav Yurkov (1):
opcua: Add new recipe
Wang Mingyu (20):
ctags: upgrade 5.9.20220925.0 -> 5.9.20221002.0
dnfdragora: upgrade 2.1.2 -> 2.1.3
dool: upgrade 1.0.0 -> 1.1.0
freeglut: upgrade 3.2.1 -> 3.4.0
gspell: upgrade 1.11.1 -> 1.12.0
hwdata: upgrade 0.362 -> 0.363
iperf3: upgrade 3.11 -> 3.12
libnet-dns-perl: upgrade 1.34 -> 1.35
lirc: upgrade 0.10.1 -> 0.10.2
metacity: upgrade 3.44.0 -> 3.46.0
flatbuffers: upgrade 2.0.8 -> 22.9.29
opencl-headers: upgrade 2022.09.23 -> 2022.09.30
php: upgrade 8.1.10 -> 8.1.11
poppler: upgrade 22.09.0 -> 22.10.0
xfstests: upgrade 2022.09.04 -> 2022.09.25
links: upgrade 2.27 -> 2.28
st: upgrade 0.8.5 -> 0.9
python3-requests-toolbelt: upgrade 0.9.1 -> 0.10.0
Add nativesdk-systemd-systemctl as dependency of dnf-plugin-tui
dnf-plugin-tui: Add nativesdk
Yi Zhao (4):
strongswan: upgrade 5.9.7 -> 5.9.8
open-vm-tools: upgrade 11.3.5 -> 12.1.0
dhcp-relay: upgrade 4.4.3 -> 4.4.3-P1
frr: Security fix CVE-2022-37032
zhengrq.fnst (5):
python3-protobuf: upgrade 4.21.6 -> 4.21.7
stunnel: upgrade 5.65 -> 5.66
python3-web3: upgrade 5.31.0 -> 5.31.1
wolfssl: upgrade 5.5.0 -> 5.5.1
python3-xmlschema: upgrade 2.1.0 -> 2.1.1
meta-security: 824d2762f6..e8e7318189:
Armin Kuster (3):
apparmor: update to 3.0.7
libgssglue: update to 0.7
cryptmount: update to 6.0
Michael Haener (1):
tpm: update the linux-yocto rule with the one from sanity-meta-tpm class
poky: 5200799866..3e5faccfaf:
Johan Korsnes (1):
migration guides: 3.4: remove spurious space in example
Lee Chee Yang (1):
migration guides: add release notes for 4.0.4
Michael Opdenacker (35):
manuals: improve initramfs details
manuals: add references to the "do_fetch" task
manuals: add reference to the "do_install" task
manuals: add references to the "do_build" task
manuals: add reference to "do_configure" task
manuals: add reference to the "do_compile" task
manuals: add references to the "do_deploy" task
manuals: add references to the "do_image" task
manuals: add references to the "do_package" task
manuals: add references to the "do_package_qa" task
overview-manual: concepts.rst: add reference to "do_packagedata" task
manuals: add references to the "do_patch" task
manuals: add references to "do_package_write_*" tasks
ref-manual: variables.rst: add reference to "do_populate_lic" task
manuals: add reference to the "do_populate_sdk" task
overview-manual: concepts.rst: add reference to "do_populate_sdk_ext" task
manuals: add references to "do_populate_sysroot" task
manuals: add references to the "do_unpack" task
dev-manual: common-tasks.rst: add reference to "do_clean" task
manuals: add references to the "do_cleanall" task
ref-manual: tasks.rst: add references to the "do_cleansstate" task
manuals: add references to the "do_devshell" task
dev-manual: common-tasks.rst: add reference to "do_listtasks" task
manuals: add references to the "do_bundle_initramfs" task
manuals: add references to the "do_rootfs" task
ref-manual: tasks.rst: add reference to the "do_kernel_checkout" task
manuals: add reference to the "do_kernel_configcheck" task
manuals: add references to the "do_kernel_configme" task
ref-manual: tasks.rst: add reference to the "do_kernel_metadata" task
migration-guides: add reference to the "do_shared_workdir" task
ref-manual: tasks.rst: add reference to the "do_validate_branches" task
ref-manual: tasks.rst: add reference to the "do_image_complete" task
ref-manual: system-requirements: Ubuntu 22.04 now supported
overview-manual: concepts.rst: fix formating and add references
ref-manual/faq.rst: update references to products built with OE / Yocto Project
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I14d679e25bd1c7545bc2d0f545f876aeb0a333b4
Diffstat (limited to 'meta-arm/meta-arm-bsp/recipes-bsp/u-boot')
-rw-r--r-- | meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0030-arm-corstone1000-esrt-support.patch | 223 | ||||
-rw-r--r-- | meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot_%.bbappend | 3 |
2 files changed, 225 insertions, 1 deletions
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0030-arm-corstone1000-esrt-support.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0030-arm-corstone1000-esrt-support.patch new file mode 100644 index 0000000000..2db5c2a186 --- /dev/null +++ b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0030-arm-corstone1000-esrt-support.patch @@ -0,0 +1,223 @@ +From d8fca6ebd5917df9a12dbf1da6a97f99af06eee9 Mon Sep 17 00:00:00 2001 +From: Satish Kumar <satish.kumar01@arm.com> +Date: Fri, 19 Aug 2022 09:18:33 +0100 +Subject: [PATCH] arm/corstone1000: esrt support + +The implementation is platform specific and would require +change in future. + +The patch should not be upstreamed as it is to the u-boot. +Redesign of FMP protocol for ESRT and Capsule Update interface +is to be considered in the future. + +Signed-off-by: Satish Kumar <satish.kumar01@arm.com> +Upstream-Status: Inappropriate [Redesign of FMP protocol for ESRT and Capsule update interface is required] +--- + include/efi_api.h | 2 +- + lib/efi_loader/efi_firmware.c | 133 ++++++++++++++++++++++++++++++++++ + lib/efi_loader/efi_setup.c | 16 ++-- + 3 files changed, 142 insertions(+), 9 deletions(-) + +diff --git a/include/efi_api.h b/include/efi_api.h +index 83c01085fd..26899afd01 100644 +--- a/include/efi_api.h ++++ b/include/efi_api.h +@@ -2014,7 +2014,7 @@ struct efi_firmware_image_descriptor { + u32 last_attempt_status; + u64 hardware_instance; + efi_firmware_image_dep_t *dependencies; +-}; ++} __packed; + + struct efi_firmware_management_protocol { + efi_status_t (EFIAPI *get_image_info)( +diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c +index 28d9a19edb..aa4af8036b 100644 +--- a/lib/efi_loader/efi_firmware.c ++++ b/lib/efi_loader/efi_firmware.c +@@ -14,6 +14,7 @@ + #include <signatures.h> + + #include <linux/list.h> ++#include <efi_variable.h> + + #define FMP_PAYLOAD_HDR_SIGNATURE SIGNATURE_32('M', 'S', 'S', '1') + +@@ -416,8 +417,140 @@ efi_status_t EFIAPI efi_firmware_fit_set_image( + return EFI_EXIT(EFI_SUCCESS); + } + ++#if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) ++ ++/** ++ * efi_firmware_corstone1000_get_image_info - return information about the current ++ firmware image ++ * @this: Protocol instance ++ * @image_info_size: Size of @image_info ++ * @image_info: Image information ++ * @descriptor_version: Pointer to version number ++ * @descriptor_count: Pointer to number of descriptors ++ * @descriptor_size: Pointer to descriptor size ++ * package_version: Package version ++ * package_version_name: Package version's name ++ * ++ * Return information bout the current firmware image in @image_info. ++ * @image_info will consist of a number of descriptors. ++ * Each descriptor will be created based on efi fetched variable. ++ * ++ * Return status code ++ */ ++static ++efi_status_t EFIAPI efi_firmware_corstone1000_get_image_info( ++ struct efi_firmware_management_protocol *this, ++ efi_uintn_t *image_info_size, ++ struct efi_firmware_image_descriptor *image_info, ++ u32 *descriptor_version, ++ u8 *descriptor_count, ++ efi_uintn_t *descriptor_size, ++ u32 *package_version, ++ u16 **package_version_name) ++{ ++ efi_uintn_t var_size; ++ efi_status_t ret = EFI_SUCCESS; ++ efi_uintn_t image_info_size_var = 0; ++ efi_uintn_t image_info_name_size_var; ++ efi_uintn_t image_info_version_size_var; ++ u8 *runner = (u8 *)image_info; ++ u16 fmp_image_name[14] = {'F', 'm', 'p', 'I', 'm', 'a', 'g', 'e', 'N', 'a', 'm', 'e', '1', '\0'}; ++ u16 fmp_version_name[16] = {'F', 'm', 'p', 'V', 'e', 'r', 's', 'i', 'o', 'n', 'N', 'a', 'm', 'e', '1', '\0'}; ++ ++ EFI_ENTRY("%p %p %p %p %p %p %p %p\n", this, ++ image_info_size, image_info, ++ descriptor_version, descriptor_count, descriptor_size, ++ package_version, package_version_name); ++ ++ if (!image_info_size) ++ return EFI_EXIT(EFI_INVALID_PARAMETER); ++ ++ if (*image_info_size && ++ (!image_info || !descriptor_version || !descriptor_count || ++ !descriptor_size || !package_version || !package_version_name)) ++ return EFI_EXIT(EFI_INVALID_PARAMETER); ++ ++ var_size = sizeof(*descriptor_version); ++ ret = efi_get_variable(u"FmpDescriptorVersion", ++ &efi_guid_firmware_management_protocol, NULL, ++ &var_size, descriptor_version); ++ if (ret != EFI_SUCCESS) ++ return EFI_EXIT(ret); ++ ++ if (*descriptor_version != EFI_FIRMWARE_IMAGE_DESCRIPTOR_VERSION) ++ return EFI_EXIT(EFI_UNSUPPORTED); ++ ++ var_size = sizeof(image_info_size_var); ++ ret = efi_get_variable(u"FmpImageInfoSize", ++ &efi_guid_firmware_management_protocol, NULL, ++ &var_size, &image_info_size_var); ++ if (ret != EFI_SUCCESS) ++ return EFI_EXIT(ret); ++ ++ if (*image_info_size < image_info_size_var) { ++ *image_info_size = image_info_size_var; ++ return EFI_EXIT(EFI_BUFFER_TOO_SMALL); ++ } ++ ++ image_info_name_size_var = image_info_size_var; ++ ++ var_size = sizeof(*descriptor_count); ++ ret = efi_get_variable(u"FmpDescriptorCount", ++ &efi_guid_firmware_management_protocol, NULL, ++ &var_size, descriptor_count); ++ if (ret != EFI_SUCCESS) { ++ return EFI_EXIT(ret); ++ } ++ ++ ret = efi_get_variable(u"FmpImageInfo", ++ &efi_guid_firmware_management_protocol, NULL, ++ &image_info_size_var, image_info); ++ if (ret != EFI_SUCCESS) ++ return EFI_EXIT(ret); ++ ++ runner += image_info_size_var; ++ ++ image_info_name_size_var -= image_info_size_var; ++ image_info_version_size_var = image_info_name_size_var; ++ ++ /* Consider changing the string modfication logic */ ++ fmp_image_name[12] = '0' + (u16)image_info->image_id; ++ ret = efi_get_variable(fmp_image_name, ++ &efi_guid_firmware_management_protocol, NULL, ++ &image_info_name_size_var, runner); ++ if (ret != EFI_SUCCESS) ++ return EFI_EXIT(ret); ++ ++ image_info_version_size_var -= image_info_name_size_var; ++ image_info->image_id_name = runner; ++ runner += image_info_name_size_var; ++ ++ /* Consider changing the string modfication logic */ ++ fmp_version_name[14] = '0' + (u16)image_info->image_id; ++ ret = efi_get_variable(fmp_version_name, ++ &efi_guid_firmware_management_protocol, NULL, ++ &image_info_version_size_var, runner); ++ if (ret != EFI_SUCCESS) ++ return EFI_EXIT(ret); ++ ++ image_info->version_name = runner; ++ ++ *image_info_size = image_info_size_var; ++ ++ *package_version = 0xffffffff; /* not supported */ ++ *package_version_name = NULL; /* not supported */ ++ ++ return EFI_EXIT(ret); ++} ++ ++#endif ++ + const struct efi_firmware_management_protocol efi_fmp_fit = { ++#if CONFIG_IS_ENABLED(TARGET_CORSTONE1000) ++ .get_image_info = efi_firmware_corstone1000_get_image_info, ++#else + .get_image_info = efi_firmware_get_image_info, ++#endif + .get_image = efi_firmware_get_image_unsupported, + .set_image = efi_firmware_fit_set_image, + .check_image = efi_firmware_check_image_unsupported, +diff --git a/lib/efi_loader/efi_setup.c b/lib/efi_loader/efi_setup.c +index 6c9e14c37e..6ccda175ff 100644 +--- a/lib/efi_loader/efi_setup.c ++++ b/lib/efi_loader/efi_setup.c +@@ -168,13 +168,6 @@ static efi_status_t efi_init_capsule(void) + + #if IS_ENABLED(CONFIG_TARGET_CORSTONE1000) + int ffa_ret; +- +- ffa_ret = efi_corstone1000_uboot_efi_started_event(); +- if (ffa_ret) +- debug("[efi_boottime][ERROR]: Failure to notify SE Proxy FW update service\n"); +- else +- debug("[efi_boottime][INFO]: SE Proxy FW update service notified\n"); +- + ret = efi_corstone1000_alloc_capsule_shared_buf(); + if (ret != EFI_SUCCESS) { + printf("EFI: Corstone-1000: cannot allocate caspsule shared buffer\n"); +@@ -306,7 +299,14 @@ efi_status_t efi_init_obj_list(void) + if (ret != EFI_SUCCESS) + goto out; + } +- ++#if IS_ENABLED(CONFIG_TARGET_CORSTONE1000) ++ int ffa_ret; ++ ffa_ret = efi_corstone1000_uboot_efi_started_event(); ++ if (ffa_ret) ++ debug("[efi_boottime][ERROR]: Failure to notify SE Proxy FW update service\n"); ++ else ++ debug("[efi_boottime][INFO]: SE Proxy FW update service notified\n"); ++#endif + /* Initialize variable services */ + ret = efi_init_variables(); + if (ret != EFI_SUCCESS) +-- +2.25.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 420cee6550..465f034933 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 @@ -47,7 +47,8 @@ SRC_URI:append:corstone1000 = " \ file://0027-corstone1000-use-a-compressed-kernel.patch \ file://0028-Introduce-external-sys-driver-to-device-tree.patch \ file://0029-Add-mhu-and-rpmsg-client-to-u-boot-device-tree.patch \ - " + file://0030-arm-corstone1000-esrt-support.patch \ + " # # FVP BASE |