xref: /optee_os/ta/avb/include/ta_avb.h (revision b29b419506fae13a625818e4ee4868b7d487bb44)
1*b29b4195SJens Wiklander /* SPDX-License-Identifier: BSD-2-Clause */
2*b29b4195SJens Wiklander /* Copyright (c) 2018, Linaro Limited */
3*b29b4195SJens Wiklander 
4*b29b4195SJens Wiklander #ifndef __TA_AVB_H
5*b29b4195SJens Wiklander #define __TA_AVB_H
6*b29b4195SJens Wiklander 
7*b29b4195SJens Wiklander #define TA_AVB_UUID { 0x023f8f1a, 0x292a, 0x432b, \
8*b29b4195SJens Wiklander 		      { 0x8f, 0xc4, 0xde, 0x84, 0x71, 0x35, 0x80, 0x67 } }
9*b29b4195SJens Wiklander 
10*b29b4195SJens Wiklander #define TA_AVB_MAX_ROLLBACK_LOCATIONS	256
11*b29b4195SJens Wiklander 
12*b29b4195SJens Wiklander /*
13*b29b4195SJens Wiklander  * Gets the rollback index corresponding to the given rollback index slot.
14*b29b4195SJens Wiklander  *
15*b29b4195SJens Wiklander  * in	params[0].value.a:	rollback index slot
16*b29b4195SJens Wiklander  * out	params[1].value.a:	upper 32 bits of rollback index
17*b29b4195SJens Wiklander  * out	params[1].value.b:	lower 32 bits of rollback index
18*b29b4195SJens Wiklander  */
19*b29b4195SJens Wiklander #define TA_AVB_CMD_READ_ROLLBACK_INDEX	0
20*b29b4195SJens Wiklander 
21*b29b4195SJens Wiklander /*
22*b29b4195SJens Wiklander  * Updates the rollback index corresponding to the given rollback index slot.
23*b29b4195SJens Wiklander  *
24*b29b4195SJens Wiklander  * Will refuse to update a slot with a lower value.
25*b29b4195SJens Wiklander  *
26*b29b4195SJens Wiklander  * in	params[0].value.a:	rollback index slot
27*b29b4195SJens Wiklander  * in	params[1].value.a:	upper 32 bits of rollback index
28*b29b4195SJens Wiklander  * in	params[1].value.b:	lower 32 bits of rollback index
29*b29b4195SJens Wiklander  */
30*b29b4195SJens Wiklander #define TA_AVB_CMD_WRITE_ROLLBACK_INDEX	1
31*b29b4195SJens Wiklander 
32*b29b4195SJens Wiklander /*
33*b29b4195SJens Wiklander  * Gets the lock state of the device.
34*b29b4195SJens Wiklander  *
35*b29b4195SJens Wiklander  * out	params[0].value.a:	lock state
36*b29b4195SJens Wiklander  */
37*b29b4195SJens Wiklander #define TA_AVB_CMD_READ_LOCK_STATE	2
38*b29b4195SJens Wiklander 
39*b29b4195SJens Wiklander /*
40*b29b4195SJens Wiklander  * Sets the lock state of the device.
41*b29b4195SJens Wiklander  *
42*b29b4195SJens Wiklander  * If the lock state is changed all rollback slots will be reset to 0
43*b29b4195SJens Wiklander  *
44*b29b4195SJens Wiklander  * in	params[0].value.a:	lock state
45*b29b4195SJens Wiklander  */
46*b29b4195SJens Wiklander #define TA_AVB_CMD_WRITE_LOCK_STATE	3
47*b29b4195SJens Wiklander 
48*b29b4195SJens Wiklander #endif /*__TA_AVB_H*/
49