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 0x80000000u
44#define RSTMGR_ALERT_TEST_FATAL_FAULT_BIT 0
45#define RSTMGR_ALERT_TEST_FATAL_CNSTY_FAULT_BIT 1
46#define RSTMGR_ALERT_TEST_REGWEN_BIT 31
47
48// Software requested system reset.
49#define RSTMGR_RESET_REQ_REG_OFFSET 0x4
50#define RSTMGR_RESET_REQ_REG_RESVAL 0x9u
51#define RSTMGR_RESET_REQ_VAL_MASK 0xfu
52#define RSTMGR_RESET_REQ_VAL_OFFSET 0
53#define RSTMGR_RESET_REQ_VAL_FIELD \
54 ((bitfield_field32_t) { .mask = RSTMGR_RESET_REQ_VAL_MASK, .index = RSTMGR_RESET_REQ_VAL_OFFSET })
55
56// Device reset reason.
57#define RSTMGR_RESET_INFO_REG_OFFSET 0x8
58#define RSTMGR_RESET_INFO_REG_RESVAL 0x1u
59#define RSTMGR_RESET_INFO_POR_BIT 0
60#define RSTMGR_RESET_INFO_LOW_POWER_EXIT_BIT 1
61#define RSTMGR_RESET_INFO_SW_RESET_BIT 2
62#define RSTMGR_RESET_INFO_HW_REQ_MASK 0x1fu
63#define RSTMGR_RESET_INFO_HW_REQ_OFFSET 3
64#define RSTMGR_RESET_INFO_HW_REQ_FIELD \
65 ((bitfield_field32_t) { .mask = RSTMGR_RESET_INFO_HW_REQ_MASK, .index = RSTMGR_RESET_INFO_HW_REQ_OFFSET })
66
67// Alert write enable
68#define RSTMGR_ALERT_REGWEN_REG_OFFSET 0xc
69#define RSTMGR_ALERT_REGWEN_REG_RESVAL 0x1u
70#define RSTMGR_ALERT_REGWEN_EN_BIT 0
71
72// Alert info dump controls.
73#define RSTMGR_ALERT_INFO_CTRL_REG_OFFSET 0x10
74#define RSTMGR_ALERT_INFO_CTRL_REG_RESVAL 0x0u
75#define RSTMGR_ALERT_INFO_CTRL_EN_BIT 0
76#define RSTMGR_ALERT_INFO_CTRL_INDEX_MASK 0xfu
77#define RSTMGR_ALERT_INFO_CTRL_INDEX_OFFSET 4
78#define RSTMGR_ALERT_INFO_CTRL_INDEX_FIELD \
79 ((bitfield_field32_t) { .mask = RSTMGR_ALERT_INFO_CTRL_INDEX_MASK, .index = RSTMGR_ALERT_INFO_CTRL_INDEX_OFFSET })
80
81// Alert info dump attributes.
82#define RSTMGR_ALERT_INFO_ATTR_REG_OFFSET 0x14
83#define RSTMGR_ALERT_INFO_ATTR_REG_RESVAL 0x0u
84#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_MASK 0xfu
85#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_OFFSET 0
86#define RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_FIELD \
87 ((bitfield_field32_t) { .mask = RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_MASK, .index = RSTMGR_ALERT_INFO_ATTR_CNT_AVAIL_OFFSET })
88
89// Alert dump information prior to last reset.
90#define RSTMGR_ALERT_INFO_REG_OFFSET 0x18
91#define RSTMGR_ALERT_INFO_REG_RESVAL 0x0u
92
93// Cpu write enable
94#define RSTMGR_CPU_REGWEN_REG_OFFSET 0x1c
95#define RSTMGR_CPU_REGWEN_REG_RESVAL 0x1u
96#define RSTMGR_CPU_REGWEN_EN_BIT 0
97
98// Cpu info dump controls.
99#define RSTMGR_CPU_INFO_CTRL_REG_OFFSET 0x20
100#define RSTMGR_CPU_INFO_CTRL_REG_RESVAL 0x0u
101#define RSTMGR_CPU_INFO_CTRL_EN_BIT 0
102#define RSTMGR_CPU_INFO_CTRL_INDEX_MASK 0xfu
103#define RSTMGR_CPU_INFO_CTRL_INDEX_OFFSET 4
104#define RSTMGR_CPU_INFO_CTRL_INDEX_FIELD \
105 ((bitfield_field32_t) { .mask = RSTMGR_CPU_INFO_CTRL_INDEX_MASK, .index = RSTMGR_CPU_INFO_CTRL_INDEX_OFFSET })
106
107// Cpu info dump attributes.
108#define RSTMGR_CPU_INFO_ATTR_REG_OFFSET 0x24
109#define RSTMGR_CPU_INFO_ATTR_REG_RESVAL 0x0u
110#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_MASK 0xfu
111#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_OFFSET 0
112#define RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_FIELD \
113 ((bitfield_field32_t) { .mask = RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_MASK, .index = RSTMGR_CPU_INFO_ATTR_CNT_AVAIL_OFFSET })
114
115// Cpu dump information prior to last reset.
116#define RSTMGR_CPU_INFO_REG_OFFSET 0x28
117#define RSTMGR_CPU_INFO_REG_RESVAL 0x0u
118
119// Register write enable for software controllable resets.
120#define RSTMGR_SW_RST_REGWEN_EN_FIELD_WIDTH 1
121#define RSTMGR_SW_RST_REGWEN_MULTIREG_COUNT 8
122
123// Register write enable for software controllable resets.
124#define RSTMGR_SW_RST_REGWEN_0_REG_OFFSET 0x2c
125#define RSTMGR_SW_RST_REGWEN_0_REG_RESVAL 0x1u
126#define RSTMGR_SW_RST_REGWEN_0_EN_0_BIT 0
127
128// Register write enable for software controllable resets.
129#define RSTMGR_SW_RST_REGWEN_1_REG_OFFSET 0x30
130#define RSTMGR_SW_RST_REGWEN_1_REG_RESVAL 0x1u
131#define RSTMGR_SW_RST_REGWEN_1_EN_1_BIT 0
132
133// Register write enable for software controllable resets.
134#define RSTMGR_SW_RST_REGWEN_2_REG_OFFSET 0x34
135#define RSTMGR_SW_RST_REGWEN_2_REG_RESVAL 0x1u
136#define RSTMGR_SW_RST_REGWEN_2_EN_2_BIT 0
137
138// Register write enable for software controllable resets.
139#define RSTMGR_SW_RST_REGWEN_3_REG_OFFSET 0x38
140#define RSTMGR_SW_RST_REGWEN_3_REG_RESVAL 0x1u
141#define RSTMGR_SW_RST_REGWEN_3_EN_3_BIT 0
142
143// Register write enable for software controllable resets.
144#define RSTMGR_SW_RST_REGWEN_4_REG_OFFSET 0x3c
145#define RSTMGR_SW_RST_REGWEN_4_REG_RESVAL 0x1u
146#define RSTMGR_SW_RST_REGWEN_4_EN_4_BIT 0
147
148// Register write enable for software controllable resets.
149#define RSTMGR_SW_RST_REGWEN_5_REG_OFFSET 0x40
150#define RSTMGR_SW_RST_REGWEN_5_REG_RESVAL 0x1u
151#define RSTMGR_SW_RST_REGWEN_5_EN_5_BIT 0
152
153// Register write enable for software controllable resets.
154#define RSTMGR_SW_RST_REGWEN_6_REG_OFFSET 0x44
155#define RSTMGR_SW_RST_REGWEN_6_REG_RESVAL 0x1u
156#define RSTMGR_SW_RST_REGWEN_6_EN_6_BIT 0
157
158// Register write enable for software controllable resets.
159#define RSTMGR_SW_RST_REGWEN_7_REG_OFFSET 0x48
160#define RSTMGR_SW_RST_REGWEN_7_REG_RESVAL 0x1u
161#define RSTMGR_SW_RST_REGWEN_7_EN_7_BIT 0
162
163// Software controllable resets.
164#define RSTMGR_SW_RST_CTRL_N_VAL_FIELD_WIDTH 1
165#define RSTMGR_SW_RST_CTRL_N_MULTIREG_COUNT 8
166
167// Software controllable resets.
168#define RSTMGR_SW_RST_CTRL_N_0_REG_OFFSET 0x4c
169#define RSTMGR_SW_RST_CTRL_N_0_REG_RESVAL 0x1u
170#define RSTMGR_SW_RST_CTRL_N_0_VAL_0_BIT 0
171
172// Software controllable resets.
173#define RSTMGR_SW_RST_CTRL_N_1_REG_OFFSET 0x50
174#define RSTMGR_SW_RST_CTRL_N_1_REG_RESVAL 0x1u
175#define RSTMGR_SW_RST_CTRL_N_1_VAL_1_BIT 0
176
177// Software controllable resets.
178#define RSTMGR_SW_RST_CTRL_N_2_REG_OFFSET 0x54
179#define RSTMGR_SW_RST_CTRL_N_2_REG_RESVAL 0x1u
180#define RSTMGR_SW_RST_CTRL_N_2_VAL_2_BIT 0
181
182// Software controllable resets.
183#define RSTMGR_SW_RST_CTRL_N_3_REG_OFFSET 0x58
184#define RSTMGR_SW_RST_CTRL_N_3_REG_RESVAL 0x1u
185#define RSTMGR_SW_RST_CTRL_N_3_VAL_3_BIT 0
186
187// Software controllable resets.
188#define RSTMGR_SW_RST_CTRL_N_4_REG_OFFSET 0x5c
189#define RSTMGR_SW_RST_CTRL_N_4_REG_RESVAL 0x1u
190#define RSTMGR_SW_RST_CTRL_N_4_VAL_4_BIT 0
191
192// Software controllable resets.
193#define RSTMGR_SW_RST_CTRL_N_5_REG_OFFSET 0x60
194#define RSTMGR_SW_RST_CTRL_N_5_REG_RESVAL 0x1u
195#define RSTMGR_SW_RST_CTRL_N_5_VAL_5_BIT 0
196
197// Software controllable resets.
198#define RSTMGR_SW_RST_CTRL_N_6_REG_OFFSET 0x64
199#define RSTMGR_SW_RST_CTRL_N_6_REG_RESVAL 0x1u
200#define RSTMGR_SW_RST_CTRL_N_6_VAL_6_BIT 0
201
202// Software controllable resets.
203#define RSTMGR_SW_RST_CTRL_N_7_REG_OFFSET 0x68
204#define RSTMGR_SW_RST_CTRL_N_7_REG_RESVAL 0x1u
205#define RSTMGR_SW_RST_CTRL_N_7_VAL_7_BIT 0
206
207// A bit vector of all the errors that have occurred in reset manager
208#define RSTMGR_ERR_CODE_REG_OFFSET 0x6c
209#define RSTMGR_ERR_CODE_REG_RESVAL 0x0u
210#define RSTMGR_ERR_CODE_REG_INTG_ERR_BIT 0
211#define RSTMGR_ERR_CODE_RESET_CONSISTENCY_ERR_BIT 1
212#define RSTMGR_ERR_CODE_FSM_ERR_BIT 2
213
214#ifdef __cplusplus
215} // extern "C"
216#endif
217#endif // _RSTMGR_REG_DEFS_
218// End generated register defines for rstmgr