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 119780bd18STony 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 229780bd18STony Xu /* 239780bd18STony Xu * read_raw_data_from_secure_storege 249780bd18STony Xu * 259780bd18STony Xu * @raw_data: the data read from secure storage 269780bd18STony Xu * @data_size: size of raw data 279780bd18STony Xu * 289780bd18STony Xu * @return size of raw_data in case of success, or 0 on fail 299780bd18STony Xu */ 309780bd18STony Xu uint32_t read_raw_data_from_secure_storage(uint8_t *received_data, 319780bd18STony Xu uint32_t len); 32*86574b32STony Xu char *new_strstr(const char *s1, const char *s2, uint32_t l1); 339780bd18STony Xu #else 349780bd18STony Xu inline uint32_t write_keybox_to_secure_storage(uint8_t *raw_data, 359780bd18STony Xu uint32_t data_size) 369780bd18STony Xu { 379780bd18STony Xu return -EPERM; 389780bd18STony Xu } 399780bd18STony Xu 409780bd18STony Xu inline uint32_t read_raw_data_from_secure_storage(uint8_t *received_data, 419780bd18STony Xu uint32_t len) 429780bd18STony Xu { 439780bd18STony Xu return -EPERM; 449780bd18STony Xu } 459780bd18STony Xu #endif 469780bd18STony Xu #endif 47