xref: /rk3399_rockchip-uboot/include/optee_include/OpteeClientInterface.h (revision fbf29bfb0ea377f5d1b9ff13bb8d396205b2019f)
1ae8ec5e1SHisping Lin /*
2ae8ec5e1SHisping Lin  * Copyright 2017, Rockchip Electronics Co., Ltd
3ae8ec5e1SHisping Lin  * hisping lin, <hisping.lin@rock-chips.com>
4ae8ec5e1SHisping Lin  *
5ae8ec5e1SHisping Lin  * SPDX-License-Identifier:	GPL-2.0+
6ae8ec5e1SHisping Lin  */
7ae8ec5e1SHisping Lin #ifndef _OPTEECLIENTTEST_H_
8ae8ec5e1SHisping Lin #define _OPTEECLIENTTEST_H_
9ae8ec5e1SHisping Lin 
1078ef5fbdSqiujian #include <optee_include/tee_client_api.h>
1178ef5fbdSqiujian 
122e40c2c1SJason Zhu #define ATAP_HEX_UUID_LEN 32
132e40c2c1SJason Zhu #define ATTEST_DH_SIZE     8
142e40c2c1SJason Zhu #define ATTEST_UUID_SIZE     (ATAP_HEX_UUID_LEN+1)
152e40c2c1SJason Zhu #define ATTEST_CA_OUT_SIZE     256
162e40c2c1SJason Zhu 
17ae8ec5e1SHisping Lin uint32_t trusty_read_rollback_index(uint32_t slot, uint64_t *value);
18ae8ec5e1SHisping Lin uint32_t trusty_write_rollback_index(uint32_t slot, uint64_t value);
19ae8ec5e1SHisping Lin uint32_t trusty_read_permanent_attributes(uint8_t *attributes, uint32_t size);
20ae8ec5e1SHisping Lin uint32_t trusty_write_permanent_attributes(uint8_t *attributes, uint32_t size);
21564654ebSJason Zhu uint32_t trusty_read_permanent_attributes_cer(uint8_t *attributes,
22564654ebSJason Zhu 					      uint32_t size);
23564654ebSJason Zhu uint32_t trusty_write_permanent_attributes_cer(uint8_t *attributes,
24564654ebSJason Zhu 					       uint32_t size);
25ae8ec5e1SHisping Lin uint32_t trusty_read_lock_state(uint8_t *lock_state);
26ae8ec5e1SHisping Lin uint32_t trusty_write_lock_state(uint8_t lock_state);
27ae8ec5e1SHisping Lin uint32_t trusty_read_flash_lock_state(uint8_t *flash_lock_state);
28ae8ec5e1SHisping Lin uint32_t trusty_write_flash_lock_state(uint8_t flash_lock_state);
2978ef5fbdSqiujian 
306ef445a4SHisping Lin uint32_t trusty_read_attribute_hash(uint32_t *buf, uint32_t length);
316ef445a4SHisping Lin uint32_t trusty_write_attribute_hash(uint32_t *buf, uint32_t length);
3216539616SHisping Lin uint32_t trusty_notify_optee_uboot_end(void);
332cd27853SHisping Lin uint32_t trusty_read_vbootkey_hash(uint32_t *buf, uint32_t length);
342cd27853SHisping Lin uint32_t trusty_write_vbootkey_hash(uint32_t *buf, uint32_t length);
35468df3b2SHisping Lin uint32_t trusty_read_vbootkey_enable_flag(uint8_t *flag);
361ef63c75SHisping Lin uint32_t trusty_write_ta_encryption_key(uint32_t *buf, uint32_t length);
37*fbf29bfbSHisping Lin uint32_t trusty_check_security_level_flag(uint8_t flag);
38095e2a82SHisping Lin uint32_t trusty_read_permanent_attributes_flag(uint8_t *attributes);
39095e2a82SHisping Lin uint32_t trusty_write_permanent_attributes_flag(uint8_t attributes);
404aa61755SAndy Ye uint32_t trusty_attest_dh(uint8_t *dh, uint32_t *dh_size);
414aa61755SAndy Ye uint32_t trusty_attest_uuid(uint8_t *uuid, uint32_t *uuid_size);
424aa61755SAndy Ye uint32_t trusty_attest_get_ca
434aa61755SAndy Ye 	(uint8_t *operation_start, uint32_t *operation_size,
444aa61755SAndy Ye 	 uint8_t *out, uint32_t *out_len);
454aa61755SAndy Ye uint32_t trusty_attest_set_ca(uint8_t *ca_response, uint32_t *ca_response_size);
4678ef5fbdSqiujian 
47ae8ec5e1SHisping Lin #endif
48