summaryrefslogtreecommitdiff
path: root/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch')
-rw-r--r--meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch74
1 files changed, 0 insertions, 74 deletions
diff --git a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch b/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch
deleted file mode 100644
index bc03035c99..0000000000
--- a/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/u-boot/corstone1000/0013-efi_capsule-corstone1000-pass-interface-id-and-buffe.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From baa961b6050508710e1c6b572f2e93ac5c488201 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 13/42] 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
-w3 and w5.
-
-Now the SE proxy SP requires this arguments to be in register w4.
-
-This change is to pass interface ID(31:16) and event ID(15:0)
-to SE proxy SP to trigger an event to secure enclave about
-firmware update.
-
-Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
-Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
-Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
-Upstream-Status: Pending [Not submitted to upstream yet]
----
- include/configs/corstone1000.h | 6 ++++++
- lib/efi_loader/efi_capsule.c | 11 +++++++----
- 2 files changed, 13 insertions(+), 4 deletions(-)
-
-diff --git a/include/configs/corstone1000.h b/include/configs/corstone1000.h
-index cd30499e3c..e4c7bcb96f 100644
---- a/include/configs/corstone1000.h
-+++ b/include/configs/corstone1000.h
-@@ -24,6 +24,12 @@
- #define CORSTONE1000_BUFFER_READY_EVT (0x1)
- #define CORSTONE1000_KERNEL_STARTED_EVT (0x2)
-
-+#define PREP_SEPROXY_SVC_ID_MASK GENMASK(31, 16)
-+#define PREP_SEPROXY_SVC_ID(x) (FIELD_PREP(PREP_SEPROXY_SVC_ID_MASK, (x)))
-+
-+#define PREP_SEPROXY_EVT_MASK GENMASK(15, 0)
-+#define PREP_SEPROXY_EVT(x) (FIELD_PREP(PREP_SEPROXY_EVT_MASK, (x)))
-+
- /* Size in 4KB pages of the EFI capsule buffer */
- #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 9e8ddaac7f..bd4cc8d272 100644
---- a/lib/efi_loader/efi_capsule.c
-+++ b/lib/efi_loader/efi_capsule.c
-@@ -29,6 +29,8 @@
- #ifdef CONFIG_TARGET_CORSTONE1000
- #include <arm_ffa.h>
- #include <cpu_func.h>
-+#include <linux/bitfield.h>
-+#include <linux/bitops.h>
-
- void *__efi_runtime_data corstone1000_capsule_buf; /* capsule shared buffer virtual address */
- efi_guid_t corstone1000_capsule_guid = EFI_CORSTONE1000_CAPSULE_ID_GUID;
-@@ -766,11 +768,12 @@ static int __efi_runtime efi_corstone1000_buffer_ready_event(u32 capsule_image_s
- log_debug("[%s]\n", __func__);
-
- /*
-- * setting the buffer ready event arguments
-+ * setting the buffer ready event arguments in register w4:
-+ * - capsule update interface ID (31:16)
-+ * - the buffer ready event ID (15:0)
- */
-- msg.data0 = CORSTONE1000_SEPROXY_UPDATE_SVC_ID; /* x3 */
-- msg.data1 = capsule_image_size; /* x4 */
-- msg.data2 = CORSTONE1000_BUFFER_READY_EVT; /* x5 */
-+ msg.data1 = PREP_SEPROXY_SVC_ID(CORSTONE1000_SEPROXY_UPDATE_SVC_ID) |
-+ PREP_SEPROXY_EVT(CORSTONE1000_BUFFER_READY_EVT); /* w4 */
-
- return ffa_bus_ops_get()->sync_send_receive(NULL, CORSTONE1000_SEPROXY_PART_ID, &msg, 0);
- }
---
-2.25.1
-