blob: bd93f19c81ac50aecb1dfbd8dfe9c09106cbfb2f [file] [log] [blame]
Eric Kunzee5e26762020-10-13 16:11:07 -07001
2// Copyright (c) 2020, ARM Limited.
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16/*
17 * Filename: src/debug_types.h
18 * Description:
19 * Defines fundamental debugger datatypes for the functional model
20 */
21
22#ifndef DEBUG_TYPES_H_
23#define DEBUG_TYPES_H_
24
25#ifdef __cplusplus
26extern "C"
27{
28#endif
29
30 // Debug verbosity mask
31 typedef enum func_debug_verbosity_e
32 {
33 DEBUG_VERB_NONE = 0x00,
34 DEBUG_VERB_INFO = 0x01, // Informational debugging messages
35 DEBUG_VERB_IFACE = 0x02, // Interface debugging support
36 DEBUG_VERB_LOW = 0x04, // Low, medium, and high levels of debug printout
37 DEBUG_VERB_MED = 0x08,
38 DEBUG_VERB_HIGH = 0x10
39 } func_debug_verbosity_e;
40
41 // Generated debug modes enumeration
42 typedef enum func_debug_mode_e
43 {
44 DEBUG_NONE = 0x0,
45#define DEBUG_MODE(NAME, BIT) DEBUG_##NAME = (1UL << BIT),
46#include "debug_modes.def"
47#undef DEBUG_MODE
48 DEBUG_ALL = 0xffffffffffffffffUL
49 } func_debug_mode_e;
50
51#define DEBUG_INST_ALL 0xffffffffffffffffUL
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif