xref: /rk3399_rockchip-uboot/include/write_keybox.h (revision 9780bd18ce6416b02af392f4e75017396df6e8de)
1dfbf26e8STony Xu /* SPDX-License-Identifier: GPL-2.0 */
2dfbf26e8STony Xu /*
3dfbf26e8STony Xu  * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
4dfbf26e8STony Xu  */
5dfbf26e8STony Xu 
6dfbf26e8STony Xu #ifndef WRITE_KEYBOX_H_
7dfbf26e8STony Xu #define	WRITE_KEYBOX_H_
8dfbf26e8STony Xu 
9dfbf26e8STony Xu #include <common.h>
10dfbf26e8STony Xu 
11*9780bd18STony Xu #if defined CONFIG_ANDROID_WRITE_KEYBOX && defined CONFIG_ANDROID_KEYMASTER_CA
12dfbf26e8STony Xu /*
13dfbf26e8STony Xu  * write_keybox_to_secure_storage
14dfbf26e8STony Xu  *
15dfbf26e8STony Xu  * @received_data:	the data received from usb
16dfbf26e8STony Xu  * @len:		size of received_data
17dfbf26e8STony Xu  *
18dfbf26e8STony Xu  * @return a negative number in case of error, or 0 on success.
19dfbf26e8STony Xu  */
20dfbf26e8STony Xu uint32_t write_keybox_to_secure_storage(uint8_t *received_data, uint32_t len);
21dfbf26e8STony Xu 
22*9780bd18STony Xu /*
23*9780bd18STony Xu  * read_raw_data_from_secure_storege
24*9780bd18STony Xu  *
25*9780bd18STony Xu  * @raw_data:	the data read from secure storage
26*9780bd18STony Xu  * @data_size:	size of raw data
27*9780bd18STony Xu  *
28*9780bd18STony Xu  * @return size of raw_data in case of success, or 0 on fail
29*9780bd18STony Xu  */
30*9780bd18STony Xu uint32_t read_raw_data_from_secure_storage(uint8_t *received_data,
31*9780bd18STony Xu 					   uint32_t len);
32*9780bd18STony Xu #else
33*9780bd18STony Xu inline uint32_t write_keybox_to_secure_storage(uint8_t *raw_data,
34*9780bd18STony Xu 					       uint32_t data_size)
35*9780bd18STony Xu {
36*9780bd18STony Xu 	return -EPERM;
37*9780bd18STony Xu }
38*9780bd18STony Xu 
39*9780bd18STony Xu inline uint32_t read_raw_data_from_secure_storage(uint8_t *received_data,
40*9780bd18STony Xu 						  uint32_t len)
41*9780bd18STony Xu {
42*9780bd18STony Xu 	return -EPERM;
43*9780bd18STony Xu }
44*9780bd18STony Xu #endif
45*9780bd18STony Xu #endif
46