TF-M Reference Manual
1.2.0
TrustedFirmware-M
Main Page
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
tfm_spm_log.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020, Arm Limited. All rights reserved.
3
*
4
* SPDX-License-Identifier: BSD-3-Clause
5
*
6
*/
7
8
#ifndef __TFM_SPM_LOG_H__
9
#define __TFM_SPM_LOG_H__
10
11
#include <stddef.h>
12
#include <stdint.h>
13
#include "tfm_hal_defs.h"
14
#include "tfm_hal_spm_logdev.h"
15
16
/* The SPM log levels */
17
#define TFM_SPM_LOG_LEVEL_DEBUG 3
/* All log APIs output */
18
#define TFM_SPM_LOG_LEVEL_INFO 2
/*
19
* All log APIs output except SPMLOG_DBG
20
* and SPMLOG_DBGMSGVAL
21
*/
22
#define TFM_SPM_LOG_LEVEL_ERROR 1
/*
23
* Only SPMLOG_ERRMSG and SPMLOG_ERRMSGVAL
24
* APIs output.
25
*/
26
#define TFM_SPM_LOG_LEVEL_SILENCE 0
/* All log APIs are suppressed */
27
28
#ifndef TFM_SPM_LOG_LEVEL
29
#error "TFM_SPM_LOG_LEVEL not defined!"
30
#endif
31
32
#if (TFM_SPM_LOG_LEVEL > TFM_SPM_LOG_LEVEL_DEBUG || \
33
TFM_SPM_LOG_LEVEL < TFM_SPM_LOG_LEVEL_SILENCE)
34
#error "Incorrect TFM_SPM_LOG_LEVEL value!"
35
#endif
36
37
#if (TFM_SPM_LOG_LEVEL == TFM_SPM_LOG_LEVEL_DEBUG)
38
#define SPMLOG_DBGMSGVAL(msg, val) spm_log_msgval(msg, sizeof(msg), val)
39
#define SPMLOG_DBGMSG(msg) tfm_hal_output_spm_log(msg, sizeof(msg))
40
#else
41
#define SPMLOG_DBGMSGVAL(msg, val)
42
#define SPMLOG_DBGMSG(msg)
43
#endif
44
45
#if (TFM_SPM_LOG_LEVEL >= TFM_SPM_LOG_LEVEL_INFO)
46
#define SPMLOG_INFMSGVAL(msg, val) spm_log_msgval(msg, sizeof(msg), val)
47
#define SPMLOG_INFMSG(msg) tfm_hal_output_spm_log(msg, sizeof(msg))
48
#else
49
#define SPMLOG_INFMSGVAL(msg, val)
50
#define SPMLOG_INFMSG(msg)
51
#endif
52
53
#if (TFM_SPM_LOG_LEVEL >= TFM_SPM_LOG_LEVEL_ERROR)
54
#define SPMLOG_ERRMSGVAL(msg, val) spm_log_msgval(msg, sizeof(msg), val)
55
#define SPMLOG_ERRMSG(msg) tfm_hal_output_spm_log(msg, sizeof(msg))
56
#else
57
#define SPMLOG_ERRMSGVAL(msg, val)
58
#define SPMLOG_ERRMSG(msg)
59
#endif
60
72
int32_t
spm_log_msgval
(
const
char
*msg,
size_t
len, uint32_t value);
73
74
#endif
/* __TFM_SPM_LOG_H__ */
spm_log_msgval
int32_t spm_log_msgval(const char *msg, size_t len, uint32_t value)
SPM output API to convert digit number into HEX string and call the HAL API tfm_hal_output_spm_log.
Definition:
spm_log.c:36
secure_fw
spm
include
tfm_spm_log.h
Generated on Thu Feb 18 2021 13:29:11 for TF-M Reference Manual by
1.8.6