Transmit FWU function ID and status fields in shared memory
The PSA firmware update protocol transmits the function ID and status
fields in the request/response structures in the shared memory. Add shim
layer to extract and insert common function ID and status fields. This
way the actual FWU provider functions don't have to individually handle
these fields.
Signed-off-by: Imre Kis <imre.kis@arm.com>
Change-Id: Icdf73caf2f56da39bf1c384b4fafbe8fe9885555
diff --git a/components/service/fwu/provider/fwu_provider.h b/components/service/fwu/provider/fwu_provider.h
index 037889a..3864ca6 100644
--- a/components/service/fwu/provider/fwu_provider.h
+++ b/components/service/fwu/provider/fwu_provider.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
+ * Copyright (c) 2022-2024, Arm Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -10,6 +10,7 @@
#include "protocols/rpc/common/packed-c/encoding.h"
#include "rpc/common/endpoint/rpc_service_interface.h"
#include "service/common/provider/service_provider.h"
+#include "fwu_provider_shim.h"
#ifdef __cplusplus
extern "C" {
@@ -32,6 +33,7 @@
*/
struct fwu_provider {
struct service_provider base_provider;
+ struct fwu_provider_shim shim;
const struct fwu_provider_serializer *serializers[TS_RPC_ENCODING_LIMIT];
struct update_agent *update_agent;
};