blob: f5a8c7cd3b5689d280758996bd049b8b1246e99e [file] [log] [blame]
Manish V Badarkhe19b22f92022-06-17 11:42:17 +01001/*
Manish V Badarkhe71a0e242025-02-26 09:49:03 +00002 * Copyright (c) 2022-2025 Arm Limited. All rights reserved.
Manish V Badarkhe19b22f92022-06-17 11:42:17 +01003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7#ifndef DRTM_MEASUREMENTS_H
8#define DRTM_MEASUREMENTS_H
9
10#include <stdint.h>
11
12#include "drtm_main.h"
13#include <platform_def.h>
14
15#define DRTM_EVENT_ARM_BASE 0x9000U
16#define DRTM_EVENT_TYPE(n) (DRTM_EVENT_ARM_BASE + (unsigned int)(n))
17
18#define DRTM_EVENT_ARM_PCR_SCHEMA DRTM_EVENT_TYPE(1)
19#define DRTM_EVENT_ARM_DCE DRTM_EVENT_TYPE(2)
20#define DRTM_EVENT_ARM_DCE_PUBKEY DRTM_EVENT_TYPE(3)
21#define DRTM_EVENT_ARM_DLME DRTM_EVENT_TYPE(4)
22#define DRTM_EVENT_ARM_DLME_EP DRTM_EVENT_TYPE(5)
23#define DRTM_EVENT_ARM_DEBUG_CONFIG DRTM_EVENT_TYPE(6)
24#define DRTM_EVENT_ARM_NONSECURE_CONFIG DRTM_EVENT_TYPE(7)
25#define DRTM_EVENT_ARM_DCE_SECONDARY DRTM_EVENT_TYPE(8)
26#define DRTM_EVENT_ARM_TZFW DRTM_EVENT_TYPE(9)
27#define DRTM_EVENT_ARM_SEPARATOR DRTM_EVENT_TYPE(10)
Manish V Badarkhe71a0e242025-02-26 09:49:03 +000028#define DRTM_EVENT_ARM_DLME_PUBKEY DRTM_EVENT_TYPE(11)
29#define DRTM_EVENT_ARM_DLME_SVN DRTM_EVENT_TYPE(12)
30#define DRTM_EVENT_ARM_NO_ACTION DRTM_EVENT_TYPE(13)
Manish V Badarkhe19b22f92022-06-17 11:42:17 +010031
32#define CHECK_RC(rc, func_call) { \
33 if (rc != 0) { \
34 ERROR("%s(): " #func_call "failed unexpectedly rc=%d\n", \
35 __func__, rc); \
36 panic(); \
37 } \
38}
39
40enum drtm_retc drtm_take_measurements(const struct_drtm_dl_args *a);
41void drtm_serialise_event_log(uint8_t *dst, size_t *event_log_size_out);
42
43#endif /* DRTM_MEASUREMENTS_H */