blob: 87538f1bdf9a0f985a738cdb43a4fb0a07fbbf5c [file] [log] [blame]
/********************************************************************************
* Marvell GPL License Option
*
* If you received this File from Marvell, you may opt to use, redistribute and/or
* modify this File in accordance with the terms and conditions of the General
* Public License Version 2, June 1991 (the "GPL License"), a copy of which is
* available along with the File in the license.txt file or by writing to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or
* on the worldwide web at http://www.gnu.org/licenses/gpl.txt.
*
* THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED
* WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY
* DISCLAIMED. The GPL License provides additional details about this warranty
* disclaimer.
******************************************************************************/
#ifndef _TEE_SYS_CMD_H_
#define _TEE_SYS_CMD_H_
#include "tee_internal_core_common.h"
/** TA System Command Protocol.
*
* All TA must support these System Commands.
*
* currently, we only support 2 system command in TA:
* - OpenSession
* - CloseSession
*/
enum TASysCmd {
TASYS_CMD_OPEN_SESSION,
TASYS_CMD_CLOSE_SESSION, /* return instanceDead by param[0].value.a */
TASYS_CMD_MAX
};
typedef struct {
TEE_UUID client; /* input: client TA uuid */
uint32_t login; /* input: login method */
uint32_t group; /* input: group to login for TEE_LOGIN_GROUP &
* TEE_LOGIN_APPLICATION_GROUP */
uint32_t sessionId; /* output: taskId (8bits) | index (24bits) */
} TASysCmdOpenSessionParamExt;
#endif /* _TEE_SYS_CMD_H_ */