smcinvoke: adci interface adaptation as per QTEE

Adapted the latest IClientEnv adci and other
interface methods from QTEE.
Change-Id: I05730e56d656977fbc53a2d3dedb04426474be1c
This commit is contained in:
Pawan Rai
2023-01-19 15:23:02 +05:30
committed by Gerrit - the friendly Code Review server
parent 703d2a9e9d
commit ca9f562c5a
4 changed files with 41 additions and 12 deletions

View File

@@ -11,8 +11,10 @@
#define IClientEnv_OP_registerWithWhitelist 3
#define IClientEnv_OP_notifyDomainChange 4
#define IClientEnv_OP_registerWithCredentials 5
#define IClientEnv_OP_accept 6
#define IClientEnv_OP_adciShutdown 7
#define IClientEnv_OP_loadCmnlibFromBuffer 6
#define IClientEnv_OP_configTaRegion 7
#define IClientEnv_OP_adciAccept 8
#define IClientEnv_OP_adciShutdown 9
#include "smcinvoke_object.h"
@@ -121,9 +123,33 @@ IClientEnv_registerWithCredentials(struct Object self, struct Object
}
static inline int32_t
IClientEnv_accept(struct Object self)
IClientEnv_loadCmnlibFromBuffer(struct Object self, const void *cmnlibElf_ptr, size_t cmnlibElf_len)
{
return Object_invoke(self, IClientEnv_OP_accept, 0, 0);
union ObjectArg a[1]={{{0,0}}};
a[0].bi = (struct ObjectBufIn) { cmnlibElf_ptr, cmnlibElf_len * 1 };
return Object_invoke(self, IClientEnv_OP_loadCmnlibFromBuffer, a, ObjectCounts_pack(1, 0, 0, 0));
}
static inline int32_t
IClientEnv_configTaRegion(struct Object self, uint64_t appRgnAddr_val, uint32_t appRgnSize_val)
{
union ObjectArg a[1]={{{0,0}}};
struct {
uint64_t m_appRgnAddr;
uint32_t m_appRgnSize;
} i;
a[0].b = (struct ObjectBuf) { &i, 12 };
i.m_appRgnAddr = appRgnAddr_val;
i.m_appRgnSize = appRgnSize_val;
return Object_invoke(self, IClientEnv_OP_configTaRegion, a, ObjectCounts_pack(1, 0, 0, 0));
}
static inline int32_t
IClientEnv_adciAccept(struct Object self)
{
return Object_invoke(self, IClientEnv_OP_adciAccept, 0, 0);
}
static inline int32_t