mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 09:34:18 +00:00
Merge "fix(optee): return UUID for image loading service" into integration
This commit is contained in:
commit
1845957132
3 changed files with 18 additions and 1 deletions
|
@ -47,6 +47,10 @@ uint32_t opteed_rw;
|
|||
|
||||
#if OPTEE_ALLOW_SMC_LOAD
|
||||
static bool opteed_allow_load;
|
||||
/* OP-TEE image loading service UUID */
|
||||
DEFINE_SVC_UUID2(optee_image_load_uuid,
|
||||
0xb1eafba3, 0x5d31, 0x4612, 0xb9, 0x06,
|
||||
0xc4, 0xc7, 0xa4, 0xbe, 0x3c, 0xc0);
|
||||
#else
|
||||
static int32_t opteed_init(void);
|
||||
#endif
|
||||
|
@ -335,6 +339,10 @@ static uintptr_t opteed_smc_handler(uint32_t smc_fid,
|
|||
|
||||
if (is_caller_non_secure(flags)) {
|
||||
#if OPTEE_ALLOW_SMC_LOAD
|
||||
if (opteed_allow_load && smc_fid == NSSMC_OPTEED_CALL_UID) {
|
||||
/* Provide the UUID of the image loading service. */
|
||||
SMC_UUID_RET(handle, optee_image_load_uuid);
|
||||
}
|
||||
if (smc_fid == NSSMC_OPTEED_CALL_LOAD_IMAGE) {
|
||||
/*
|
||||
* TODO: Consider wiping the code for SMC loading from
|
||||
|
|
|
@ -157,4 +157,13 @@
|
|||
#define NSSMC_OPTEED_CALL_LOAD_IMAGE \
|
||||
NSSMC_OPTEED_CALL(NSSMC_OPTEED_FUNCID_LOAD_IMAGE)
|
||||
|
||||
/*
|
||||
* Returns the UID of the OP-TEE image loading service if image loading is
|
||||
* enabled and the image had not been loaded yet. Otherwise this call will be
|
||||
* passed through to OP-TEE where it will return the OP-TEE UID.
|
||||
*/
|
||||
#define NSSMC_OPTEED_FUNCID_CALLS_UID 0xFF01
|
||||
#define NSSMC_OPTEED_CALL_UID \
|
||||
NSSMC_OPTEED_CALL(NSSMC_OPTEED_FUNCID_CALLS_UID)
|
||||
|
||||
#endif /*TEESMC_OPTEED_H*/
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#define NSSMC_OPTEED_CALL(func_num) \
|
||||
((SMC_TYPE_FAST << FUNCID_TYPE_SHIFT) | \
|
||||
((SMC_32) << FUNCID_CC_SHIFT) | \
|
||||
(50 << FUNCID_OEN_SHIFT) | \
|
||||
(63 << FUNCID_OEN_SHIFT) | \
|
||||
((func_num) & FUNCID_NUM_MASK))
|
||||
|
||||
#endif /* TEESMC_OPTEED_MACROS_H */
|
||||
|
|
Loading…
Add table
Reference in a new issue