1*b122ee17SHisping Lin /* 2*b122ee17SHisping Lin * Copyright 2023, Rockchip Electronics Co., Ltd 3*b122ee17SHisping Lin * hisping lin, <hisping.lin@rock-chips.com> 4*b122ee17SHisping Lin * 5*b122ee17SHisping Lin * SPDX-License-Identifier: GPL-2.0+ 6*b122ee17SHisping Lin */ 7*b122ee17SHisping Lin #ifndef _OPTEE_CLIENT_LOAD_TA_H_ 8*b122ee17SHisping Lin #define _OPTEE_CLIENT_LOAD_TA_H_ 9*b122ee17SHisping Lin 10*b122ee17SHisping Lin #include <optee_include/tee_base_types.h> 11*b122ee17SHisping Lin #include <optee_include/tee_client_api.h> 12*b122ee17SHisping Lin 13*b122ee17SHisping Lin #define TA_BINARY_FOUND 0 14*b122ee17SHisping Lin #define TA_BINARY_NOT_FOUND -2 15*b122ee17SHisping Lin 16*b122ee17SHisping Lin struct userta_header { 17*b122ee17SHisping Lin uint32_t magic; 18*b122ee17SHisping Lin uint32_t img_ver; 19*b122ee17SHisping Lin uint32_t ta_num; 20*b122ee17SHisping Lin uint32_t reserve; 21*b122ee17SHisping Lin }; 22*b122ee17SHisping Lin 23*b122ee17SHisping Lin struct userta_item { 24*b122ee17SHisping Lin uint8_t ta_uuid[16]; 25*b122ee17SHisping Lin uint32_t ta_offset; 26*b122ee17SHisping Lin uint32_t ta_len; 27*b122ee17SHisping Lin uint32_t ta_ver; 28*b122ee17SHisping Lin uint32_t reserve; 29*b122ee17SHisping Lin }; 30*b122ee17SHisping Lin 31*b122ee17SHisping Lin int search_ta(void *uuid_octets, void *ta, size_t *ta_size); 32*b122ee17SHisping Lin 33*b122ee17SHisping Lin #endif /*_OPTEE_CLIENT_LOAD_TA_H_*/ 34