HPM SDK
HPMicro Software Development Kit
hpm_bmon_regs.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2021-2025 HPMicro
3
*
4
* SPDX-License-Identifier: BSD-3-Clause
5
*
6
*/
7
8
9
#ifndef HPM_BMON_H
10
#define HPM_BMON_H
11
12
typedef
struct
{
13
struct
{
14
__RW uint32_t CONTROL;
/* 0x0: Glitch and clock monitor control */
15
__RW uint32_t STATUS;
/* 0x4: Glitch and clock monitor status */
16
__R uint8_t RESERVED0[8];
/* 0x8 - 0xF: Reserved */
17
} MONITOR[2];
18
}
BMON_Type
;
19
20
21
/* Bitfield definition for register of struct array MONITOR: CONTROL */
22
/*
23
* ACTIVE (RW)
24
*
25
* select glitch works in active mode or passve mode.
26
* 0: passive mode, depends on power glitch destroy DFF value
27
* 1: active mode, check glitch by DFF chain
28
*/
29
#define BMON_MONITOR_CONTROL_ACTIVE_MASK (0x10U)
30
#define BMON_MONITOR_CONTROL_ACTIVE_SHIFT (4U)
31
#define BMON_MONITOR_CONTROL_ACTIVE_SET(x) (((uint32_t)(x) << BMON_MONITOR_CONTROL_ACTIVE_SHIFT) & BMON_MONITOR_CONTROL_ACTIVE_MASK)
32
#define BMON_MONITOR_CONTROL_ACTIVE_GET(x) (((uint32_t)(x) & BMON_MONITOR_CONTROL_ACTIVE_MASK) >> BMON_MONITOR_CONTROL_ACTIVE_SHIFT)
33
34
/*
35
* ENABLE (RW)
36
*
37
* enable glitch detector
38
* 0: detector disabled
39
* 1: detector enabled
40
*/
41
#define BMON_MONITOR_CONTROL_ENABLE_MASK (0x1U)
42
#define BMON_MONITOR_CONTROL_ENABLE_SHIFT (0U)
43
#define BMON_MONITOR_CONTROL_ENABLE_SET(x) (((uint32_t)(x) << BMON_MONITOR_CONTROL_ENABLE_SHIFT) & BMON_MONITOR_CONTROL_ENABLE_MASK)
44
#define BMON_MONITOR_CONTROL_ENABLE_GET(x) (((uint32_t)(x) & BMON_MONITOR_CONTROL_ENABLE_MASK) >> BMON_MONITOR_CONTROL_ENABLE_SHIFT)
45
46
/* Bitfield definition for register of struct array MONITOR: STATUS */
47
/*
48
* FLAG (RW)
49
*
50
* flag for glitch detected, write 1 to clear this flag
51
* 0: glitch not detected
52
* 1: glitch detected
53
*/
54
#define BMON_MONITOR_STATUS_FLAG_MASK (0x1U)
55
#define BMON_MONITOR_STATUS_FLAG_SHIFT (0U)
56
#define BMON_MONITOR_STATUS_FLAG_SET(x) (((uint32_t)(x) << BMON_MONITOR_STATUS_FLAG_SHIFT) & BMON_MONITOR_STATUS_FLAG_MASK)
57
#define BMON_MONITOR_STATUS_FLAG_GET(x) (((uint32_t)(x) & BMON_MONITOR_STATUS_FLAG_MASK) >> BMON_MONITOR_STATUS_FLAG_SHIFT)
58
59
60
61
/* MONITOR register group index macro definition */
62
#define BMON_MONITOR_GLITCH0 (0UL)
63
#define BMON_MONITOR_CLOCK0 (1UL)
64
65
66
#endif
/* HPM_BMON_H */
BMON_Type
Definition:
hpm_bmon_regs.h:12
soc
HPM6700
ip
hpm_bmon_regs.h
Generated on Tue Apr 1 2025 05:30:27 for HPM SDK by
1.9.1