xref: /optee_os/core/include/drivers/rockchip_otp.h (revision 0960b6765c51598643bdb226a3bfaeab1b0e608f)
1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (C) 2025 Pengutronix, Michael Tretter <m.tretter@pengutronix.de>
4  */
5 
6 #ifndef __DRIVERS_ROCKCHIP_OTP_H
7 #define __DRIVERS_ROCKCHIP_OTP_H
8 
9 #include <tee_api_types.h>
10 
11 /*
12  * Read the OTP fuses at index
13  *
14  * @[out]value	destination for the values that are read from the OTP fuses
15  * @index	index of the first word to read in 32 bit words
16  * @count	number of 32 bit words to read
17  */
18 TEE_Result rockchip_otp_read_secure(uint32_t *value, uint32_t index,
19 				    uint32_t count);
20 
21 /*
22  * Write the OTP fuses at index
23  *
24  * @value	pointer to values that are written to the OTP fuses
25  * @index	index of the first word to write in 32 bit words
26  * @count	number of 32 bit words to write
27  */
28 TEE_Result rockchip_otp_write_secure(const uint32_t *value, uint32_t index,
29 				     uint32_t count);
30 
31 #endif /* __DRIVERS_ROCKCHIP_OTP_H */
32