Software APIs
rstmgr_regs.h
Go to the documentation of this file.
1/**
2 * @file
3 * @brief Generated register defines for rstmgr
4 */
5
6// Copyright information found in source file:
7// Copyright lowRISC contributors (OpenTitan project).
8
9// Licensing information found in source file:
10// Licensed under the Apache License, Version 2.0, see LICENSE for details.
11// SPDX-License-Identifier: Apache-2.0
12
13#ifndef _RSTMGR_REG_DEFS_
14#define _RSTMGR_REG_DEFS_
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19// Read width for crash info
20#define RSTMGR_PARAM_RD_WIDTH 32
21
22// Index width for crash info
23#define RSTMGR_PARAM_IDX_WIDTH 4
24
25// Number of hardware reset requests, inclusive of debug resets and pwrmgr's
26// internal resets
27#define RSTMGR_PARAM_NUM_HW_RESETS 5
28
29// Number of software resets
30#define RSTMGR_PARAM_NUM_SW_RESETS 8
31
32// Number of total reset requests, inclusive of hw/sw, por and low power exit
33#define RSTMGR_PARAM_NUM_TOTAL_RESETS 8
34
35// Number of alerts
36#define RSTMGR_PARAM_NUM_ALERTS 2
37
38// Register width
39#define RSTMGR_PARAM_REG_WIDTH 32
40
41// Alert Test Register
42#define RSTMGR_ALERT_TEST_REG_OFFSET 0x0
43#define RSTMGR_ALERT_TEST_REG_RESVAL 0x0u
44#define RSTMGR_ALERT_TEST_FATAL_FAULT_BIT 0
45#define RSTMGR_ALERT_TEST_FATAL_CNSTY_FAULT_BIT 1
46
47// Software requested system reset.
48#define RSTMGR_RESET_REQ_REG_OFFSET 0x4
49#define RSTMGR_RESET_REQ_REG_RESVAL 0x9u
50#define RSTMGR_RESET_REQ_VAL_MASK 0xfu
51#define RSTMGR_RESET_REQ_VAL_OFFSET 0
52#define RSTMGR_RESET_REQ_VAL_FIELD \
53 ((bitfield_field32_t) { .mask = RSTMGR_RESET_REQ_VAL_MASK, .index = RSTMGR_RESET_REQ_VAL_OFFSET })
54
55// Device reset reason.
56#define RSTMGR_RESET_INFO_REG_OFFSET 0x8
57#define RSTMGR_RESET_INFO_REG_RESVAL 0x1u
58#define RSTMGR_RESET_INFO_POR_BIT 0
59#define RSTMGR_RESET_INFO_LOW_POWER_EXIT_BIT 1
60#define RSTMGR_RESET_INFO_SW_RESET_BIT 2
61#define RSTMGR_RESET_INFO_HW_REQ_MASK 0x1fu
62#define RSTMGR_RESET_INFO_HW_REQ_OFFSET 3
63#define RSTMGR_RESET_INFO_HW_REQ_FIELD \
64 ((bitfield_field32_t) { .mask = RSTMGR_RESET_INFO_HW_REQ_MASK, .index = RSTMGR_RESET_INFO_HW_REQ_OFFSET })
65
66// Alert write enable
67#define RSTMGR_ALERT_REGWEN_REG_OFFSET 0xc
68#define RSTMGR_ALERT_REGWEN_REG_RESVAL 0x1u
69#define RSTMGR_ALERT_REGWEN_EN_BIT 0
70
71// Alert info dump controls.
72#define RSTMGR_ALERT_INFO_CTRL_REG_OFFSET 0x10
73#define RSTMGR_ALERT_INFO_CTRL_REG_RESVAL 0x0u
74#define RSTMGR_ALERT_INFO_CTRL_EN_BIT 0
75#define RSTMGR_ALERT_INFO_CTRL_INDEX_MASK 0xfu
76#define RSTMGR_ALERT_INFO_CTRL_INDEX_OFFSET 4
77#define RSTMGR_ALERT_INFO_CTRL_INDEX_FIELD \
78 ((bitfield_field32_t) { .mask = RSTMGR_ALERT_INFO_CTRL_INDEX_MASK, .index = RSTMGR_ALERT_INFO_CTRL_INDEX_OFFSET })
79
80// Alert info dump attributes.
81#define RSTMGR_ALERT_INFO_ATTR_REG_OFFSET 0x14
82#define RSTMGR_ALERT_INFO_ATTR_REG_RESVAL 0x0u
83#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_MASK 0xfu
84#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_OFFSET 0
85#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_FIELD \
86 ((bitfield_field32_t) { .mask = RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_MASK, .index = RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_OFFSET })
87
88// Alert dump information prior to last reset.
89#define RSTMGR_ALERT_INFO_REG_OFFSET 0x18
90#define RSTMGR_ALERT_INFO_REG_RESVAL 0x0u
91
92// Cpu write enable
93#define RSTMGR_CPU_REGWEN_REG_OFFSET 0x1c
94#define RSTMGR_CPU_REGWEN_REG_RESVAL 0x1u
95#define RSTMGR_CPU_REGWEN_EN_BIT 0
96
97// Cpu info dump controls.
98#define RSTMGR_CPU_INFO_CTRL_REG_OFFSET 0x20
99#define RSTMGR_CPU_INFO_CTRL_REG_RESVAL 0x0u
100#define RSTMGR_CPU_INFO_CTRL_EN_BIT 0
101#define RSTMGR_CPU_INFO_CTRL_INDEX_MASK 0xfu
102#define RSTMGR_CPU_INFO_CTRL_INDEX_OFFSET 4
103#define RSTMGR_CPU_INFO_CTRL_INDEX_FIELD \
104 ((bitfield_field32_t) { .mask = RSTMGR_CPU_INFO_CTRL_INDEX_MASK, .index = RSTMGR_CPU_INFO_CTRL_INDEX_OFFSET })
105
106// Cpu info dump attributes.
107#define RSTMGR_CPU_INFO_ATTR_REG_OFFSET 0x24
108#define RSTMGR_CPU_INFO_ATTR_REG_RESVAL 0x0u
109#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_MASK 0xfu
110#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_OFFSET 0
111#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_FIELD \
112 ((bitfield_field32_t) { .mask = RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_MASK, .index = RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_OFFSET })
113
114// Cpu dump information prior to last reset.
115#define RSTMGR_CPU_INFO_REG_OFFSET 0x28
116#define RSTMGR_CPU_INFO_REG_RESVAL 0x0u
117
118// Register write enable for software controllable resets.
119#define RSTMGR_SW_RST_REGWEN_EN_FIELD_WIDTH 1
120#define RSTMGR_SW_RST_REGWEN_MULTIREG_COUNT 8
121
122// Register write enable for software controllable resets.
123#define RSTMGR_SW_RST_REGWEN_0_REG_OFFSET 0x2c
124#define RSTMGR_SW_RST_REGWEN_0_REG_RESVAL 0x1u
125#define RSTMGR_SW_RST_REGWEN_0_EN_0_BIT 0
126
127// Register write enable for software controllable resets.
128#define RSTMGR_SW_RST_REGWEN_1_REG_OFFSET 0x30
129#define RSTMGR_SW_RST_REGWEN_1_REG_RESVAL 0x1u
130#define RSTMGR_SW_RST_REGWEN_1_EN_1_BIT 0
131
132// Register write enable for software controllable resets.
133#define RSTMGR_SW_RST_REGWEN_2_REG_OFFSET 0x34
134#define RSTMGR_SW_RST_REGWEN_2_REG_RESVAL 0x1u
135#define RSTMGR_SW_RST_REGWEN_2_EN_2_BIT 0
136
137// Register write enable for software controllable resets.
138#define RSTMGR_SW_RST_REGWEN_3_REG_OFFSET 0x38
139#define RSTMGR_SW_RST_REGWEN_3_REG_RESVAL 0x1u
140#define RSTMGR_SW_RST_REGWEN_3_EN_3_BIT 0
141
142// Register write enable for software controllable resets.
143#define RSTMGR_SW_RST_REGWEN_4_REG_OFFSET 0x3c
144#define RSTMGR_SW_RST_REGWEN_4_REG_RESVAL 0x1u
145#define RSTMGR_SW_RST_REGWEN_4_EN_4_BIT 0
146
147// Register write enable for software controllable resets.
148#define RSTMGR_SW_RST_REGWEN_5_REG_OFFSET 0x40
149#define RSTMGR_SW_RST_REGWEN_5_REG_RESVAL 0x1u
150#define RSTMGR_SW_RST_REGWEN_5_EN_5_BIT 0
151
152// Register write enable for software controllable resets.
153#define RSTMGR_SW_RST_REGWEN_6_REG_OFFSET 0x44
154#define RSTMGR_SW_RST_REGWEN_6_REG_RESVAL 0x1u
155#define RSTMGR_SW_RST_REGWEN_6_EN_6_BIT 0
156
157// Register write enable for software controllable resets.
158#define RSTMGR_SW_RST_REGWEN_7_REG_OFFSET 0x48
159#define RSTMGR_SW_RST_REGWEN_7_REG_RESVAL 0x1u
160#define RSTMGR_SW_RST_REGWEN_7_EN_7_BIT 0
161
162// Software controllable resets.
163#define RSTMGR_SW_RST_CTRL_N_VAL_FIELD_WIDTH 1
164#define RSTMGR_SW_RST_CTRL_N_MULTIREG_COUNT 8
165
166// Software controllable resets.
167#define RSTMGR_SW_RST_CTRL_N_0_REG_OFFSET 0x4c
168#define RSTMGR_SW_RST_CTRL_N_0_REG_RESVAL 0x1u
169#define RSTMGR_SW_RST_CTRL_N_0_VAL_0_BIT 0
170
171// Software controllable resets.
172#define RSTMGR_SW_RST_CTRL_N_1_REG_OFFSET 0x50
173#define RSTMGR_SW_RST_CTRL_N_1_REG_RESVAL 0x1u
174#define RSTMGR_SW_RST_CTRL_N_1_VAL_1_BIT 0
175
176// Software controllable resets.
177#define RSTMGR_SW_RST_CTRL_N_2_REG_OFFSET 0x54
178#define RSTMGR_SW_RST_CTRL_N_2_REG_RESVAL 0x1u
179#define RSTMGR_SW_RST_CTRL_N_2_VAL_2_BIT 0
180
181// Software controllable resets.
182#define RSTMGR_SW_RST_CTRL_N_3_REG_OFFSET 0x58
183#define RSTMGR_SW_RST_CTRL_N_3_REG_RESVAL 0x1u
184#define RSTMGR_SW_RST_CTRL_N_3_VAL_3_BIT 0
185
186// Software controllable resets.
187#define RSTMGR_SW_RST_CTRL_N_4_REG_OFFSET 0x5c
188#define RSTMGR_SW_RST_CTRL_N_4_REG_RESVAL 0x1u
189#define RSTMGR_SW_RST_CTRL_N_4_VAL_4_BIT 0
190
191// Software controllable resets.
192#define RSTMGR_SW_RST_CTRL_N_5_REG_OFFSET 0x60
193#define RSTMGR_SW_RST_CTRL_N_5_REG_RESVAL 0x1u
194#define RSTMGR_SW_RST_CTRL_N_5_VAL_5_BIT 0
195
196// Software controllable resets.
197#define RSTMGR_SW_RST_CTRL_N_6_REG_OFFSET 0x64
198#define RSTMGR_SW_RST_CTRL_N_6_REG_RESVAL 0x1u
199#define RSTMGR_SW_RST_CTRL_N_6_VAL_6_BIT 0
200
201// Software controllable resets.
202#define RSTMGR_SW_RST_CTRL_N_7_REG_OFFSET 0x68
203#define RSTMGR_SW_RST_CTRL_N_7_REG_RESVAL 0x1u
204#define RSTMGR_SW_RST_CTRL_N_7_VAL_7_BIT 0
205
206// A bit vector of all the errors that have occurred in reset manager
207#define RSTMGR_ERR_CODE_REG_OFFSET 0x6c
208#define RSTMGR_ERR_CODE_REG_RESVAL 0x0u
209#define RSTMGR_ERR_CODE_REG_INTG_ERR_BIT 0
210#define RSTMGR_ERR_CODE_RESET_CONSISTENCY_ERR_BIT 1
211#define RSTMGR_ERR_CODE_FSM_ERR_BIT 2
212
213#ifdef __cplusplus
214} // extern "C"
215#endif
216#endif // _RSTMGR_REG_DEFS_
217// End generated register defines for rstmgr