Fix type of SMC function ID
The SMC function identifier is always a 32-bit integer, regardless of
the caller's execution state and of the SMC calling convention in use.
Change-Id: I8d4f7b9efcea3f00ac2ff0a397ca0d8ab824eecb
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
diff --git a/include/lib/tftf_lib.h b/include/lib/tftf_lib.h
index e5900b8..97b6f41 100644
--- a/include/lib/tftf_lib.h
+++ b/include/lib/tftf_lib.h
@@ -132,22 +132,24 @@
* specify it.
*/
typedef struct {
- u_register_t arg0;
- u_register_t arg1;
- u_register_t arg2;
- u_register_t arg3;
- u_register_t arg4;
- u_register_t arg5;
- u_register_t arg6;
- u_register_t arg7;
+ /* Function identifier. Identifies which function is being invoked. */
+ uint32_t arg0;
+
+ u_register_t arg1;
+ u_register_t arg2;
+ u_register_t arg3;
+ u_register_t arg4;
+ u_register_t arg5;
+ u_register_t arg6;
+ u_register_t arg7;
} smc_args;
/* SMC calls can return up to 4 register values */
typedef struct {
- u_register_t ret0;
- u_register_t ret1;
- u_register_t ret2;
- u_register_t ret3;
+ u_register_t ret0;
+ u_register_t ret1;
+ u_register_t ret2;
+ u_register_t ret3;
} smc_ret_values;
/*