xref: /optee_os/lib/libutee/include/pta_imx_ocotp.h (revision 9e7f74ce152824774e5cd9ad39cc724e346bfad8)
1*9e7f74ceSClement Faure /* SPDX-License-Identifier: BSD-2-Clause */
2*9e7f74ceSClement Faure /*
3*9e7f74ceSClement Faure  * Copyright 2021 NXP
4*9e7f74ceSClement Faure  */
5*9e7f74ceSClement Faure #ifndef __PTA_IMX_OCOTP_H__
6*9e7f74ceSClement Faure #define __PTA_IMX_OCOTP_H__
7*9e7f74ceSClement Faure 
8*9e7f74ceSClement Faure #define PTA_OCOTP_UUID { 0x9abdf255, 0xd8fa, 0x40de, \
9*9e7f74ceSClement Faure 	{ 0x8f, 0x60, 0x4d, 0x0b, 0x27, 0x92, 0x7b, 0x7d } }
10*9e7f74ceSClement Faure 
11*9e7f74ceSClement Faure /**
12*9e7f74ceSClement Faure  * Read chip UID
13*9e7f74ceSClement Faure  *
14*9e7f74ceSClement Faure  * [out]	memref[0].buffer	Output buffer to store UID
15*9e7f74ceSClement Faure  * [out]	memref[0].size		Size of the UID (64 bits)
16*9e7f74ceSClement Faure  *
17*9e7f74ceSClement Faure  * Return codes:
18*9e7f74ceSClement Faure  * TEE_SUCCESS - Invoke command success
19*9e7f74ceSClement Faure  * TEE_ERROR_BAD_PARAMETERS - Incorrect input parameter
20*9e7f74ceSClement Faure  * TEE_ERROR_GENERIC - UID not available
21*9e7f74ceSClement Faure  */
22*9e7f74ceSClement Faure #define PTA_OCOTP_CMD_CHIP_UID 0
23*9e7f74ceSClement Faure 
24*9e7f74ceSClement Faure /*
25*9e7f74ceSClement Faure  * Read chip OTP fuse
26*9e7f74ceSClement Faure  *
27*9e7f74ceSClement Faure  * [in]		params[0].value.a	Fuse bank number
28*9e7f74ceSClement Faure  * [in]		params[0].value.b	Fuse word number
29*9e7f74ceSClement Faure  * [out]	params[1].value.a	Fuse value
30*9e7f74ceSClement Faure  *
31*9e7f74ceSClement Faure  * Return codes:
32*9e7f74ceSClement Faure  * TEE_SUCCESS - Invoke command success
33*9e7f74ceSClement Faure  * TEE_ERROR_BAD_PARAMETERS - Incorrect input parameter
34*9e7f74ceSClement Faure  * TEE_ERROR_BUSY - OCOTP not available
35*9e7f74ceSClement Faure  */
36*9e7f74ceSClement Faure #define PTA_OCOTP_CMD_READ_FUSE 1
37*9e7f74ceSClement Faure #endif /* __PTA_IMX_OCOTP_H__ */
38