1 /*
2  * Copyright (c) 2022-2024, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #ifndef PSA_MEASURED_BOOT_PRIVATE_H
9 #define PSA_MEASURED_BOOT_PRIVATE_H
10 
11 #include <stdint.h>
12 
13 #include <drivers/measured_boot/metadata.h>
14 
15 /* Measured boot message types that distinguish its services */
16 #define RSE_MEASURED_BOOT_READ		1001U
17 #define RSE_MEASURED_BOOT_EXTEND	1002U
18 
19 struct measured_boot_read_iovec_in_t {
20     uint8_t index;
21     uint8_t sw_type_size;
22     uint8_t version_size;
23 };
24 
25 struct measured_boot_read_iovec_out_t {
26     uint8_t  is_locked;
27     uint32_t measurement_algo;
28     uint8_t  sw_type[SW_TYPE_MAX_SIZE];
29     uint8_t  sw_type_len;
30     uint8_t  version[VERSION_MAX_SIZE];
31     uint8_t  version_len;
32 };
33 
34 struct measured_boot_extend_iovec_t {
35 	uint8_t  index;
36 	uint8_t  lock_measurement;
37 	uint32_t measurement_algo;
38 	uint8_t  sw_type[SW_TYPE_MAX_SIZE];
39 	uint8_t  sw_type_size;
40 };
41 
42 #endif /* PSA_MEASURED_BOOT_PRIVATE_H */
43