blob: ee2c397ac88a9a491d471338d458f8c6d5153239 [file] [log] [blame]
/*
* Copyright (C) 2018 Synaptics Incorporated. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED "AS-IS," AND
* SYNAPTICS EXPRESSLY DISCLAIMS ALL EXPRESS AND IMPLIED WARRANTIES,
* INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE, AND ANY WARRANTIES OF NON-INFRINGEMENT OF ANY
* INTELLECTUAL PROPERTY RIGHTS. IN NO EVENT SHALL SYNAPTICS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE, OR
* CONSEQUENTIAL DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE
* OF THE INFORMATION CONTAINED IN THIS DOCUMENT, HOWEVER CAUSED AND
* BASED ON ANY THEORY OF LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* NEGLIGENCE OR OTHER TORTIOUS ACTION, AND EVEN IF SYNAPTICS WAS
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. IF A TRIBUNAL OF
* COMPETENT JURISDICTION DOES NOT PERMIT THE DISCLAIMER OF DIRECT
* DAMAGES OR ANY OTHER DAMAGES, SYNAPTICS' TOTAL CUMULATIVE LIABILITY
* TO ANY PARTY SHALL NOT EXCEED ONE HUNDRED U.S. DOLLARS.
*/
#ifndef _TZ_BOOT_CMD_H_
#define _TZ_BOOT_CMD_H_
#include "smc.h"
enum tz_boot_func_id {
/* param: none;
* return: version number */
SMC_FUNC_TOS_BOOT_VERSION = TOS_BOOT(0x00),
/* param: {stage, mode};
* return: error code */
SMC_FUNC_TOS_BOOT_STAGE = TOS_BOOT(0x10),
/* param: {attr_mask, attr_val};
* return: count */
SMC_FUNC_TOS_MEM_REGION_COUNT = TOS_BOOT(0x20),
/* param: {attr_mask, attr_val, region, max_num};
* return: count */
SMC_FUNC_TOS_MEM_REGION_LIST,
/* param: none;
* return: error code */
SMC_FUNC_TOS_OUTER_CACHE_ENABLE = TOS_BOOT(0x30),
/* param: none;
* return: error code */
SMC_FUNC_TOS_OUTER_CACHE_DISABLE,
/* param: none;
* return: error code */
SMC_FUNC_TOS_OUTER_CACHE_RESUME,
/* param: {src, src_len, dst, dst_len};
* return: {errcode,dec_len} */
SMC_FUNC_TOS_CRYPTO_VERIFY_IMAGE = TOS_BOOT(0x40),
SMC_FUNC_SIP_USB_CONSOLE_PUT_CHAR = SIP_FASTCALL(0x10),
SMC_FUNC_SIP_USB_LOAD_IMAGE = SIP_FASTCALL(0x20),
SMC_FUNC_SIP_GENERATE_RAND = SIP_FASTCALL(0x30),
};
enum tz_boot_stage {
TZ_BOOT_STAGE_ROMCODE,
TZ_BOOT_STAGE_SYSINIT,
TZ_BOOT_STAGE_TRUSTZONE,
TZ_BOOT_STAGE_BOOTLOADER,
TZ_BOOT_STAGE_LINUX,
TZ_BOOT_STAGE_ANDROID
};
enum tz_boot_mode {
TZ_BOOT_MODE_NORMAL,
TZ_BOOT_MODE_RECOVERY
};
#endif /* _TZ_BOOT_CMD_H_ */