Software APIs
rram_ctrl_regs.h
Go to the documentation of this file.
1/**
2 * @file
3 * @brief Generated register defines for rram_ctrl
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 _RRAM_CTRL_REG_DEFS_
14#define _RRAM_CTRL_REG_DEFS_
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19// Constant value that enables RRAM execution
20#define RRAM_CTRL_PARAM_EXEC_EN 2724870391
21
22// Number of configurable rram regions
23#define RRAM_CTRL_PARAM_NUM_REGIONS 8
24
25// Number of info pages
26#define RRAM_CTRL_PARAM_NUM_INFO_PAGES 8
27
28// Number of data pages
29#define RRAM_CTRL_PARAM_NUM_DATA_PAGES 4096
30
31// Number of words per page
32#define RRAM_CTRL_PARAM_WORDS_PER_PAGE 32
33
34// Number of bytes per word
35#define RRAM_CTRL_PARAM_BYTES_PER_WORD 16
36
37// Number of bytes per page
38#define RRAM_CTRL_PARAM_BYTES_PER_PAGE 512
39
40// Number of alerts
41#define RRAM_CTRL_PARAM_NUM_ALERTS 5
42
43// Register width
44#define RRAM_CTRL_PARAM_REG_WIDTH 32
45
46// Common Interrupt Offsets
47#define RRAM_CTRL_INTR_COMMON_WR_EMPTY_BIT 0
48#define RRAM_CTRL_INTR_COMMON_WR_LVL_BIT 1
49#define RRAM_CTRL_INTR_COMMON_RD_FULL_BIT 2
50#define RRAM_CTRL_INTR_COMMON_RD_LVL_BIT 3
51#define RRAM_CTRL_INTR_COMMON_OP_DONE_BIT 4
52#define RRAM_CTRL_INTR_COMMON_CORR_ERR_BIT 5
53
54// Interrupt State Register
55#define RRAM_CTRL_INTR_STATE_REG_OFFSET 0x0
56#define RRAM_CTRL_INTR_STATE_REG_RESVAL 0x3u
57#define RRAM_CTRL_INTR_STATE_WR_EMPTY_BIT 0
58#define RRAM_CTRL_INTR_STATE_WR_LVL_BIT 1
59#define RRAM_CTRL_INTR_STATE_RD_FULL_BIT 2
60#define RRAM_CTRL_INTR_STATE_RD_LVL_BIT 3
61#define RRAM_CTRL_INTR_STATE_OP_DONE_BIT 4
62#define RRAM_CTRL_INTR_STATE_CORR_ERR_BIT 5
63
64// Interrupt Enable Register
65#define RRAM_CTRL_INTR_ENABLE_REG_OFFSET 0x4
66#define RRAM_CTRL_INTR_ENABLE_REG_RESVAL 0x0u
67#define RRAM_CTRL_INTR_ENABLE_WR_EMPTY_BIT 0
68#define RRAM_CTRL_INTR_ENABLE_WR_LVL_BIT 1
69#define RRAM_CTRL_INTR_ENABLE_RD_FULL_BIT 2
70#define RRAM_CTRL_INTR_ENABLE_RD_LVL_BIT 3
71#define RRAM_CTRL_INTR_ENABLE_OP_DONE_BIT 4
72#define RRAM_CTRL_INTR_ENABLE_CORR_ERR_BIT 5
73
74// Interrupt Test Register
75#define RRAM_CTRL_INTR_TEST_REG_OFFSET 0x8
76#define RRAM_CTRL_INTR_TEST_REG_RESVAL 0x0u
77#define RRAM_CTRL_INTR_TEST_WR_EMPTY_BIT 0
78#define RRAM_CTRL_INTR_TEST_WR_LVL_BIT 1
79#define RRAM_CTRL_INTR_TEST_RD_FULL_BIT 2
80#define RRAM_CTRL_INTR_TEST_RD_LVL_BIT 3
81#define RRAM_CTRL_INTR_TEST_OP_DONE_BIT 4
82#define RRAM_CTRL_INTR_TEST_CORR_ERR_BIT 5
83
84// Alert Test Register
85#define RRAM_CTRL_ALERT_TEST_REG_OFFSET 0xc
86#define RRAM_CTRL_ALERT_TEST_REG_RESVAL 0x0u
87#define RRAM_CTRL_ALERT_TEST_RECOV_ERR_BIT 0
88#define RRAM_CTRL_ALERT_TEST_FATAL_STD_ERR_BIT 1
89#define RRAM_CTRL_ALERT_TEST_FATAL_ERR_BIT 2
90#define RRAM_CTRL_ALERT_TEST_FATAL_MACRO_ERR_BIT 3
91#define RRAM_CTRL_ALERT_TEST_RECOV_MACRO_ERR_BIT 4
92
93// Disable RRAM functionality
94#define RRAM_CTRL_DIS_REG_OFFSET 0x10
95#define RRAM_CTRL_DIS_REG_RESVAL 0x99u
96#define RRAM_CTRL_DIS_SW_DIS_MASK 0xfu
97#define RRAM_CTRL_DIS_SW_DIS_OFFSET 0
98#define RRAM_CTRL_DIS_SW_DIS_FIELD \
99 ((bitfield_field32_t) { .mask = RRAM_CTRL_DIS_SW_DIS_MASK, .index = RRAM_CTRL_DIS_SW_DIS_OFFSET })
100#define RRAM_CTRL_DIS_RELBL_ERR_FATAL_MASK 0xfu
101#define RRAM_CTRL_DIS_RELBL_ERR_FATAL_OFFSET 4
102#define RRAM_CTRL_DIS_RELBL_ERR_FATAL_FIELD \
103 ((bitfield_field32_t) { .mask = RRAM_CTRL_DIS_RELBL_ERR_FATAL_MASK, .index = RRAM_CTRL_DIS_RELBL_ERR_FATAL_OFFSET })
104
105// Controls whether RRAM can be used for code execution fetches
106#define RRAM_CTRL_EXEC_REG_OFFSET 0x14
107#define RRAM_CTRL_EXEC_REG_RESVAL 0x0u
108
109// Controller init register
110#define RRAM_CTRL_INIT_REG_OFFSET 0x18
111#define RRAM_CTRL_INIT_REG_RESVAL 0x0u
112#define RRAM_CTRL_INIT_VAL_BIT 0
113
114// Controls the configurability of the !!CONTROL register.
115#define RRAM_CTRL_CTRL_REGWEN_REG_OFFSET 0x1c
116#define RRAM_CTRL_CTRL_REGWEN_REG_RESVAL 0x1u
117#define RRAM_CTRL_CTRL_REGWEN_EN_BIT 0
118
119// Control register
120#define RRAM_CTRL_CONTROL_REG_OFFSET 0x20
121#define RRAM_CTRL_CONTROL_REG_RESVAL 0x0u
122#define RRAM_CTRL_CONTROL_START_BIT 0
123#define RRAM_CTRL_CONTROL_OP_MASK 0x3u
124#define RRAM_CTRL_CONTROL_OP_OFFSET 4
125#define RRAM_CTRL_CONTROL_OP_FIELD \
126 ((bitfield_field32_t) { .mask = RRAM_CTRL_CONTROL_OP_MASK, .index = RRAM_CTRL_CONTROL_OP_OFFSET })
127#define RRAM_CTRL_CONTROL_OP_VALUE_READ 0x0
128#define RRAM_CTRL_CONTROL_OP_VALUE_WRITE 0x1
129#define RRAM_CTRL_CONTROL_OP_VALUE_REWRITE 0x2
130#define RRAM_CTRL_CONTROL_PARTITION_BIT 8
131#define RRAM_CTRL_CONTROL_NUM_MASK 0x3ffu
132#define RRAM_CTRL_CONTROL_NUM_OFFSET 16
133#define RRAM_CTRL_CONTROL_NUM_FIELD \
134 ((bitfield_field32_t) { .mask = RRAM_CTRL_CONTROL_NUM_MASK, .index = RRAM_CTRL_CONTROL_NUM_OFFSET })
135
136// Address for RRAM operation
137#define RRAM_CTRL_ADDR_REG_OFFSET 0x24
138#define RRAM_CTRL_ADDR_REG_RESVAL 0x0u
139#define RRAM_CTRL_ADDR_START_MASK 0x1fffffu
140#define RRAM_CTRL_ADDR_START_OFFSET 0
141#define RRAM_CTRL_ADDR_START_FIELD \
142 ((bitfield_field32_t) { .mask = RRAM_CTRL_ADDR_START_MASK, .index = RRAM_CTRL_ADDR_START_OFFSET })
143
144// Memory region registers configuration enable. (common parameters)
145#define RRAM_CTRL_REGION_CFG_REGWEN_REGION_FIELD_WIDTH 1
146#define RRAM_CTRL_REGION_CFG_REGWEN_MULTIREG_COUNT 8
147
148// Memory region registers configuration enable.
149#define RRAM_CTRL_REGION_CFG_REGWEN_0_REG_OFFSET 0x28
150#define RRAM_CTRL_REGION_CFG_REGWEN_0_REG_RESVAL 0x1u
151#define RRAM_CTRL_REGION_CFG_REGWEN_0_REGION_0_BIT 0
152#define RRAM_CTRL_REGION_CFG_REGWEN_0_REGION_0_VALUE_REGION_LOCKED 0x0
153#define RRAM_CTRL_REGION_CFG_REGWEN_0_REGION_0_VALUE_REGION_ENABLED 0x1
154
155// Memory region registers configuration enable.
156#define RRAM_CTRL_REGION_CFG_REGWEN_1_REG_OFFSET 0x2c
157#define RRAM_CTRL_REGION_CFG_REGWEN_1_REG_RESVAL 0x1u
158#define RRAM_CTRL_REGION_CFG_REGWEN_1_REGION_1_BIT 0
159
160// Memory region registers configuration enable.
161#define RRAM_CTRL_REGION_CFG_REGWEN_2_REG_OFFSET 0x30
162#define RRAM_CTRL_REGION_CFG_REGWEN_2_REG_RESVAL 0x1u
163#define RRAM_CTRL_REGION_CFG_REGWEN_2_REGION_2_BIT 0
164
165// Memory region registers configuration enable.
166#define RRAM_CTRL_REGION_CFG_REGWEN_3_REG_OFFSET 0x34
167#define RRAM_CTRL_REGION_CFG_REGWEN_3_REG_RESVAL 0x1u
168#define RRAM_CTRL_REGION_CFG_REGWEN_3_REGION_3_BIT 0
169
170// Memory region registers configuration enable.
171#define RRAM_CTRL_REGION_CFG_REGWEN_4_REG_OFFSET 0x38
172#define RRAM_CTRL_REGION_CFG_REGWEN_4_REG_RESVAL 0x1u
173#define RRAM_CTRL_REGION_CFG_REGWEN_4_REGION_4_BIT 0
174
175// Memory region registers configuration enable.
176#define RRAM_CTRL_REGION_CFG_REGWEN_5_REG_OFFSET 0x3c
177#define RRAM_CTRL_REGION_CFG_REGWEN_5_REG_RESVAL 0x1u
178#define RRAM_CTRL_REGION_CFG_REGWEN_5_REGION_5_BIT 0
179
180// Memory region registers configuration enable.
181#define RRAM_CTRL_REGION_CFG_REGWEN_6_REG_OFFSET 0x40
182#define RRAM_CTRL_REGION_CFG_REGWEN_6_REG_RESVAL 0x1u
183#define RRAM_CTRL_REGION_CFG_REGWEN_6_REGION_6_BIT 0
184
185// Memory region registers configuration enable.
186#define RRAM_CTRL_REGION_CFG_REGWEN_7_REG_OFFSET 0x44
187#define RRAM_CTRL_REGION_CFG_REGWEN_7_REG_RESVAL 0x1u
188#define RRAM_CTRL_REGION_CFG_REGWEN_7_REGION_7_BIT 0
189
190// Memory property configuration for data partition (common parameters)
191#define RRAM_CTRL_MP_REGION_CFG_EN_FIELD_WIDTH 4
192#define RRAM_CTRL_MP_REGION_CFG_RD_EN_FIELD_WIDTH 4
193#define RRAM_CTRL_MP_REGION_CFG_WR_EN_FIELD_WIDTH 4
194#define RRAM_CTRL_MP_REGION_CFG_SCRAMBLE_EN_FIELD_WIDTH 4
195#define RRAM_CTRL_MP_REGION_CFG_ECC_EN_FIELD_WIDTH 4
196#define RRAM_CTRL_MP_REGION_CFG_MULTIREG_COUNT 8
197
198// Memory property configuration for data partition
199#define RRAM_CTRL_MP_REGION_CFG_0_REG_OFFSET 0x48
200#define RRAM_CTRL_MP_REGION_CFG_0_REG_RESVAL 0x99999u
201#define RRAM_CTRL_MP_REGION_CFG_0_EN_0_MASK 0xfu
202#define RRAM_CTRL_MP_REGION_CFG_0_EN_0_OFFSET 0
203#define RRAM_CTRL_MP_REGION_CFG_0_EN_0_FIELD \
204 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_0_EN_0_MASK, .index = RRAM_CTRL_MP_REGION_CFG_0_EN_0_OFFSET })
205#define RRAM_CTRL_MP_REGION_CFG_0_RD_EN_0_MASK 0xfu
206#define RRAM_CTRL_MP_REGION_CFG_0_RD_EN_0_OFFSET 4
207#define RRAM_CTRL_MP_REGION_CFG_0_RD_EN_0_FIELD \
208 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_0_RD_EN_0_MASK, .index = RRAM_CTRL_MP_REGION_CFG_0_RD_EN_0_OFFSET })
209#define RRAM_CTRL_MP_REGION_CFG_0_WR_EN_0_MASK 0xfu
210#define RRAM_CTRL_MP_REGION_CFG_0_WR_EN_0_OFFSET 8
211#define RRAM_CTRL_MP_REGION_CFG_0_WR_EN_0_FIELD \
212 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_0_WR_EN_0_MASK, .index = RRAM_CTRL_MP_REGION_CFG_0_WR_EN_0_OFFSET })
213#define RRAM_CTRL_MP_REGION_CFG_0_SCRAMBLE_EN_0_MASK 0xfu
214#define RRAM_CTRL_MP_REGION_CFG_0_SCRAMBLE_EN_0_OFFSET 12
215#define RRAM_CTRL_MP_REGION_CFG_0_SCRAMBLE_EN_0_FIELD \
216 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_0_SCRAMBLE_EN_0_MASK, .index = RRAM_CTRL_MP_REGION_CFG_0_SCRAMBLE_EN_0_OFFSET })
217#define RRAM_CTRL_MP_REGION_CFG_0_ECC_EN_0_MASK 0xfu
218#define RRAM_CTRL_MP_REGION_CFG_0_ECC_EN_0_OFFSET 16
219#define RRAM_CTRL_MP_REGION_CFG_0_ECC_EN_0_FIELD \
220 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_0_ECC_EN_0_MASK, .index = RRAM_CTRL_MP_REGION_CFG_0_ECC_EN_0_OFFSET })
221
222// Memory property configuration for data partition
223#define RRAM_CTRL_MP_REGION_CFG_1_REG_OFFSET 0x4c
224#define RRAM_CTRL_MP_REGION_CFG_1_REG_RESVAL 0x99999u
225#define RRAM_CTRL_MP_REGION_CFG_1_EN_1_MASK 0xfu
226#define RRAM_CTRL_MP_REGION_CFG_1_EN_1_OFFSET 0
227#define RRAM_CTRL_MP_REGION_CFG_1_EN_1_FIELD \
228 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_1_EN_1_MASK, .index = RRAM_CTRL_MP_REGION_CFG_1_EN_1_OFFSET })
229#define RRAM_CTRL_MP_REGION_CFG_1_RD_EN_1_MASK 0xfu
230#define RRAM_CTRL_MP_REGION_CFG_1_RD_EN_1_OFFSET 4
231#define RRAM_CTRL_MP_REGION_CFG_1_RD_EN_1_FIELD \
232 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_1_RD_EN_1_MASK, .index = RRAM_CTRL_MP_REGION_CFG_1_RD_EN_1_OFFSET })
233#define RRAM_CTRL_MP_REGION_CFG_1_WR_EN_1_MASK 0xfu
234#define RRAM_CTRL_MP_REGION_CFG_1_WR_EN_1_OFFSET 8
235#define RRAM_CTRL_MP_REGION_CFG_1_WR_EN_1_FIELD \
236 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_1_WR_EN_1_MASK, .index = RRAM_CTRL_MP_REGION_CFG_1_WR_EN_1_OFFSET })
237#define RRAM_CTRL_MP_REGION_CFG_1_SCRAMBLE_EN_1_MASK 0xfu
238#define RRAM_CTRL_MP_REGION_CFG_1_SCRAMBLE_EN_1_OFFSET 12
239#define RRAM_CTRL_MP_REGION_CFG_1_SCRAMBLE_EN_1_FIELD \
240 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_1_SCRAMBLE_EN_1_MASK, .index = RRAM_CTRL_MP_REGION_CFG_1_SCRAMBLE_EN_1_OFFSET })
241#define RRAM_CTRL_MP_REGION_CFG_1_ECC_EN_1_MASK 0xfu
242#define RRAM_CTRL_MP_REGION_CFG_1_ECC_EN_1_OFFSET 16
243#define RRAM_CTRL_MP_REGION_CFG_1_ECC_EN_1_FIELD \
244 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_1_ECC_EN_1_MASK, .index = RRAM_CTRL_MP_REGION_CFG_1_ECC_EN_1_OFFSET })
245
246// Memory property configuration for data partition
247#define RRAM_CTRL_MP_REGION_CFG_2_REG_OFFSET 0x50
248#define RRAM_CTRL_MP_REGION_CFG_2_REG_RESVAL 0x99999u
249#define RRAM_CTRL_MP_REGION_CFG_2_EN_2_MASK 0xfu
250#define RRAM_CTRL_MP_REGION_CFG_2_EN_2_OFFSET 0
251#define RRAM_CTRL_MP_REGION_CFG_2_EN_2_FIELD \
252 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_2_EN_2_MASK, .index = RRAM_CTRL_MP_REGION_CFG_2_EN_2_OFFSET })
253#define RRAM_CTRL_MP_REGION_CFG_2_RD_EN_2_MASK 0xfu
254#define RRAM_CTRL_MP_REGION_CFG_2_RD_EN_2_OFFSET 4
255#define RRAM_CTRL_MP_REGION_CFG_2_RD_EN_2_FIELD \
256 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_2_RD_EN_2_MASK, .index = RRAM_CTRL_MP_REGION_CFG_2_RD_EN_2_OFFSET })
257#define RRAM_CTRL_MP_REGION_CFG_2_WR_EN_2_MASK 0xfu
258#define RRAM_CTRL_MP_REGION_CFG_2_WR_EN_2_OFFSET 8
259#define RRAM_CTRL_MP_REGION_CFG_2_WR_EN_2_FIELD \
260 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_2_WR_EN_2_MASK, .index = RRAM_CTRL_MP_REGION_CFG_2_WR_EN_2_OFFSET })
261#define RRAM_CTRL_MP_REGION_CFG_2_SCRAMBLE_EN_2_MASK 0xfu
262#define RRAM_CTRL_MP_REGION_CFG_2_SCRAMBLE_EN_2_OFFSET 12
263#define RRAM_CTRL_MP_REGION_CFG_2_SCRAMBLE_EN_2_FIELD \
264 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_2_SCRAMBLE_EN_2_MASK, .index = RRAM_CTRL_MP_REGION_CFG_2_SCRAMBLE_EN_2_OFFSET })
265#define RRAM_CTRL_MP_REGION_CFG_2_ECC_EN_2_MASK 0xfu
266#define RRAM_CTRL_MP_REGION_CFG_2_ECC_EN_2_OFFSET 16
267#define RRAM_CTRL_MP_REGION_CFG_2_ECC_EN_2_FIELD \
268 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_2_ECC_EN_2_MASK, .index = RRAM_CTRL_MP_REGION_CFG_2_ECC_EN_2_OFFSET })
269
270// Memory property configuration for data partition
271#define RRAM_CTRL_MP_REGION_CFG_3_REG_OFFSET 0x54
272#define RRAM_CTRL_MP_REGION_CFG_3_REG_RESVAL 0x99999u
273#define RRAM_CTRL_MP_REGION_CFG_3_EN_3_MASK 0xfu
274#define RRAM_CTRL_MP_REGION_CFG_3_EN_3_OFFSET 0
275#define RRAM_CTRL_MP_REGION_CFG_3_EN_3_FIELD \
276 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_3_EN_3_MASK, .index = RRAM_CTRL_MP_REGION_CFG_3_EN_3_OFFSET })
277#define RRAM_CTRL_MP_REGION_CFG_3_RD_EN_3_MASK 0xfu
278#define RRAM_CTRL_MP_REGION_CFG_3_RD_EN_3_OFFSET 4
279#define RRAM_CTRL_MP_REGION_CFG_3_RD_EN_3_FIELD \
280 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_3_RD_EN_3_MASK, .index = RRAM_CTRL_MP_REGION_CFG_3_RD_EN_3_OFFSET })
281#define RRAM_CTRL_MP_REGION_CFG_3_WR_EN_3_MASK 0xfu
282#define RRAM_CTRL_MP_REGION_CFG_3_WR_EN_3_OFFSET 8
283#define RRAM_CTRL_MP_REGION_CFG_3_WR_EN_3_FIELD \
284 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_3_WR_EN_3_MASK, .index = RRAM_CTRL_MP_REGION_CFG_3_WR_EN_3_OFFSET })
285#define RRAM_CTRL_MP_REGION_CFG_3_SCRAMBLE_EN_3_MASK 0xfu
286#define RRAM_CTRL_MP_REGION_CFG_3_SCRAMBLE_EN_3_OFFSET 12
287#define RRAM_CTRL_MP_REGION_CFG_3_SCRAMBLE_EN_3_FIELD \
288 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_3_SCRAMBLE_EN_3_MASK, .index = RRAM_CTRL_MP_REGION_CFG_3_SCRAMBLE_EN_3_OFFSET })
289#define RRAM_CTRL_MP_REGION_CFG_3_ECC_EN_3_MASK 0xfu
290#define RRAM_CTRL_MP_REGION_CFG_3_ECC_EN_3_OFFSET 16
291#define RRAM_CTRL_MP_REGION_CFG_3_ECC_EN_3_FIELD \
292 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_3_ECC_EN_3_MASK, .index = RRAM_CTRL_MP_REGION_CFG_3_ECC_EN_3_OFFSET })
293
294// Memory property configuration for data partition
295#define RRAM_CTRL_MP_REGION_CFG_4_REG_OFFSET 0x58
296#define RRAM_CTRL_MP_REGION_CFG_4_REG_RESVAL 0x99999u
297#define RRAM_CTRL_MP_REGION_CFG_4_EN_4_MASK 0xfu
298#define RRAM_CTRL_MP_REGION_CFG_4_EN_4_OFFSET 0
299#define RRAM_CTRL_MP_REGION_CFG_4_EN_4_FIELD \
300 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_4_EN_4_MASK, .index = RRAM_CTRL_MP_REGION_CFG_4_EN_4_OFFSET })
301#define RRAM_CTRL_MP_REGION_CFG_4_RD_EN_4_MASK 0xfu
302#define RRAM_CTRL_MP_REGION_CFG_4_RD_EN_4_OFFSET 4
303#define RRAM_CTRL_MP_REGION_CFG_4_RD_EN_4_FIELD \
304 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_4_RD_EN_4_MASK, .index = RRAM_CTRL_MP_REGION_CFG_4_RD_EN_4_OFFSET })
305#define RRAM_CTRL_MP_REGION_CFG_4_WR_EN_4_MASK 0xfu
306#define RRAM_CTRL_MP_REGION_CFG_4_WR_EN_4_OFFSET 8
307#define RRAM_CTRL_MP_REGION_CFG_4_WR_EN_4_FIELD \
308 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_4_WR_EN_4_MASK, .index = RRAM_CTRL_MP_REGION_CFG_4_WR_EN_4_OFFSET })
309#define RRAM_CTRL_MP_REGION_CFG_4_SCRAMBLE_EN_4_MASK 0xfu
310#define RRAM_CTRL_MP_REGION_CFG_4_SCRAMBLE_EN_4_OFFSET 12
311#define RRAM_CTRL_MP_REGION_CFG_4_SCRAMBLE_EN_4_FIELD \
312 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_4_SCRAMBLE_EN_4_MASK, .index = RRAM_CTRL_MP_REGION_CFG_4_SCRAMBLE_EN_4_OFFSET })
313#define RRAM_CTRL_MP_REGION_CFG_4_ECC_EN_4_MASK 0xfu
314#define RRAM_CTRL_MP_REGION_CFG_4_ECC_EN_4_OFFSET 16
315#define RRAM_CTRL_MP_REGION_CFG_4_ECC_EN_4_FIELD \
316 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_4_ECC_EN_4_MASK, .index = RRAM_CTRL_MP_REGION_CFG_4_ECC_EN_4_OFFSET })
317
318// Memory property configuration for data partition
319#define RRAM_CTRL_MP_REGION_CFG_5_REG_OFFSET 0x5c
320#define RRAM_CTRL_MP_REGION_CFG_5_REG_RESVAL 0x99999u
321#define RRAM_CTRL_MP_REGION_CFG_5_EN_5_MASK 0xfu
322#define RRAM_CTRL_MP_REGION_CFG_5_EN_5_OFFSET 0
323#define RRAM_CTRL_MP_REGION_CFG_5_EN_5_FIELD \
324 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_5_EN_5_MASK, .index = RRAM_CTRL_MP_REGION_CFG_5_EN_5_OFFSET })
325#define RRAM_CTRL_MP_REGION_CFG_5_RD_EN_5_MASK 0xfu
326#define RRAM_CTRL_MP_REGION_CFG_5_RD_EN_5_OFFSET 4
327#define RRAM_CTRL_MP_REGION_CFG_5_RD_EN_5_FIELD \
328 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_5_RD_EN_5_MASK, .index = RRAM_CTRL_MP_REGION_CFG_5_RD_EN_5_OFFSET })
329#define RRAM_CTRL_MP_REGION_CFG_5_WR_EN_5_MASK 0xfu
330#define RRAM_CTRL_MP_REGION_CFG_5_WR_EN_5_OFFSET 8
331#define RRAM_CTRL_MP_REGION_CFG_5_WR_EN_5_FIELD \
332 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_5_WR_EN_5_MASK, .index = RRAM_CTRL_MP_REGION_CFG_5_WR_EN_5_OFFSET })
333#define RRAM_CTRL_MP_REGION_CFG_5_SCRAMBLE_EN_5_MASK 0xfu
334#define RRAM_CTRL_MP_REGION_CFG_5_SCRAMBLE_EN_5_OFFSET 12
335#define RRAM_CTRL_MP_REGION_CFG_5_SCRAMBLE_EN_5_FIELD \
336 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_5_SCRAMBLE_EN_5_MASK, .index = RRAM_CTRL_MP_REGION_CFG_5_SCRAMBLE_EN_5_OFFSET })
337#define RRAM_CTRL_MP_REGION_CFG_5_ECC_EN_5_MASK 0xfu
338#define RRAM_CTRL_MP_REGION_CFG_5_ECC_EN_5_OFFSET 16
339#define RRAM_CTRL_MP_REGION_CFG_5_ECC_EN_5_FIELD \
340 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_5_ECC_EN_5_MASK, .index = RRAM_CTRL_MP_REGION_CFG_5_ECC_EN_5_OFFSET })
341
342// Memory property configuration for data partition
343#define RRAM_CTRL_MP_REGION_CFG_6_REG_OFFSET 0x60
344#define RRAM_CTRL_MP_REGION_CFG_6_REG_RESVAL 0x99999u
345#define RRAM_CTRL_MP_REGION_CFG_6_EN_6_MASK 0xfu
346#define RRAM_CTRL_MP_REGION_CFG_6_EN_6_OFFSET 0
347#define RRAM_CTRL_MP_REGION_CFG_6_EN_6_FIELD \
348 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_6_EN_6_MASK, .index = RRAM_CTRL_MP_REGION_CFG_6_EN_6_OFFSET })
349#define RRAM_CTRL_MP_REGION_CFG_6_RD_EN_6_MASK 0xfu
350#define RRAM_CTRL_MP_REGION_CFG_6_RD_EN_6_OFFSET 4
351#define RRAM_CTRL_MP_REGION_CFG_6_RD_EN_6_FIELD \
352 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_6_RD_EN_6_MASK, .index = RRAM_CTRL_MP_REGION_CFG_6_RD_EN_6_OFFSET })
353#define RRAM_CTRL_MP_REGION_CFG_6_WR_EN_6_MASK 0xfu
354#define RRAM_CTRL_MP_REGION_CFG_6_WR_EN_6_OFFSET 8
355#define RRAM_CTRL_MP_REGION_CFG_6_WR_EN_6_FIELD \
356 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_6_WR_EN_6_MASK, .index = RRAM_CTRL_MP_REGION_CFG_6_WR_EN_6_OFFSET })
357#define RRAM_CTRL_MP_REGION_CFG_6_SCRAMBLE_EN_6_MASK 0xfu
358#define RRAM_CTRL_MP_REGION_CFG_6_SCRAMBLE_EN_6_OFFSET 12
359#define RRAM_CTRL_MP_REGION_CFG_6_SCRAMBLE_EN_6_FIELD \
360 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_6_SCRAMBLE_EN_6_MASK, .index = RRAM_CTRL_MP_REGION_CFG_6_SCRAMBLE_EN_6_OFFSET })
361#define RRAM_CTRL_MP_REGION_CFG_6_ECC_EN_6_MASK 0xfu
362#define RRAM_CTRL_MP_REGION_CFG_6_ECC_EN_6_OFFSET 16
363#define RRAM_CTRL_MP_REGION_CFG_6_ECC_EN_6_FIELD \
364 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_6_ECC_EN_6_MASK, .index = RRAM_CTRL_MP_REGION_CFG_6_ECC_EN_6_OFFSET })
365
366// Memory property configuration for data partition
367#define RRAM_CTRL_MP_REGION_CFG_7_REG_OFFSET 0x64
368#define RRAM_CTRL_MP_REGION_CFG_7_REG_RESVAL 0x99999u
369#define RRAM_CTRL_MP_REGION_CFG_7_EN_7_MASK 0xfu
370#define RRAM_CTRL_MP_REGION_CFG_7_EN_7_OFFSET 0
371#define RRAM_CTRL_MP_REGION_CFG_7_EN_7_FIELD \
372 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_7_EN_7_MASK, .index = RRAM_CTRL_MP_REGION_CFG_7_EN_7_OFFSET })
373#define RRAM_CTRL_MP_REGION_CFG_7_RD_EN_7_MASK 0xfu
374#define RRAM_CTRL_MP_REGION_CFG_7_RD_EN_7_OFFSET 4
375#define RRAM_CTRL_MP_REGION_CFG_7_RD_EN_7_FIELD \
376 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_7_RD_EN_7_MASK, .index = RRAM_CTRL_MP_REGION_CFG_7_RD_EN_7_OFFSET })
377#define RRAM_CTRL_MP_REGION_CFG_7_WR_EN_7_MASK 0xfu
378#define RRAM_CTRL_MP_REGION_CFG_7_WR_EN_7_OFFSET 8
379#define RRAM_CTRL_MP_REGION_CFG_7_WR_EN_7_FIELD \
380 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_7_WR_EN_7_MASK, .index = RRAM_CTRL_MP_REGION_CFG_7_WR_EN_7_OFFSET })
381#define RRAM_CTRL_MP_REGION_CFG_7_SCRAMBLE_EN_7_MASK 0xfu
382#define RRAM_CTRL_MP_REGION_CFG_7_SCRAMBLE_EN_7_OFFSET 12
383#define RRAM_CTRL_MP_REGION_CFG_7_SCRAMBLE_EN_7_FIELD \
384 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_7_SCRAMBLE_EN_7_MASK, .index = RRAM_CTRL_MP_REGION_CFG_7_SCRAMBLE_EN_7_OFFSET })
385#define RRAM_CTRL_MP_REGION_CFG_7_ECC_EN_7_MASK 0xfu
386#define RRAM_CTRL_MP_REGION_CFG_7_ECC_EN_7_OFFSET 16
387#define RRAM_CTRL_MP_REGION_CFG_7_ECC_EN_7_FIELD \
388 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_CFG_7_ECC_EN_7_MASK, .index = RRAM_CTRL_MP_REGION_CFG_7_ECC_EN_7_OFFSET })
389
390// Memory base and size configuration for data partition (common parameters)
391#define RRAM_CTRL_MP_REGION_BASE_FIELD_WIDTH 12
392#define RRAM_CTRL_MP_REGION_SIZE_FIELD_WIDTH 12
393#define RRAM_CTRL_MP_REGION_MULTIREG_COUNT 8
394
395// Memory base and size configuration for data partition
396#define RRAM_CTRL_MP_REGION_0_REG_OFFSET 0x68
397#define RRAM_CTRL_MP_REGION_0_REG_RESVAL 0x0u
398#define RRAM_CTRL_MP_REGION_0_BASE_0_MASK 0xfffu
399#define RRAM_CTRL_MP_REGION_0_BASE_0_OFFSET 0
400#define RRAM_CTRL_MP_REGION_0_BASE_0_FIELD \
401 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_0_BASE_0_MASK, .index = RRAM_CTRL_MP_REGION_0_BASE_0_OFFSET })
402#define RRAM_CTRL_MP_REGION_0_SIZE_0_MASK 0xfffu
403#define RRAM_CTRL_MP_REGION_0_SIZE_0_OFFSET 12
404#define RRAM_CTRL_MP_REGION_0_SIZE_0_FIELD \
405 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_0_SIZE_0_MASK, .index = RRAM_CTRL_MP_REGION_0_SIZE_0_OFFSET })
406
407// Memory base and size configuration for data partition
408#define RRAM_CTRL_MP_REGION_1_REG_OFFSET 0x6c
409#define RRAM_CTRL_MP_REGION_1_REG_RESVAL 0x0u
410#define RRAM_CTRL_MP_REGION_1_BASE_1_MASK 0xfffu
411#define RRAM_CTRL_MP_REGION_1_BASE_1_OFFSET 0
412#define RRAM_CTRL_MP_REGION_1_BASE_1_FIELD \
413 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_1_BASE_1_MASK, .index = RRAM_CTRL_MP_REGION_1_BASE_1_OFFSET })
414#define RRAM_CTRL_MP_REGION_1_SIZE_1_MASK 0xfffu
415#define RRAM_CTRL_MP_REGION_1_SIZE_1_OFFSET 12
416#define RRAM_CTRL_MP_REGION_1_SIZE_1_FIELD \
417 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_1_SIZE_1_MASK, .index = RRAM_CTRL_MP_REGION_1_SIZE_1_OFFSET })
418
419// Memory base and size configuration for data partition
420#define RRAM_CTRL_MP_REGION_2_REG_OFFSET 0x70
421#define RRAM_CTRL_MP_REGION_2_REG_RESVAL 0x0u
422#define RRAM_CTRL_MP_REGION_2_BASE_2_MASK 0xfffu
423#define RRAM_CTRL_MP_REGION_2_BASE_2_OFFSET 0
424#define RRAM_CTRL_MP_REGION_2_BASE_2_FIELD \
425 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_2_BASE_2_MASK, .index = RRAM_CTRL_MP_REGION_2_BASE_2_OFFSET })
426#define RRAM_CTRL_MP_REGION_2_SIZE_2_MASK 0xfffu
427#define RRAM_CTRL_MP_REGION_2_SIZE_2_OFFSET 12
428#define RRAM_CTRL_MP_REGION_2_SIZE_2_FIELD \
429 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_2_SIZE_2_MASK, .index = RRAM_CTRL_MP_REGION_2_SIZE_2_OFFSET })
430
431// Memory base and size configuration for data partition
432#define RRAM_CTRL_MP_REGION_3_REG_OFFSET 0x74
433#define RRAM_CTRL_MP_REGION_3_REG_RESVAL 0x0u
434#define RRAM_CTRL_MP_REGION_3_BASE_3_MASK 0xfffu
435#define RRAM_CTRL_MP_REGION_3_BASE_3_OFFSET 0
436#define RRAM_CTRL_MP_REGION_3_BASE_3_FIELD \
437 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_3_BASE_3_MASK, .index = RRAM_CTRL_MP_REGION_3_BASE_3_OFFSET })
438#define RRAM_CTRL_MP_REGION_3_SIZE_3_MASK 0xfffu
439#define RRAM_CTRL_MP_REGION_3_SIZE_3_OFFSET 12
440#define RRAM_CTRL_MP_REGION_3_SIZE_3_FIELD \
441 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_3_SIZE_3_MASK, .index = RRAM_CTRL_MP_REGION_3_SIZE_3_OFFSET })
442
443// Memory base and size configuration for data partition
444#define RRAM_CTRL_MP_REGION_4_REG_OFFSET 0x78
445#define RRAM_CTRL_MP_REGION_4_REG_RESVAL 0x0u
446#define RRAM_CTRL_MP_REGION_4_BASE_4_MASK 0xfffu
447#define RRAM_CTRL_MP_REGION_4_BASE_4_OFFSET 0
448#define RRAM_CTRL_MP_REGION_4_BASE_4_FIELD \
449 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_4_BASE_4_MASK, .index = RRAM_CTRL_MP_REGION_4_BASE_4_OFFSET })
450#define RRAM_CTRL_MP_REGION_4_SIZE_4_MASK 0xfffu
451#define RRAM_CTRL_MP_REGION_4_SIZE_4_OFFSET 12
452#define RRAM_CTRL_MP_REGION_4_SIZE_4_FIELD \
453 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_4_SIZE_4_MASK, .index = RRAM_CTRL_MP_REGION_4_SIZE_4_OFFSET })
454
455// Memory base and size configuration for data partition
456#define RRAM_CTRL_MP_REGION_5_REG_OFFSET 0x7c
457#define RRAM_CTRL_MP_REGION_5_REG_RESVAL 0x0u
458#define RRAM_CTRL_MP_REGION_5_BASE_5_MASK 0xfffu
459#define RRAM_CTRL_MP_REGION_5_BASE_5_OFFSET 0
460#define RRAM_CTRL_MP_REGION_5_BASE_5_FIELD \
461 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_5_BASE_5_MASK, .index = RRAM_CTRL_MP_REGION_5_BASE_5_OFFSET })
462#define RRAM_CTRL_MP_REGION_5_SIZE_5_MASK 0xfffu
463#define RRAM_CTRL_MP_REGION_5_SIZE_5_OFFSET 12
464#define RRAM_CTRL_MP_REGION_5_SIZE_5_FIELD \
465 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_5_SIZE_5_MASK, .index = RRAM_CTRL_MP_REGION_5_SIZE_5_OFFSET })
466
467// Memory base and size configuration for data partition
468#define RRAM_CTRL_MP_REGION_6_REG_OFFSET 0x80
469#define RRAM_CTRL_MP_REGION_6_REG_RESVAL 0x0u
470#define RRAM_CTRL_MP_REGION_6_BASE_6_MASK 0xfffu
471#define RRAM_CTRL_MP_REGION_6_BASE_6_OFFSET 0
472#define RRAM_CTRL_MP_REGION_6_BASE_6_FIELD \
473 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_6_BASE_6_MASK, .index = RRAM_CTRL_MP_REGION_6_BASE_6_OFFSET })
474#define RRAM_CTRL_MP_REGION_6_SIZE_6_MASK 0xfffu
475#define RRAM_CTRL_MP_REGION_6_SIZE_6_OFFSET 12
476#define RRAM_CTRL_MP_REGION_6_SIZE_6_FIELD \
477 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_6_SIZE_6_MASK, .index = RRAM_CTRL_MP_REGION_6_SIZE_6_OFFSET })
478
479// Memory base and size configuration for data partition
480#define RRAM_CTRL_MP_REGION_7_REG_OFFSET 0x84
481#define RRAM_CTRL_MP_REGION_7_REG_RESVAL 0x0u
482#define RRAM_CTRL_MP_REGION_7_BASE_7_MASK 0xfffu
483#define RRAM_CTRL_MP_REGION_7_BASE_7_OFFSET 0
484#define RRAM_CTRL_MP_REGION_7_BASE_7_FIELD \
485 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_7_BASE_7_MASK, .index = RRAM_CTRL_MP_REGION_7_BASE_7_OFFSET })
486#define RRAM_CTRL_MP_REGION_7_SIZE_7_MASK 0xfffu
487#define RRAM_CTRL_MP_REGION_7_SIZE_7_OFFSET 12
488#define RRAM_CTRL_MP_REGION_7_SIZE_7_FIELD \
489 ((bitfield_field32_t) { .mask = RRAM_CTRL_MP_REGION_7_SIZE_7_MASK, .index = RRAM_CTRL_MP_REGION_7_SIZE_7_OFFSET })
490
491// Default region properties
492#define RRAM_CTRL_DEFAULT_REGION_REG_OFFSET 0x88
493#define RRAM_CTRL_DEFAULT_REGION_REG_RESVAL 0x9999u
494#define RRAM_CTRL_DEFAULT_REGION_RD_EN_MASK 0xfu
495#define RRAM_CTRL_DEFAULT_REGION_RD_EN_OFFSET 0
496#define RRAM_CTRL_DEFAULT_REGION_RD_EN_FIELD \
497 ((bitfield_field32_t) { .mask = RRAM_CTRL_DEFAULT_REGION_RD_EN_MASK, .index = RRAM_CTRL_DEFAULT_REGION_RD_EN_OFFSET })
498#define RRAM_CTRL_DEFAULT_REGION_WR_EN_MASK 0xfu
499#define RRAM_CTRL_DEFAULT_REGION_WR_EN_OFFSET 4
500#define RRAM_CTRL_DEFAULT_REGION_WR_EN_FIELD \
501 ((bitfield_field32_t) { .mask = RRAM_CTRL_DEFAULT_REGION_WR_EN_MASK, .index = RRAM_CTRL_DEFAULT_REGION_WR_EN_OFFSET })
502#define RRAM_CTRL_DEFAULT_REGION_SCRAMBLE_EN_MASK 0xfu
503#define RRAM_CTRL_DEFAULT_REGION_SCRAMBLE_EN_OFFSET 8
504#define RRAM_CTRL_DEFAULT_REGION_SCRAMBLE_EN_FIELD \
505 ((bitfield_field32_t) { .mask = RRAM_CTRL_DEFAULT_REGION_SCRAMBLE_EN_MASK, .index = RRAM_CTRL_DEFAULT_REGION_SCRAMBLE_EN_OFFSET })
506#define RRAM_CTRL_DEFAULT_REGION_ECC_EN_MASK 0xfu
507#define RRAM_CTRL_DEFAULT_REGION_ECC_EN_OFFSET 12
508#define RRAM_CTRL_DEFAULT_REGION_ECC_EN_FIELD \
509 ((bitfield_field32_t) { .mask = RRAM_CTRL_DEFAULT_REGION_ECC_EN_MASK, .index = RRAM_CTRL_DEFAULT_REGION_ECC_EN_OFFSET })
510
511// Memory region registers configuration enable. (common parameters)
512#define RRAM_CTRL_INFO_REGWEN_REGION_FIELD_WIDTH 1
513#define RRAM_CTRL_INFO_REGWEN_MULTIREG_COUNT 8
514
515// Memory region registers configuration enable.
516#define RRAM_CTRL_INFO_REGWEN_0_REG_OFFSET 0x8c
517#define RRAM_CTRL_INFO_REGWEN_0_REG_RESVAL 0x1u
518#define RRAM_CTRL_INFO_REGWEN_0_REGION_0_BIT 0
519#define RRAM_CTRL_INFO_REGWEN_0_REGION_0_VALUE_PAGE_LOCKED 0x0
520#define RRAM_CTRL_INFO_REGWEN_0_REGION_0_VALUE_PAGE_ENABLED 0x1
521
522// Memory region registers configuration enable.
523#define RRAM_CTRL_INFO_REGWEN_1_REG_OFFSET 0x90
524#define RRAM_CTRL_INFO_REGWEN_1_REG_RESVAL 0x1u
525#define RRAM_CTRL_INFO_REGWEN_1_REGION_1_BIT 0
526
527// Memory region registers configuration enable.
528#define RRAM_CTRL_INFO_REGWEN_2_REG_OFFSET 0x94
529#define RRAM_CTRL_INFO_REGWEN_2_REG_RESVAL 0x1u
530#define RRAM_CTRL_INFO_REGWEN_2_REGION_2_BIT 0
531
532// Memory region registers configuration enable.
533#define RRAM_CTRL_INFO_REGWEN_3_REG_OFFSET 0x98
534#define RRAM_CTRL_INFO_REGWEN_3_REG_RESVAL 0x1u
535#define RRAM_CTRL_INFO_REGWEN_3_REGION_3_BIT 0
536
537// Memory region registers configuration enable.
538#define RRAM_CTRL_INFO_REGWEN_4_REG_OFFSET 0x9c
539#define RRAM_CTRL_INFO_REGWEN_4_REG_RESVAL 0x1u
540#define RRAM_CTRL_INFO_REGWEN_4_REGION_4_BIT 0
541
542// Memory region registers configuration enable.
543#define RRAM_CTRL_INFO_REGWEN_5_REG_OFFSET 0xa0
544#define RRAM_CTRL_INFO_REGWEN_5_REG_RESVAL 0x1u
545#define RRAM_CTRL_INFO_REGWEN_5_REGION_5_BIT 0
546
547// Memory region registers configuration enable.
548#define RRAM_CTRL_INFO_REGWEN_6_REG_OFFSET 0xa4
549#define RRAM_CTRL_INFO_REGWEN_6_REG_RESVAL 0x1u
550#define RRAM_CTRL_INFO_REGWEN_6_REGION_6_BIT 0
551
552// Memory region registers configuration enable.
553#define RRAM_CTRL_INFO_REGWEN_7_REG_OFFSET 0xa8
554#define RRAM_CTRL_INFO_REGWEN_7_REG_RESVAL 0x1u
555#define RRAM_CTRL_INFO_REGWEN_7_REGION_7_BIT 0
556
557// Memory property configuration for info partition.
558#define RRAM_CTRL_INFO_PAGE_CFG_EN_FIELD_WIDTH 4
559#define RRAM_CTRL_INFO_PAGE_CFG_RD_EN_FIELD_WIDTH 4
560#define RRAM_CTRL_INFO_PAGE_CFG_WR_EN_FIELD_WIDTH 4
561#define RRAM_CTRL_INFO_PAGE_CFG_SCRAMBLE_EN_FIELD_WIDTH 4
562#define RRAM_CTRL_INFO_PAGE_CFG_ECC_EN_FIELD_WIDTH 4
563#define RRAM_CTRL_INFO_PAGE_CFG_MULTIREG_COUNT 8
564
565// Memory property configuration for info partition.
566#define RRAM_CTRL_INFO_PAGE_CFG_0_REG_OFFSET 0xac
567#define RRAM_CTRL_INFO_PAGE_CFG_0_REG_RESVAL 0x99999u
568#define RRAM_CTRL_INFO_PAGE_CFG_0_EN_0_MASK 0xfu
569#define RRAM_CTRL_INFO_PAGE_CFG_0_EN_0_OFFSET 0
570#define RRAM_CTRL_INFO_PAGE_CFG_0_EN_0_FIELD \
571 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_0_EN_0_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_0_EN_0_OFFSET })
572#define RRAM_CTRL_INFO_PAGE_CFG_0_RD_EN_0_MASK 0xfu
573#define RRAM_CTRL_INFO_PAGE_CFG_0_RD_EN_0_OFFSET 4
574#define RRAM_CTRL_INFO_PAGE_CFG_0_RD_EN_0_FIELD \
575 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_0_RD_EN_0_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_0_RD_EN_0_OFFSET })
576#define RRAM_CTRL_INFO_PAGE_CFG_0_WR_EN_0_MASK 0xfu
577#define RRAM_CTRL_INFO_PAGE_CFG_0_WR_EN_0_OFFSET 8
578#define RRAM_CTRL_INFO_PAGE_CFG_0_WR_EN_0_FIELD \
579 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_0_WR_EN_0_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_0_WR_EN_0_OFFSET })
580#define RRAM_CTRL_INFO_PAGE_CFG_0_SCRAMBLE_EN_0_MASK 0xfu
581#define RRAM_CTRL_INFO_PAGE_CFG_0_SCRAMBLE_EN_0_OFFSET 12
582#define RRAM_CTRL_INFO_PAGE_CFG_0_SCRAMBLE_EN_0_FIELD \
583 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_0_SCRAMBLE_EN_0_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_0_SCRAMBLE_EN_0_OFFSET })
584#define RRAM_CTRL_INFO_PAGE_CFG_0_ECC_EN_0_MASK 0xfu
585#define RRAM_CTRL_INFO_PAGE_CFG_0_ECC_EN_0_OFFSET 16
586#define RRAM_CTRL_INFO_PAGE_CFG_0_ECC_EN_0_FIELD \
587 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_0_ECC_EN_0_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_0_ECC_EN_0_OFFSET })
588
589// Memory property configuration for info partition.
590#define RRAM_CTRL_INFO_PAGE_CFG_1_REG_OFFSET 0xb0
591#define RRAM_CTRL_INFO_PAGE_CFG_1_REG_RESVAL 0x99999u
592#define RRAM_CTRL_INFO_PAGE_CFG_1_EN_1_MASK 0xfu
593#define RRAM_CTRL_INFO_PAGE_CFG_1_EN_1_OFFSET 0
594#define RRAM_CTRL_INFO_PAGE_CFG_1_EN_1_FIELD \
595 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_1_EN_1_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_1_EN_1_OFFSET })
596#define RRAM_CTRL_INFO_PAGE_CFG_1_RD_EN_1_MASK 0xfu
597#define RRAM_CTRL_INFO_PAGE_CFG_1_RD_EN_1_OFFSET 4
598#define RRAM_CTRL_INFO_PAGE_CFG_1_RD_EN_1_FIELD \
599 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_1_RD_EN_1_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_1_RD_EN_1_OFFSET })
600#define RRAM_CTRL_INFO_PAGE_CFG_1_WR_EN_1_MASK 0xfu
601#define RRAM_CTRL_INFO_PAGE_CFG_1_WR_EN_1_OFFSET 8
602#define RRAM_CTRL_INFO_PAGE_CFG_1_WR_EN_1_FIELD \
603 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_1_WR_EN_1_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_1_WR_EN_1_OFFSET })
604#define RRAM_CTRL_INFO_PAGE_CFG_1_SCRAMBLE_EN_1_MASK 0xfu
605#define RRAM_CTRL_INFO_PAGE_CFG_1_SCRAMBLE_EN_1_OFFSET 12
606#define RRAM_CTRL_INFO_PAGE_CFG_1_SCRAMBLE_EN_1_FIELD \
607 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_1_SCRAMBLE_EN_1_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_1_SCRAMBLE_EN_1_OFFSET })
608#define RRAM_CTRL_INFO_PAGE_CFG_1_ECC_EN_1_MASK 0xfu
609#define RRAM_CTRL_INFO_PAGE_CFG_1_ECC_EN_1_OFFSET 16
610#define RRAM_CTRL_INFO_PAGE_CFG_1_ECC_EN_1_FIELD \
611 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_1_ECC_EN_1_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_1_ECC_EN_1_OFFSET })
612
613// Memory property configuration for info partition.
614#define RRAM_CTRL_INFO_PAGE_CFG_2_REG_OFFSET 0xb4
615#define RRAM_CTRL_INFO_PAGE_CFG_2_REG_RESVAL 0x99999u
616#define RRAM_CTRL_INFO_PAGE_CFG_2_EN_2_MASK 0xfu
617#define RRAM_CTRL_INFO_PAGE_CFG_2_EN_2_OFFSET 0
618#define RRAM_CTRL_INFO_PAGE_CFG_2_EN_2_FIELD \
619 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_2_EN_2_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_2_EN_2_OFFSET })
620#define RRAM_CTRL_INFO_PAGE_CFG_2_RD_EN_2_MASK 0xfu
621#define RRAM_CTRL_INFO_PAGE_CFG_2_RD_EN_2_OFFSET 4
622#define RRAM_CTRL_INFO_PAGE_CFG_2_RD_EN_2_FIELD \
623 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_2_RD_EN_2_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_2_RD_EN_2_OFFSET })
624#define RRAM_CTRL_INFO_PAGE_CFG_2_WR_EN_2_MASK 0xfu
625#define RRAM_CTRL_INFO_PAGE_CFG_2_WR_EN_2_OFFSET 8
626#define RRAM_CTRL_INFO_PAGE_CFG_2_WR_EN_2_FIELD \
627 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_2_WR_EN_2_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_2_WR_EN_2_OFFSET })
628#define RRAM_CTRL_INFO_PAGE_CFG_2_SCRAMBLE_EN_2_MASK 0xfu
629#define RRAM_CTRL_INFO_PAGE_CFG_2_SCRAMBLE_EN_2_OFFSET 12
630#define RRAM_CTRL_INFO_PAGE_CFG_2_SCRAMBLE_EN_2_FIELD \
631 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_2_SCRAMBLE_EN_2_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_2_SCRAMBLE_EN_2_OFFSET })
632#define RRAM_CTRL_INFO_PAGE_CFG_2_ECC_EN_2_MASK 0xfu
633#define RRAM_CTRL_INFO_PAGE_CFG_2_ECC_EN_2_OFFSET 16
634#define RRAM_CTRL_INFO_PAGE_CFG_2_ECC_EN_2_FIELD \
635 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_2_ECC_EN_2_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_2_ECC_EN_2_OFFSET })
636
637// Memory property configuration for info partition.
638#define RRAM_CTRL_INFO_PAGE_CFG_3_REG_OFFSET 0xb8
639#define RRAM_CTRL_INFO_PAGE_CFG_3_REG_RESVAL 0x99999u
640#define RRAM_CTRL_INFO_PAGE_CFG_3_EN_3_MASK 0xfu
641#define RRAM_CTRL_INFO_PAGE_CFG_3_EN_3_OFFSET 0
642#define RRAM_CTRL_INFO_PAGE_CFG_3_EN_3_FIELD \
643 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_3_EN_3_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_3_EN_3_OFFSET })
644#define RRAM_CTRL_INFO_PAGE_CFG_3_RD_EN_3_MASK 0xfu
645#define RRAM_CTRL_INFO_PAGE_CFG_3_RD_EN_3_OFFSET 4
646#define RRAM_CTRL_INFO_PAGE_CFG_3_RD_EN_3_FIELD \
647 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_3_RD_EN_3_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_3_RD_EN_3_OFFSET })
648#define RRAM_CTRL_INFO_PAGE_CFG_3_WR_EN_3_MASK 0xfu
649#define RRAM_CTRL_INFO_PAGE_CFG_3_WR_EN_3_OFFSET 8
650#define RRAM_CTRL_INFO_PAGE_CFG_3_WR_EN_3_FIELD \
651 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_3_WR_EN_3_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_3_WR_EN_3_OFFSET })
652#define RRAM_CTRL_INFO_PAGE_CFG_3_SCRAMBLE_EN_3_MASK 0xfu
653#define RRAM_CTRL_INFO_PAGE_CFG_3_SCRAMBLE_EN_3_OFFSET 12
654#define RRAM_CTRL_INFO_PAGE_CFG_3_SCRAMBLE_EN_3_FIELD \
655 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_3_SCRAMBLE_EN_3_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_3_SCRAMBLE_EN_3_OFFSET })
656#define RRAM_CTRL_INFO_PAGE_CFG_3_ECC_EN_3_MASK 0xfu
657#define RRAM_CTRL_INFO_PAGE_CFG_3_ECC_EN_3_OFFSET 16
658#define RRAM_CTRL_INFO_PAGE_CFG_3_ECC_EN_3_FIELD \
659 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_3_ECC_EN_3_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_3_ECC_EN_3_OFFSET })
660
661// Memory property configuration for info partition.
662#define RRAM_CTRL_INFO_PAGE_CFG_4_REG_OFFSET 0xbc
663#define RRAM_CTRL_INFO_PAGE_CFG_4_REG_RESVAL 0x99999u
664#define RRAM_CTRL_INFO_PAGE_CFG_4_EN_4_MASK 0xfu
665#define RRAM_CTRL_INFO_PAGE_CFG_4_EN_4_OFFSET 0
666#define RRAM_CTRL_INFO_PAGE_CFG_4_EN_4_FIELD \
667 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_4_EN_4_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_4_EN_4_OFFSET })
668#define RRAM_CTRL_INFO_PAGE_CFG_4_RD_EN_4_MASK 0xfu
669#define RRAM_CTRL_INFO_PAGE_CFG_4_RD_EN_4_OFFSET 4
670#define RRAM_CTRL_INFO_PAGE_CFG_4_RD_EN_4_FIELD \
671 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_4_RD_EN_4_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_4_RD_EN_4_OFFSET })
672#define RRAM_CTRL_INFO_PAGE_CFG_4_WR_EN_4_MASK 0xfu
673#define RRAM_CTRL_INFO_PAGE_CFG_4_WR_EN_4_OFFSET 8
674#define RRAM_CTRL_INFO_PAGE_CFG_4_WR_EN_4_FIELD \
675 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_4_WR_EN_4_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_4_WR_EN_4_OFFSET })
676#define RRAM_CTRL_INFO_PAGE_CFG_4_SCRAMBLE_EN_4_MASK 0xfu
677#define RRAM_CTRL_INFO_PAGE_CFG_4_SCRAMBLE_EN_4_OFFSET 12
678#define RRAM_CTRL_INFO_PAGE_CFG_4_SCRAMBLE_EN_4_FIELD \
679 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_4_SCRAMBLE_EN_4_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_4_SCRAMBLE_EN_4_OFFSET })
680#define RRAM_CTRL_INFO_PAGE_CFG_4_ECC_EN_4_MASK 0xfu
681#define RRAM_CTRL_INFO_PAGE_CFG_4_ECC_EN_4_OFFSET 16
682#define RRAM_CTRL_INFO_PAGE_CFG_4_ECC_EN_4_FIELD \
683 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_4_ECC_EN_4_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_4_ECC_EN_4_OFFSET })
684
685// Memory property configuration for info partition.
686#define RRAM_CTRL_INFO_PAGE_CFG_5_REG_OFFSET 0xc0
687#define RRAM_CTRL_INFO_PAGE_CFG_5_REG_RESVAL 0x99999u
688#define RRAM_CTRL_INFO_PAGE_CFG_5_EN_5_MASK 0xfu
689#define RRAM_CTRL_INFO_PAGE_CFG_5_EN_5_OFFSET 0
690#define RRAM_CTRL_INFO_PAGE_CFG_5_EN_5_FIELD \
691 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_5_EN_5_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_5_EN_5_OFFSET })
692#define RRAM_CTRL_INFO_PAGE_CFG_5_RD_EN_5_MASK 0xfu
693#define RRAM_CTRL_INFO_PAGE_CFG_5_RD_EN_5_OFFSET 4
694#define RRAM_CTRL_INFO_PAGE_CFG_5_RD_EN_5_FIELD \
695 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_5_RD_EN_5_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_5_RD_EN_5_OFFSET })
696#define RRAM_CTRL_INFO_PAGE_CFG_5_WR_EN_5_MASK 0xfu
697#define RRAM_CTRL_INFO_PAGE_CFG_5_WR_EN_5_OFFSET 8
698#define RRAM_CTRL_INFO_PAGE_CFG_5_WR_EN_5_FIELD \
699 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_5_WR_EN_5_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_5_WR_EN_5_OFFSET })
700#define RRAM_CTRL_INFO_PAGE_CFG_5_SCRAMBLE_EN_5_MASK 0xfu
701#define RRAM_CTRL_INFO_PAGE_CFG_5_SCRAMBLE_EN_5_OFFSET 12
702#define RRAM_CTRL_INFO_PAGE_CFG_5_SCRAMBLE_EN_5_FIELD \
703 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_5_SCRAMBLE_EN_5_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_5_SCRAMBLE_EN_5_OFFSET })
704#define RRAM_CTRL_INFO_PAGE_CFG_5_ECC_EN_5_MASK 0xfu
705#define RRAM_CTRL_INFO_PAGE_CFG_5_ECC_EN_5_OFFSET 16
706#define RRAM_CTRL_INFO_PAGE_CFG_5_ECC_EN_5_FIELD \
707 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_5_ECC_EN_5_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_5_ECC_EN_5_OFFSET })
708
709// Memory property configuration for info partition.
710#define RRAM_CTRL_INFO_PAGE_CFG_6_REG_OFFSET 0xc4
711#define RRAM_CTRL_INFO_PAGE_CFG_6_REG_RESVAL 0x99999u
712#define RRAM_CTRL_INFO_PAGE_CFG_6_EN_6_MASK 0xfu
713#define RRAM_CTRL_INFO_PAGE_CFG_6_EN_6_OFFSET 0
714#define RRAM_CTRL_INFO_PAGE_CFG_6_EN_6_FIELD \
715 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_6_EN_6_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_6_EN_6_OFFSET })
716#define RRAM_CTRL_INFO_PAGE_CFG_6_RD_EN_6_MASK 0xfu
717#define RRAM_CTRL_INFO_PAGE_CFG_6_RD_EN_6_OFFSET 4
718#define RRAM_CTRL_INFO_PAGE_CFG_6_RD_EN_6_FIELD \
719 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_6_RD_EN_6_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_6_RD_EN_6_OFFSET })
720#define RRAM_CTRL_INFO_PAGE_CFG_6_WR_EN_6_MASK 0xfu
721#define RRAM_CTRL_INFO_PAGE_CFG_6_WR_EN_6_OFFSET 8
722#define RRAM_CTRL_INFO_PAGE_CFG_6_WR_EN_6_FIELD \
723 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_6_WR_EN_6_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_6_WR_EN_6_OFFSET })
724#define RRAM_CTRL_INFO_PAGE_CFG_6_SCRAMBLE_EN_6_MASK 0xfu
725#define RRAM_CTRL_INFO_PAGE_CFG_6_SCRAMBLE_EN_6_OFFSET 12
726#define RRAM_CTRL_INFO_PAGE_CFG_6_SCRAMBLE_EN_6_FIELD \
727 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_6_SCRAMBLE_EN_6_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_6_SCRAMBLE_EN_6_OFFSET })
728#define RRAM_CTRL_INFO_PAGE_CFG_6_ECC_EN_6_MASK 0xfu
729#define RRAM_CTRL_INFO_PAGE_CFG_6_ECC_EN_6_OFFSET 16
730#define RRAM_CTRL_INFO_PAGE_CFG_6_ECC_EN_6_FIELD \
731 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_6_ECC_EN_6_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_6_ECC_EN_6_OFFSET })
732
733// Memory property configuration for info partition.
734#define RRAM_CTRL_INFO_PAGE_CFG_7_REG_OFFSET 0xc8
735#define RRAM_CTRL_INFO_PAGE_CFG_7_REG_RESVAL 0x99999u
736#define RRAM_CTRL_INFO_PAGE_CFG_7_EN_7_MASK 0xfu
737#define RRAM_CTRL_INFO_PAGE_CFG_7_EN_7_OFFSET 0
738#define RRAM_CTRL_INFO_PAGE_CFG_7_EN_7_FIELD \
739 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_7_EN_7_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_7_EN_7_OFFSET })
740#define RRAM_CTRL_INFO_PAGE_CFG_7_RD_EN_7_MASK 0xfu
741#define RRAM_CTRL_INFO_PAGE_CFG_7_RD_EN_7_OFFSET 4
742#define RRAM_CTRL_INFO_PAGE_CFG_7_RD_EN_7_FIELD \
743 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_7_RD_EN_7_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_7_RD_EN_7_OFFSET })
744#define RRAM_CTRL_INFO_PAGE_CFG_7_WR_EN_7_MASK 0xfu
745#define RRAM_CTRL_INFO_PAGE_CFG_7_WR_EN_7_OFFSET 8
746#define RRAM_CTRL_INFO_PAGE_CFG_7_WR_EN_7_FIELD \
747 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_7_WR_EN_7_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_7_WR_EN_7_OFFSET })
748#define RRAM_CTRL_INFO_PAGE_CFG_7_SCRAMBLE_EN_7_MASK 0xfu
749#define RRAM_CTRL_INFO_PAGE_CFG_7_SCRAMBLE_EN_7_OFFSET 12
750#define RRAM_CTRL_INFO_PAGE_CFG_7_SCRAMBLE_EN_7_FIELD \
751 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_7_SCRAMBLE_EN_7_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_7_SCRAMBLE_EN_7_OFFSET })
752#define RRAM_CTRL_INFO_PAGE_CFG_7_ECC_EN_7_MASK 0xfu
753#define RRAM_CTRL_INFO_PAGE_CFG_7_ECC_EN_7_OFFSET 16
754#define RRAM_CTRL_INFO_PAGE_CFG_7_ECC_EN_7_FIELD \
755 ((bitfield_field32_t) { .mask = RRAM_CTRL_INFO_PAGE_CFG_7_ECC_EN_7_MASK, .index = RRAM_CTRL_INFO_PAGE_CFG_7_ECC_EN_7_OFFSET })
756
757// HW interface info configuration rule overrides
758#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_REG_OFFSET 0xcc
759#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_REG_RESVAL 0x99u
760#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_SCRAMBLE_DIS_MASK 0xfu
761#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_SCRAMBLE_DIS_OFFSET 0
762#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_SCRAMBLE_DIS_FIELD \
763 ((bitfield_field32_t) { .mask = RRAM_CTRL_HW_INFO_CFG_OVERRIDE_SCRAMBLE_DIS_MASK, .index = RRAM_CTRL_HW_INFO_CFG_OVERRIDE_SCRAMBLE_DIS_OFFSET })
764#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_ECC_DIS_MASK 0xfu
765#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_ECC_DIS_OFFSET 4
766#define RRAM_CTRL_HW_INFO_CFG_OVERRIDE_ECC_DIS_FIELD \
767 ((bitfield_field32_t) { .mask = RRAM_CTRL_HW_INFO_CFG_OVERRIDE_ECC_DIS_MASK, .index = RRAM_CTRL_HW_INFO_CFG_OVERRIDE_ECC_DIS_OFFSET })
768
769// RRAM Operation Status
770#define RRAM_CTRL_OP_STATUS_REG_OFFSET 0xd0
771#define RRAM_CTRL_OP_STATUS_REG_RESVAL 0x0u
772#define RRAM_CTRL_OP_STATUS_DONE_BIT 0
773#define RRAM_CTRL_OP_STATUS_ERR_BIT 1
774
775// RRAM Controller Status
776#define RRAM_CTRL_STATUS_REG_OFFSET 0xd4
777#define RRAM_CTRL_STATUS_REG_RESVAL 0xau
778#define RRAM_CTRL_STATUS_RD_FULL_BIT 0
779#define RRAM_CTRL_STATUS_RD_EMPTY_BIT 1
780#define RRAM_CTRL_STATUS_WR_FULL_BIT 2
781#define RRAM_CTRL_STATUS_WR_EMPTY_BIT 3
782#define RRAM_CTRL_STATUS_INIT_DONE_BIT 4
783#define RRAM_CTRL_STATUS_KEYS_VALID_BIT 5
784
785// RRAM error code register.
786#define RRAM_CTRL_ERR_CODE_REG_OFFSET 0xd8
787#define RRAM_CTRL_ERR_CODE_REG_RESVAL 0x0u
788#define RRAM_CTRL_ERR_CODE_OP_ERR_BIT 0
789#define RRAM_CTRL_ERR_CODE_MP_ERR_BIT 1
790#define RRAM_CTRL_ERR_CODE_RD_ERR_BIT 2
791#define RRAM_CTRL_ERR_CODE_WR_ERR_BIT 3
792
793// This register tabulates standard fault status of the RRAM.
794#define RRAM_CTRL_STD_FAULT_STATUS_REG_OFFSET 0xdc
795#define RRAM_CTRL_STD_FAULT_STATUS_REG_RESVAL 0x0u
796#define RRAM_CTRL_STD_FAULT_STATUS_REG_INTG_ERR_BIT 0
797#define RRAM_CTRL_STD_FAULT_STATUS_LCMGR_ERR_BIT 1
798#define RRAM_CTRL_STD_FAULT_STATUS_LCMGR_INTG_ERR_BIT 2
799#define RRAM_CTRL_STD_FAULT_STATUS_OTP_ERR_BIT 3
800#define RRAM_CTRL_STD_FAULT_STATUS_OTP_INTG_ERR_BIT 4
801#define RRAM_CTRL_STD_FAULT_STATUS_PHY_WR_INTG_ERR_BIT 5
802#define RRAM_CTRL_STD_FAULT_STATUS_PHY_FIFO_ERR_BIT 6
803#define RRAM_CTRL_STD_FAULT_STATUS_PHY_FSM_ERR_BIT 7
804#define RRAM_CTRL_STD_FAULT_STATUS_PHY_CNT_ERR_BIT 8
805#define RRAM_CTRL_STD_FAULT_STATUS_PHY_ARB_ERR_BIT 9
806#define RRAM_CTRL_STD_FAULT_STATUS_CTRL_FSM_ERR_BIT 10
807#define RRAM_CTRL_STD_FAULT_STATUS_CTRL_CNT_ERR_BIT 11
808#define RRAM_CTRL_STD_FAULT_STATUS_CTRL_FIFO_ERR_BIT 12
809
810// This register tabulates customized fault status of the RRAM.
811#define RRAM_CTRL_FAULT_STATUS_REG_OFFSET 0xe0
812#define RRAM_CTRL_FAULT_STATUS_REG_RESVAL 0x0u
813#define RRAM_CTRL_FAULT_STATUS_LCMGR_OP_ERR_BIT 0
814#define RRAM_CTRL_FAULT_STATUS_LCMGR_MP_ERR_BIT 1
815#define RRAM_CTRL_FAULT_STATUS_LCMGR_RD_ERR_BIT 2
816#define RRAM_CTRL_FAULT_STATUS_LCMGR_WR_ERR_BIT 3
817#define RRAM_CTRL_FAULT_STATUS_OTP_OP_ERR_BIT 4
818#define RRAM_CTRL_FAULT_STATUS_OTP_MP_ERR_BIT 5
819#define RRAM_CTRL_FAULT_STATUS_OTP_RD_ERR_BIT 6
820#define RRAM_CTRL_FAULT_STATUS_OTP_WR_ERR_BIT 7
821#define RRAM_CTRL_FAULT_STATUS_SEED_ERR_BIT 8
822#define RRAM_CTRL_FAULT_STATUS_PHY_RELBL_ERR_BIT 9
823#define RRAM_CTRL_FAULT_STATUS_PHY_RD_INTG_ERR_BIT 10
824#define RRAM_CTRL_FAULT_STATUS_PHY_RD_CTRL_ERR_BIT 11
825#define RRAM_CTRL_FAULT_STATUS_SPURIOUS_DONE_BIT 12
826#define RRAM_CTRL_FAULT_STATUS_HOST_GNT_ERR_BIT 13
827
828// Synchronous error address
829#define RRAM_CTRL_ERR_ADDR_REG_OFFSET 0xe4
830#define RRAM_CTRL_ERR_ADDR_REG_RESVAL 0x0u
831#define RRAM_CTRL_ERR_ADDR_ERR_ADDR_MASK 0x1fffffu
832#define RRAM_CTRL_ERR_ADDR_ERR_ADDR_OFFSET 0
833#define RRAM_CTRL_ERR_ADDR_ERR_ADDR_FIELD \
834 ((bitfield_field32_t) { .mask = RRAM_CTRL_ERR_ADDR_ERR_ADDR_MASK, .index = RRAM_CTRL_ERR_ADDR_ERR_ADDR_OFFSET })
835
836// Count of correctable ECC errors
837#define RRAM_CTRL_CORR_ERR_CNT_REG_OFFSET 0xe8
838#define RRAM_CTRL_CORR_ERR_CNT_REG_RESVAL 0x0u
839#define RRAM_CTRL_CORR_ERR_CNT_VAL_MASK 0xffu
840#define RRAM_CTRL_CORR_ERR_CNT_VAL_OFFSET 0
841#define RRAM_CTRL_CORR_ERR_CNT_VAL_FIELD \
842 ((bitfield_field32_t) { .mask = RRAM_CTRL_CORR_ERR_CNT_VAL_MASK, .index = RRAM_CTRL_CORR_ERR_CNT_VAL_OFFSET })
843
844// Last address that was successfully corrected
845#define RRAM_CTRL_CORR_ERR_LOC_REG_OFFSET 0xec
846#define RRAM_CTRL_CORR_ERR_LOC_REG_RESVAL 0x0u
847#define RRAM_CTRL_CORR_ERR_LOC_ADDR_MASK 0x1fffffu
848#define RRAM_CTRL_CORR_ERR_LOC_ADDR_OFFSET 0
849#define RRAM_CTRL_CORR_ERR_LOC_ADDR_FIELD \
850 ((bitfield_field32_t) { .mask = RRAM_CTRL_CORR_ERR_LOC_ADDR_MASK, .index = RRAM_CTRL_CORR_ERR_LOC_ADDR_OFFSET })
851#define RRAM_CTRL_CORR_ERR_LOC_PART_BIT 24
852
853// RRAM Phy Status
854#define RRAM_CTRL_PHY_STATUS_REG_OFFSET 0xf0
855#define RRAM_CTRL_PHY_STATUS_REG_RESVAL 0x0u
856#define RRAM_CTRL_PHY_STATUS_WR_BUSY_BIT 0
857#define RRAM_CTRL_PHY_STATUS_INIT_DONE_BIT 1
858
859// RRAM Controller Scratch
860#define RRAM_CTRL_SCRATCH_REG_OFFSET 0xf4
861#define RRAM_CTRL_SCRATCH_REG_RESVAL 0x0u
862
863// Programmable depth where FIFOs should generate interrupts
864#define RRAM_CTRL_FIFO_LVL_REG_OFFSET 0xf8
865#define RRAM_CTRL_FIFO_LVL_REG_RESVAL 0xf0fu
866#define RRAM_CTRL_FIFO_LVL_WR_MASK 0x1fu
867#define RRAM_CTRL_FIFO_LVL_WR_OFFSET 0
868#define RRAM_CTRL_FIFO_LVL_WR_FIELD \
869 ((bitfield_field32_t) { .mask = RRAM_CTRL_FIFO_LVL_WR_MASK, .index = RRAM_CTRL_FIFO_LVL_WR_OFFSET })
870#define RRAM_CTRL_FIFO_LVL_RD_MASK 0x1fu
871#define RRAM_CTRL_FIFO_LVL_RD_OFFSET 8
872#define RRAM_CTRL_FIFO_LVL_RD_FIELD \
873 ((bitfield_field32_t) { .mask = RRAM_CTRL_FIFO_LVL_RD_MASK, .index = RRAM_CTRL_FIFO_LVL_RD_OFFSET })
874
875// Clears RRAM controller FIFOs
876#define RRAM_CTRL_FIFO_CLR_REG_OFFSET 0xfc
877#define RRAM_CTRL_FIFO_CLR_REG_RESVAL 0x0u
878#define RRAM_CTRL_FIFO_CLR_WR_BIT 0
879#define RRAM_CTRL_FIFO_CLR_RD_BIT 1
880
881// Current write and read fifo level
882#define RRAM_CTRL_CURR_FIFO_LVL_REG_OFFSET 0x100
883#define RRAM_CTRL_CURR_FIFO_LVL_REG_RESVAL 0x0u
884#define RRAM_CTRL_CURR_FIFO_LVL_WR_MASK 0x1fu
885#define RRAM_CTRL_CURR_FIFO_LVL_WR_OFFSET 0
886#define RRAM_CTRL_CURR_FIFO_LVL_WR_FIELD \
887 ((bitfield_field32_t) { .mask = RRAM_CTRL_CURR_FIFO_LVL_WR_MASK, .index = RRAM_CTRL_CURR_FIFO_LVL_WR_OFFSET })
888#define RRAM_CTRL_CURR_FIFO_LVL_RD_MASK 0x1fu
889#define RRAM_CTRL_CURR_FIFO_LVL_RD_OFFSET 8
890#define RRAM_CTRL_CURR_FIFO_LVL_RD_FIELD \
891 ((bitfield_field32_t) { .mask = RRAM_CTRL_CURR_FIFO_LVL_RD_MASK, .index = RRAM_CTRL_CURR_FIFO_LVL_RD_OFFSET })
892
893// Memory area: RRAM write FIFO.
894#define RRAM_CTRL_WR_FIFO_REG_OFFSET 0x104
895#define RRAM_CTRL_WR_FIFO_SIZE_WORDS 1
896#define RRAM_CTRL_WR_FIFO_SIZE_BYTES 4
897// Memory area: RRAM read FIFO.
898#define RRAM_CTRL_RD_FIFO_REG_OFFSET 0x108
899#define RRAM_CTRL_RD_FIFO_SIZE_WORDS 1
900#define RRAM_CTRL_RD_FIFO_SIZE_BYTES 4
901#ifdef __cplusplus
902} // extern "C"
903#endif
904#endif // _RRAM_CTRL_REG_DEFS_
905// End generated register defines for rram_ctrl