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
core_test_defs.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2017-2020, Arm Limited. All rights reserved.
3
*
4
* SPDX-License-Identifier: BSD-3-Clause
5
*
6
*/
7
8
#ifndef __CORE_TEST_DEFS_H__
9
#define __CORE_TEST_DEFS_H__
10
11
#ifdef __cplusplus
12
extern
"C"
{
13
#endif
14
15
#include <inttypes.h>
16
#include <limits.h>
17
#include "
tfm_api.h
"
18
19
/* These definitions are used in symbols, only digits are permitted */
20
#define CORE_TEST_ID_NS_THREAD 1001
21
#define CORE_TEST_ID_CHECK_INIT 1003
22
#define CORE_TEST_ID_RECURSION 1004
23
#define CORE_TEST_ID_BUFFER_CHECK 1007
24
#define CORE_TEST_ID_SS_TO_SS 1008
25
#define CORE_TEST_ID_SS_TO_SS_BUFFER 1010
26
#define CORE_TEST_ID_PERIPHERAL_ACCESS 1012
27
#define CORE_TEST_ID_GET_CALLER_CLIENT_ID 1013
28
#define CORE_TEST_ID_SPM_REQUEST 1014
29
#define CORE_TEST_ID_IOVEC_SANITIZATION 1015
30
#define CORE_TEST_ID_OUTVEC_WRITE 1016
31
#define CORE_TEST_ID_SECURE_IRQ 1017
32
#define CORE_TEST_ID_BLOCK 2001
33
34
enum
irq_test_scenario_t
{
35
IRQ_TEST_SCENARIO_NONE
,
36
IRQ_TEST_SCENARIO_1
,
37
IRQ_TEST_SCENARIO_2
,
38
IRQ_TEST_SCENARIO_3
,
39
IRQ_TEST_SCENARIO_4
,
40
IRQ_TEST_SCENARIO_5
,
41
};
42
43
struct
irq_test_execution_data_t
{
44
volatile
int32_t
timer0_triggered
;
45
volatile
int32_t
timer1_triggered
;
46
};
47
48
/* Use lower 16 bits in return value for error code, upper 16 for line number
49
* in test service
50
*/
51
#define CORE_TEST_RETURN_ERROR(x) return (((__LINE__) << 16) | x)
52
#define CORE_TEST_ERROR_GET_EXTRA(x) (x >> 16)
53
#define CORE_TEST_ERROR_GET_CODE(x) (x & 0xFFFF)
54
55
enum
core_test_errno_t
{
56
CORE_TEST_ERRNO_TEST_NOT_SUPPORTED
= -13,
57
CORE_TEST_ERRNO_SP_NOT_INITED
= -12,
58
CORE_TEST_ERRNO_UNEXPECTED_CORE_BEHAVIOUR
= -11,
59
CORE_TEST_ERRNO_SP_RECURSION_NOT_REJECTED
= -10,
60
CORE_TEST_ERRNO_INVALID_BUFFER
= -9,
61
CORE_TEST_ERRNO_SLAVE_SP_CALL_FAILURE
= -8,
62
CORE_TEST_ERRNO_SLAVE_SP_BUFFER_FAILURE
= -7,
63
CORE_TEST_ERRNO_FIRST_CALL_FAILED
= -6,
64
CORE_TEST_ERRNO_SECOND_CALL_FAILED
= -5,
65
CORE_TEST_ERRNO_PERIPHERAL_ACCESS_FAILED
= -4,
66
CORE_TEST_ERRNO_TEST_FAULT
= -3,
67
CORE_TEST_ERRNO_INVALID_TEST_ID
= -2,
68
CORE_TEST_ERRNO_INVALID_PARAMETER
= -1,
69
70
CORE_TEST_ERRNO_SUCCESS
= 0,
71
72
CORE_TEST_ERRNO_SUCCESS_2
= 1,
73
74
/* Following entry is only to ensure the error code of int size */
75
CORE_TEST_ERRNO_FORCE_INT_SIZE
= INT_MAX
76
};
77
78
#ifdef __cplusplus
79
}
80
#endif
81
82
#endif
/* __CORE_TEST_DEFS_H__ */
CORE_TEST_ERRNO_SP_RECURSION_NOT_REJECTED
Definition:
core_test_defs.h:59
CORE_TEST_ERRNO_SP_NOT_INITED
Definition:
core_test_defs.h:57
CORE_TEST_ERRNO_INVALID_PARAMETER
Definition:
core_test_defs.h:68
CORE_TEST_ERRNO_PERIPHERAL_ACCESS_FAILED
Definition:
core_test_defs.h:65
CORE_TEST_ERRNO_TEST_FAULT
Definition:
core_test_defs.h:66
CORE_TEST_ERRNO_FORCE_INT_SIZE
Definition:
core_test_defs.h:75
tfm_api.h
IRQ_TEST_SCENARIO_NONE
Definition:
core_test_defs.h:35
IRQ_TEST_SCENARIO_1
Definition:
core_test_defs.h:36
irq_test_execution_data_t::timer1_triggered
volatile int32_t timer1_triggered
Definition:
core_test_defs.h:45
CORE_TEST_ERRNO_UNEXPECTED_CORE_BEHAVIOUR
Definition:
core_test_defs.h:58
CORE_TEST_ERRNO_SLAVE_SP_CALL_FAILURE
Definition:
core_test_defs.h:61
IRQ_TEST_SCENARIO_3
Definition:
core_test_defs.h:38
core_test_errno_t
core_test_errno_t
Definition:
core_test_defs.h:55
IRQ_TEST_SCENARIO_2
Definition:
core_test_defs.h:37
CORE_TEST_ERRNO_INVALID_TEST_ID
Definition:
core_test_defs.h:67
irq_test_scenario_t
irq_test_scenario_t
Definition:
core_test_defs.h:34
CORE_TEST_ERRNO_FIRST_CALL_FAILED
Definition:
core_test_defs.h:63
CORE_TEST_ERRNO_INVALID_BUFFER
Definition:
core_test_defs.h:60
CORE_TEST_ERRNO_SUCCESS
Definition:
core_test_defs.h:70
IRQ_TEST_SCENARIO_5
Definition:
core_test_defs.h:40
CORE_TEST_ERRNO_SECOND_CALL_FAILED
Definition:
core_test_defs.h:64
CORE_TEST_ERRNO_SUCCESS_2
Definition:
core_test_defs.h:72
IRQ_TEST_SCENARIO_4
Definition:
core_test_defs.h:39
irq_test_execution_data_t
Definition:
core_test_defs.h:43
irq_test_execution_data_t::timer0_triggered
volatile int32_t timer0_triggered
Definition:
core_test_defs.h:44
CORE_TEST_ERRNO_TEST_NOT_SUPPORTED
Definition:
core_test_defs.h:56
CORE_TEST_ERRNO_SLAVE_SP_BUFFER_FAILURE
Definition:
core_test_defs.h:62
test
test_services
tfm_core_test
core_test_defs.h
Generated on Thu Feb 18 2021 13:29:12 for TF-M Reference Manual by
1.8.6