Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / model / pcie / csr / csr.hpp
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: csr.hpp
4// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
5// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
6//
7// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8//
9// This program is free software; you can redistribute it and/or modify
10// it under the terms of the GNU General Public License as published by
11// the Free Software Foundation; version 2 of the License.
12//
13// This program is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17//
18// You should have received a copy of the GNU General Public License
19// along with this program; if not, write to the Free Software
20// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21//
22// For the avoidance of doubt, and except that if any non-GPL license
23// choice is available it will apply instead, Sun elects to use only
24// the General Public License version 2 (GPLv2) at this time for any
25// software where a choice of GPL license versions is made
26// available with the language indicating that GPLv2 or any later version
27// may be used, or where a choice of which version of the GPL is applied is
28// otherwise unspecified.
29//
30// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
31// CA 95054 USA or visit www.sun.com if you need additional information or
32// have any questions.
33//
34// ========== Copyright Header End ============================================
35
36#ifndef INC_csr_hpp__
37#define INC_csr_hpp__
38
39#include <systemc.h>
40
41#include "pcie_common/config.hpp"
42
43#include "pcie_common/csr_if.hpp"
44#include "pcie_common/peu_csr_defines.hpp"
45#include "pcie_common/peu_defines.hpp"
46#include "csr_base_if.hpp"
47
48#include <map>
49#include <list>
50#define MAX_NOTIFY_EVENTS 50
51
52namespace pcie {
53
54 typedef sc_event* sc_event_handle;
55
56 /// CSR Data Element
57 template <typename DATA>
58 class csr_data {
59 public:
60 DATA val;
61 sc_event_handle events[MAX_NOTIFY_EVENTS];
62 uint32 num_events;
63
64 csr_data() : val(0), num_events(0) {};
65 };
66
67 typedef enum {READ_ONLY, READ_WRITE, WRITE1_SET, WRITE1_CLEAR} intf_type_t;
68 enum {POR_L, RST_L};
69
70 template <typename DATA>
71 class csr_data_intf {
72 public:
73 csr_data<DATA> *data;
74 DATA rd_mask;
75 DATA wr_mask;
76 DATA clr_mask;
77 DATA set_mask;
78 DATA toggle_mask;
79 DATA por_val;
80 intf_type_t intf_type;
81 bool sw_reset_val_hold;
82 //All error and log registers should have this set to true
83
84 csr_data_intf () {
85 data = NULL;
86 sw_reset_val_hold=true;
87 intf_type = READ_WRITE;
88 }
89
90 /**
91 * This method resets the value of the CSR entry based on the type of the reset
92 * and warm reset behavior specification
93 */
94 DATA reset_data(uint8 rst_type){
95 if(rst_type==POR_L || (rst_type==RST_L && !sw_reset_val_hold)) {
96 data->val = por_val;
97 for (uint32 i = 0; i < data->num_events; i++) {
98 notify (*(data->events[i]));
99 }
100 }
101 return data->val;
102 }
103 };
104
105
106 template < typename ADDR, typename DATA>
107 class csr : public sc_module,
108 public virtual csr_base_if <ADDR, DATA>
109 {
110 public:
111 typedef tlm_transport_if <csr_req < ADDR, DATA > ,
112 csr_rsp < DATA > > if_type;
113 csr(sc_module_name module_name, sc_event *parent_global_event, uint8 *parent_global_event_type, int N = 10) :
114 sc_module (module_name),
115 target_port("csr_target_port")
116 {
117 target_port(*this);
118 this->parent_global_event = parent_global_event;
119 this->parent_global_event_type = parent_global_event_type;
120 SC_THREAD(reset_handler);
121 rst_type=POR_L;
122 }
123
124 SC_HAS_PROCESS(csr);
125
126 /**
127 * This method checks if the specified CSR address is present in the CSR database.
128 */
129 bool is_mapped (const ADDR reg_addr) {
130 if (csr_db[reg_addr] == NULL) {
131 return false;
132 }
133 return true;
134 }
135
136 /**
137 * This method returns the data stored at the requested address.
138 */
139 DATA read_csr (const ADDR reg_addr) {
140 if (csr_db[reg_addr] == NULL) {
141 LOG_ERROR << "Read_CSR address not mapped " << reg_addr;
142 return DATA(0);
143 }
144 DATA rd_data = csr_db[reg_addr]->data->val & csr_db[reg_addr]->rd_mask;
145 return rd_data;
146 }
147
148 /**
149 * This method updates the value at the specified address, based on the type of interface
150 * for that CSR data element.
151 */
152 DATA write_csr(const ADDR reg_addr, const DATA wr_val) {
153 if (csr_db[reg_addr] == NULL) {
154 LOG_ERROR << "WRITE_CSR address not mapped " << reg_addr;
155 return DATA(0);
156 }
157 if(POR_RESET){
158 return csr_db[reg_addr]->data->val;
159 }
160 DATA new_val;
161 new_val = wr_val & csr_db[reg_addr]->rd_mask;
162 if (csr_db[reg_addr]->intf_type == WRITE1_CLEAR) {
163 LOG_DEBUG << "write_csr for a WRITE1_CLEAR type intf, addr: " << reg_addr ;
164 LOG_DEBUG << " new_val: " << new_val << " data->val: " << csr_db[reg_addr]->data->val << " clr_mask: " << csr_db[reg_addr]->clr_mask;
165 new_val = new_val & csr_db[reg_addr]->clr_mask;
166 new_val = new_val & csr_db[reg_addr]->data->val;
167 new_val ^= csr_db[reg_addr]->data->val;
168 csr_db[reg_addr]->data->val = new_val;
169 } else if (csr_db[reg_addr]->intf_type == WRITE1_SET) {
170 LOG_DEBUG << "write_csr for a WRITE1_SET type intf, addr: " << reg_addr ;
171 LOG_DEBUG << " new_val: " << new_val << " data->val: " << csr_db[reg_addr]->data->val << " set_mask: " << csr_db[reg_addr]->set_mask;
172 new_val = new_val & csr_db[reg_addr]->set_mask;
173 new_val |= csr_db[reg_addr]->data->val;
174 csr_db[reg_addr]->data->val = new_val;
175 } else {
176 LOG_DEBUG << "write_csr for a READ_WRITE type intf, addr: " << reg_addr ;
177 LOG_DEBUG << " new_val: " << new_val << " data->val: " << csr_db[reg_addr]->data->val << " clr_mask: " << csr_db[reg_addr]->clr_mask;
178 LOG_DEBUG << " (csr_db[reg_addr]->clr_mask & new_val): " << (csr_db[reg_addr]->clr_mask & new_val) ;
179 csr_db[reg_addr]->data->val = (((csr_db[reg_addr]->data->val & ~csr_db[reg_addr]->wr_mask) ^ (csr_db[reg_addr]->clr_mask & new_val & csr_db[reg_addr]->data->val)) | (new_val & csr_db[reg_addr]->wr_mask));
180 //Original version: csr_db[reg_addr]->data->val = ((csr_db[reg_addr]->data->val & ~csr_db[reg_addr]->wr_mask) | (new_val & csr_db[reg_addr]->wr_mask));
181 }
182 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
183 notify (*(csr_db[reg_addr]->data->events[i]));
184 }
185
186 return csr_db[reg_addr]->data->val;
187 }
188
189 /**
190 * This method updates the value at the specified address using the specified mask,
191 * based on the tyep of interface for that CSR data element.
192 */
193 DATA write_csr_mask(const ADDR reg_addr, const DATA wr_val, const DATA field_mask) {
194
195 if (csr_db[reg_addr] == NULL) {
196 LOG_ERROR << "WRITE_CSR_mask address not mapped " << reg_addr;
197 return DATA(0);
198 }
199 if(POR_RESET){
200 return csr_db[reg_addr]->data->val;
201 }
202 DATA new_val;
203 new_val = csr_db[reg_addr]->data->val & csr_db[reg_addr]->rd_mask;
204 LOG_DEBUG << " new_val: " << new_val << " data->val: " << csr_db[reg_addr]->data->val << " field_mask: " << field_mask;
205 new_val = (new_val & ~field_mask) | wr_val;
206 LOG_DEBUG << " new_val: " << new_val ;
207 csr_db[reg_addr]->data->val = new_val;
208 LOG_DEBUG << " data->val: " << csr_db[reg_addr]->data->val ;
209 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
210 notify (*(csr_db[reg_addr]->data->events[i]));
211 }
212 return csr_db[reg_addr]->data->val;
213 }
214
215 /**
216 * This method registers event notifications with the specified CSR address.
217 */
218 void set_notify_event(ADDR reg_addr, sc_event* event_handle){
219 LOG_DEBUG << "Set_Notify_Event (Addr: " << reg_addr
220 << ", EvHandle " << uint64(event_handle) << ")";
221
222 if (csr_db[reg_addr] == NULL) {
223 LOG_ERROR << "Address " << reg_addr << " not mapped on this addres space";
224 exit(0);
225 }
226 csr_db[reg_addr]->data->events[csr_db[reg_addr]->data->num_events++] = event_handle;
227 }
228
229 /**
230 * This method populates the CSR database with the required CSRs and their
231 * desired characteristics.
232 */
233 void create_csr_db() {
234 ADDR reg_addr;
235
236 LOG_DEBUG << "Create CSR DB";
237 POR_RESET=false;
238
239 reg_addr = PEU_CSR_A_TLU_CTL_HW_ADDR;
240 if (csr_db[reg_addr] == NULL) {
241 csr_db[reg_addr] = new csr_data_intf<DATA> ();
242 csr_db[reg_addr]->data = new csr_data<DATA> ();
243 }
244
245 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_CTL_READ_MASK;
246 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_CTL_WRITE_MASK;
247 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_CTL_CLEAR_MASK;
248 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_CTL_SET_MASK;
249 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_CTL_TOGGLE_MASK;
250 csr_db[reg_addr]->por_val = PEU_CSR_TLU_CTL_POR_VALUE;
251 csr_db[reg_addr]->data->val = PEU_CSR_TLU_CTL_POR_VALUE;
252 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
253 notify (*(csr_db[reg_addr]->data->events[i]));
254 }
255
256 reg_addr = PEU_CSR_B_TLU_CTL_HW_ADDR;
257 if (csr_db[reg_addr] == NULL) {
258 csr_db[reg_addr] = new csr_data_intf<DATA> ();
259 csr_db[reg_addr]->data = new csr_data<DATA> ();
260 }
261
262 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_CTL_READ_MASK;
263 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_CTL_WRITE_MASK;
264 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_CTL_CLEAR_MASK;
265 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_CTL_SET_MASK;
266 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_CTL_TOGGLE_MASK;
267 csr_db[reg_addr]->por_val = PEU_CSR_TLU_CTL_POR_VALUE;
268
269 csr_db[reg_addr]->data->val = PEU_CSR_TLU_CTL_POR_VALUE;
270 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
271 notify (*(csr_db[reg_addr]->data->events[i]));
272 }
273
274 reg_addr = PEU_CSR_A_TLU_STS_HW_ADDR;
275 if (csr_db[reg_addr] == NULL) {
276 csr_db[reg_addr] = new csr_data_intf<DATA> ();
277 csr_db[reg_addr]->data = new csr_data<DATA> ();
278 }
279
280 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_STS_READ_MASK;
281 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_STS_WRITE_MASK;
282 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_STS_CLEAR_MASK;
283 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_STS_SET_MASK;
284 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_STS_TOGGLE_MASK;
285 csr_db[reg_addr]->por_val = PEU_CSR_TLU_STS_POR_VALUE;
286
287 csr_db[reg_addr]->data->val = PEU_CSR_TLU_STS_POR_VALUE;
288 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
289 notify (*(csr_db[reg_addr]->data->events[i]));
290 }
291
292 reg_addr = PEU_CSR_B_TLU_STS_HW_ADDR;
293 if (csr_db[reg_addr] == NULL) {
294 csr_db[reg_addr] = new csr_data_intf<DATA> ();
295 csr_db[reg_addr]->data = new csr_data<DATA> ();
296 }
297
298 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_STS_READ_MASK;
299 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_STS_WRITE_MASK;
300 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_STS_CLEAR_MASK;
301 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_STS_SET_MASK;
302 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_STS_TOGGLE_MASK;
303 csr_db[reg_addr]->por_val = PEU_CSR_TLU_STS_POR_VALUE;
304
305 csr_db[reg_addr]->data->val = PEU_CSR_TLU_STS_POR_VALUE;
306 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
307 notify (*(csr_db[reg_addr]->data->events[i]));
308 }
309
310 reg_addr = PEU_CSR_A_TRN_OFF_HW_ADDR;
311 if (csr_db[reg_addr] == NULL) {
312 csr_db[reg_addr] = new csr_data_intf<DATA> ();
313 csr_db[reg_addr]->data = new csr_data<DATA> ();
314 }
315
316 csr_db[reg_addr]->rd_mask = PEU_CSR_TRN_OFF_READ_MASK;
317 csr_db[reg_addr]->wr_mask = PEU_CSR_TRN_OFF_WRITE_MASK;
318 csr_db[reg_addr]->clr_mask = PEU_CSR_TRN_OFF_CLEAR_MASK;
319 csr_db[reg_addr]->set_mask = PEU_CSR_TRN_OFF_SET_MASK;
320 csr_db[reg_addr]->toggle_mask = PEU_CSR_TRN_OFF_TOGGLE_MASK;
321 csr_db[reg_addr]->por_val = PEU_CSR_TRN_OFF_POR_VALUE;
322
323 csr_db[reg_addr]->data->val = PEU_CSR_TRN_OFF_POR_VALUE;
324
325 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
326 notify (*(csr_db[reg_addr]->data->events[i]));
327 }
328
329 reg_addr = PEU_CSR_B_TRN_OFF_HW_ADDR;
330 if (csr_db[reg_addr] == NULL) {
331 csr_db[reg_addr] = new csr_data_intf<DATA> ();
332 csr_db[reg_addr]->data = new csr_data<DATA> ();
333 }
334
335 csr_db[reg_addr]->rd_mask = PEU_CSR_TRN_OFF_READ_MASK;
336 csr_db[reg_addr]->wr_mask = PEU_CSR_TRN_OFF_WRITE_MASK;
337 csr_db[reg_addr]->clr_mask = PEU_CSR_TRN_OFF_CLEAR_MASK;
338 csr_db[reg_addr]->set_mask = PEU_CSR_TRN_OFF_SET_MASK;
339 csr_db[reg_addr]->toggle_mask = PEU_CSR_TRN_OFF_TOGGLE_MASK;
340 csr_db[reg_addr]->por_val = PEU_CSR_TRN_OFF_POR_VALUE;
341
342 csr_db[reg_addr]->data->val = PEU_CSR_TRN_OFF_POR_VALUE;
343
344 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
345 notify (*(csr_db[reg_addr]->data->events[i]));
346 }
347
348 reg_addr = PEU_CSR_A_TLU_ICI_HW_ADDR;
349 if (csr_db[reg_addr] == NULL) {
350 csr_db[reg_addr] = new csr_data_intf<DATA> ();
351 csr_db[reg_addr]->data = new csr_data<DATA> ();
352 }
353
354 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICI_READ_MASK;
355 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICI_WRITE_MASK;
356 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICI_CLEAR_MASK;
357 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICI_SET_MASK;
358 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICI_TOGGLE_MASK;
359 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICI_POR_VALUE;
360 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICI_POR_VALUE;
361
362 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
363 notify (*(csr_db[reg_addr]->data->events[i]));
364 }
365
366 reg_addr = PEU_CSR_B_TLU_ICI_HW_ADDR;
367 if (csr_db[reg_addr] == NULL) {
368 csr_db[reg_addr] = new csr_data_intf<DATA> ();
369 csr_db[reg_addr]->data = new csr_data<DATA> ();
370 }
371
372 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICI_READ_MASK;
373 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICI_WRITE_MASK;
374 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICI_CLEAR_MASK;
375 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICI_SET_MASK;
376 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICI_TOGGLE_MASK;
377 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICI_POR_VALUE;
378
379 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICI_POR_VALUE;
380
381 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
382 notify (*(csr_db[reg_addr]->data->events[i]));
383 }
384
385 reg_addr = PEU_CSR_A_TLU_DIAG_HW_ADDR;
386 if (csr_db[reg_addr] == NULL) {
387 csr_db[reg_addr] = new csr_data_intf<DATA> ();
388 csr_db[reg_addr]->data = new csr_data<DATA> ();
389 }
390
391 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DIAG_READ_MASK;
392 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DIAG_WRITE_MASK;
393 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DIAG_CLEAR_MASK;
394 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DIAG_SET_MASK;
395 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DIAG_TOGGLE_MASK;
396 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DIAG_POR_VALUE;
397
398 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DIAG_POR_VALUE;
399
400 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
401 notify (*(csr_db[reg_addr]->data->events[i]));
402 }
403
404 reg_addr = PEU_CSR_B_TLU_DIAG_HW_ADDR;
405 if (csr_db[reg_addr] == NULL) {
406 csr_db[reg_addr] = new csr_data_intf<DATA> ();
407 csr_db[reg_addr]->data = new csr_data<DATA> ();
408 }
409
410 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DIAG_READ_MASK;
411 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DIAG_WRITE_MASK;
412 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DIAG_CLEAR_MASK;
413 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DIAG_SET_MASK;
414 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DIAG_TOGGLE_MASK;
415 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DIAG_POR_VALUE;
416
417 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DIAG_POR_VALUE;
418
419 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
420 notify (*(csr_db[reg_addr]->data->events[i]));
421 }
422
423 reg_addr = PEU_CSR_A_TLU_ECC_HW_ADDR;
424 if (csr_db[reg_addr] == NULL) {
425 csr_db[reg_addr] = new csr_data_intf<DATA> ();
426 csr_db[reg_addr]->data = new csr_data<DATA> ();
427 }
428
429 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ECC_READ_MASK;
430 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ECC_WRITE_MASK;
431 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ECC_CLEAR_MASK;
432 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ECC_SET_MASK;
433 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ECC_TOGGLE_MASK;
434 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ECC_POR_VALUE;
435
436 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ECC_POR_VALUE;
437
438 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
439 notify (*(csr_db[reg_addr]->data->events[i]));
440 }
441
442 reg_addr = PEU_CSR_B_TLU_ECC_HW_ADDR;
443 if (csr_db[reg_addr] == NULL) {
444 csr_db[reg_addr] = new csr_data_intf<DATA> ();
445 csr_db[reg_addr]->data = new csr_data<DATA> ();
446 }
447
448 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ECC_READ_MASK;
449 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ECC_WRITE_MASK;
450 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ECC_CLEAR_MASK;
451 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ECC_SET_MASK;
452 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ECC_TOGGLE_MASK;
453 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ECC_POR_VALUE;
454
455 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ECC_POR_VALUE;
456
457 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
458 notify (*(csr_db[reg_addr]->data->events[i]));
459 }
460
461 reg_addr = PEU_CSR_A_TLU_ECL_HW_ADDR;
462 if (csr_db[reg_addr] == NULL) {
463 csr_db[reg_addr] = new csr_data_intf<DATA> ();
464 csr_db[reg_addr]->data = new csr_data<DATA> ();
465 }
466
467 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ECL_READ_MASK;
468 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ECL_WRITE_MASK;
469 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ECL_CLEAR_MASK;
470 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ECL_SET_MASK;
471 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ECL_TOGGLE_MASK;
472 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ECL_POR_VALUE;
473
474 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ECL_POR_VALUE;
475
476 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
477 notify (*(csr_db[reg_addr]->data->events[i]));
478 }
479
480 reg_addr = PEU_CSR_B_TLU_ECL_HW_ADDR;
481 if (csr_db[reg_addr] == NULL) {
482 csr_db[reg_addr] = new csr_data_intf<DATA> ();
483 csr_db[reg_addr]->data = new csr_data<DATA> ();
484 }
485
486 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ECL_READ_MASK;
487 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ECL_WRITE_MASK;
488 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ECL_CLEAR_MASK;
489 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ECL_SET_MASK;
490 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ECL_TOGGLE_MASK;
491 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ECL_POR_VALUE;
492
493 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ECL_POR_VALUE;
494
495 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
496 notify (*(csr_db[reg_addr]->data->events[i]));
497 }
498
499 reg_addr = PEU_CSR_A_TLU_ERB_HW_ADDR;
500 if (csr_db[reg_addr] == NULL) {
501 csr_db[reg_addr] = new csr_data_intf<DATA> ();
502 csr_db[reg_addr]->data = new csr_data<DATA> ();
503 }
504
505 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ERB_READ_MASK;
506 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ERB_WRITE_MASK;
507 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ERB_CLEAR_MASK;
508 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ERB_SET_MASK;
509 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ERB_TOGGLE_MASK;
510 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ERB_POR_VALUE;
511
512 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ERB_POR_VALUE;
513
514 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
515 notify (*(csr_db[reg_addr]->data->events[i]));
516 }
517
518 reg_addr = PEU_CSR_B_TLU_ERB_HW_ADDR;
519 if (csr_db[reg_addr] == NULL) {
520 csr_db[reg_addr] = new csr_data_intf<DATA> ();
521 csr_db[reg_addr]->data = new csr_data<DATA> ();
522 }
523
524 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ERB_READ_MASK;
525 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ERB_WRITE_MASK;
526 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ERB_CLEAR_MASK;
527 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ERB_SET_MASK;
528 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ERB_TOGGLE_MASK;
529 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ERB_POR_VALUE;
530
531 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ERB_POR_VALUE;
532
533 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
534 notify (*(csr_db[reg_addr]->data->events[i]));
535 }
536
537 reg_addr = PEU_CSR_A_TLU_ICA_HW_ADDR;
538 if (csr_db[reg_addr] == NULL) {
539 csr_db[reg_addr] = new csr_data_intf<DATA> ();
540 csr_db[reg_addr]->data = new csr_data<DATA> ();
541 }
542
543 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICA_READ_MASK;
544 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICA_WRITE_MASK;
545 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICA_CLEAR_MASK;
546 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICA_SET_MASK;
547 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICA_TOGGLE_MASK;
548 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICA_POR_VALUE;
549
550 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICA_POR_VALUE;
551
552 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
553 notify (*(csr_db[reg_addr]->data->events[i]));
554 }
555
556 reg_addr = PEU_CSR_B_TLU_ICA_HW_ADDR;
557 if (csr_db[reg_addr] == NULL) {
558 csr_db[reg_addr] = new csr_data_intf<DATA> ();
559 csr_db[reg_addr]->data = new csr_data<DATA> ();
560 }
561
562 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICA_READ_MASK;
563 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICA_WRITE_MASK;
564 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICA_CLEAR_MASK;
565 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICA_SET_MASK;
566 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICA_TOGGLE_MASK;
567 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICA_POR_VALUE;
568
569 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICA_POR_VALUE;
570
571 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
572 notify (*(csr_db[reg_addr]->data->events[i]));
573 }
574
575 reg_addr = PEU_CSR_A_TLU_ICR_HW_ADDR;
576 if (csr_db[reg_addr] == NULL) {
577 csr_db[reg_addr] = new csr_data_intf<DATA> ();
578 csr_db[reg_addr]->data = new csr_data<DATA> ();
579 }
580
581 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICR_READ_MASK;
582 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICR_WRITE_MASK;
583 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICR_CLEAR_MASK;
584 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICR_SET_MASK;
585 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICR_TOGGLE_MASK;
586 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICR_POR_VALUE;
587
588 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICR_POR_VALUE;
589
590 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
591 notify (*(csr_db[reg_addr]->data->events[i]));
592 }
593
594 reg_addr = PEU_CSR_B_TLU_ICR_HW_ADDR;
595 if (csr_db[reg_addr] == NULL) {
596 csr_db[reg_addr] = new csr_data_intf<DATA> ();
597 csr_db[reg_addr]->data = new csr_data<DATA> ();
598 }
599
600 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_ICR_READ_MASK;
601 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_ICR_WRITE_MASK;
602 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_ICR_CLEAR_MASK;
603 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_ICR_SET_MASK;
604 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_ICR_TOGGLE_MASK;
605 csr_db[reg_addr]->por_val = PEU_CSR_TLU_ICR_POR_VALUE;
606
607 csr_db[reg_addr]->data->val = PEU_CSR_TLU_ICR_POR_VALUE;
608
609 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
610 notify (*(csr_db[reg_addr]->data->events[i]));
611 }
612
613 reg_addr = PEU_CSR_A_OE_LOG_HW_ADDR;
614 if (csr_db[reg_addr] == NULL) {
615 csr_db[reg_addr] = new csr_data_intf<DATA> ();
616 csr_db[reg_addr]->data = new csr_data<DATA> ();
617 }
618
619 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_LOG_READ_MASK;
620 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_LOG_WRITE_MASK;
621 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_LOG_CLEAR_MASK;
622 csr_db[reg_addr]->set_mask = PEU_CSR_OE_LOG_SET_MASK;
623 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_LOG_TOGGLE_MASK;
624 csr_db[reg_addr]->por_val = PEU_CSR_OE_LOG_POR_VALUE;
625
626 csr_db[reg_addr]->data->val = PEU_CSR_OE_LOG_POR_VALUE;
627
628 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
629 notify (*(csr_db[reg_addr]->data->events[i]));
630 }
631
632 reg_addr = PEU_CSR_B_OE_LOG_HW_ADDR;
633 if (csr_db[reg_addr] == NULL) {
634 csr_db[reg_addr] = new csr_data_intf<DATA> ();
635 csr_db[reg_addr]->data = new csr_data<DATA> ();
636 }
637
638 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_LOG_READ_MASK;
639 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_LOG_WRITE_MASK;
640 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_LOG_CLEAR_MASK;
641 csr_db[reg_addr]->set_mask = PEU_CSR_OE_LOG_SET_MASK;
642 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_LOG_TOGGLE_MASK;
643 csr_db[reg_addr]->por_val = PEU_CSR_OE_LOG_POR_VALUE;
644
645 csr_db[reg_addr]->data->val = PEU_CSR_OE_LOG_POR_VALUE;
646
647 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
648 notify (*(csr_db[reg_addr]->data->events[i]));
649 }
650
651 reg_addr = PEU_CSR_A_OE_INT_EN_HW_ADDR;
652 if (csr_db[reg_addr] == NULL) {
653 csr_db[reg_addr] = new csr_data_intf<DATA> ();
654 csr_db[reg_addr]->data = new csr_data<DATA> ();
655 }
656
657 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_INT_EN_READ_MASK;
658 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_INT_EN_WRITE_MASK;
659 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_INT_EN_CLEAR_MASK;
660 csr_db[reg_addr]->set_mask = PEU_CSR_OE_INT_EN_SET_MASK;
661 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_INT_EN_TOGGLE_MASK;
662 csr_db[reg_addr]->por_val = PEU_CSR_OE_INT_EN_POR_VALUE;
663
664 csr_db[reg_addr]->data->val = PEU_CSR_OE_INT_EN_POR_VALUE;
665
666 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
667 notify (*(csr_db[reg_addr]->data->events[i]));
668 }
669
670 reg_addr = PEU_CSR_B_OE_INT_EN_HW_ADDR;
671 if (csr_db[reg_addr] == NULL) {
672 csr_db[reg_addr] = new csr_data_intf<DATA> ();
673 csr_db[reg_addr]->data = new csr_data<DATA> ();
674 }
675
676 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_INT_EN_READ_MASK;
677 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_INT_EN_WRITE_MASK;
678 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_INT_EN_CLEAR_MASK;
679 csr_db[reg_addr]->set_mask = PEU_CSR_OE_INT_EN_SET_MASK;
680 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_INT_EN_TOGGLE_MASK;
681 csr_db[reg_addr]->por_val = PEU_CSR_OE_INT_EN_POR_VALUE;
682
683 csr_db[reg_addr]->data->val = PEU_CSR_OE_INT_EN_POR_VALUE;
684
685 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
686 notify (*(csr_db[reg_addr]->data->events[i]));
687 }
688
689 reg_addr = PEU_CSR_A_OE_EN_ERR_HW_ADDR;
690 if (csr_db[reg_addr] == NULL) {
691 csr_db[reg_addr] = new csr_data_intf<DATA> ();
692 csr_db[reg_addr]->data = new csr_data<DATA> ();
693 }
694
695 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_EN_ERR_READ_MASK;
696 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_EN_ERR_WRITE_MASK;
697 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_EN_ERR_CLEAR_MASK;
698 csr_db[reg_addr]->set_mask = PEU_CSR_OE_EN_ERR_SET_MASK;
699 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_EN_ERR_TOGGLE_MASK;
700 csr_db[reg_addr]->por_val = PEU_CSR_OE_EN_ERR_POR_VALUE;
701
702 csr_db[reg_addr]->data->val = PEU_CSR_OE_EN_ERR_POR_VALUE;
703
704 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
705 notify (*(csr_db[reg_addr]->data->events[i]));
706 }
707
708 reg_addr = PEU_CSR_B_OE_EN_ERR_HW_ADDR;
709 if (csr_db[reg_addr] == NULL) {
710 csr_db[reg_addr] = new csr_data_intf<DATA> ();
711 csr_db[reg_addr]->data = new csr_data<DATA> ();
712 }
713
714 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_EN_ERR_READ_MASK;
715 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_EN_ERR_WRITE_MASK;
716 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_EN_ERR_CLEAR_MASK;
717 csr_db[reg_addr]->set_mask = PEU_CSR_OE_EN_ERR_SET_MASK;
718 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_EN_ERR_TOGGLE_MASK;
719 csr_db[reg_addr]->por_val = PEU_CSR_OE_EN_ERR_POR_VALUE;
720
721 csr_db[reg_addr]->data->val = PEU_CSR_OE_EN_ERR_POR_VALUE;
722
723 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
724 notify (*(csr_db[reg_addr]->data->events[i]));
725 }
726
727 reg_addr = PEU_CSR_A_OE_ERR_RW1C_ALIAS_HW_ADDR;
728 if (csr_db[reg_addr] == NULL) {
729 csr_db[reg_addr] = new csr_data_intf<DATA> ();
730 csr_db[reg_addr]->data = new csr_data<DATA> ();
731 }
732
733 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_READ_MASK;
734 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_WRITE_MASK;
735 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_CLEAR_MASK;
736 csr_db[reg_addr]->set_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_SET_MASK;
737 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_TOGGLE_MASK;
738 csr_db[reg_addr]->por_val = PEU_CSR_OE_ERR_RW1C_ALIAS_POR_VALUE;
739
740 csr_db[reg_addr]->data->val = PEU_CSR_OE_ERR_RW1C_ALIAS_POR_VALUE;
741 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
742 csr_db[reg_addr]->sw_reset_val_hold = false;
743
744 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
745 notify (*(csr_db[reg_addr]->data->events[i]));
746 }
747
748 reg_addr = PEU_CSR_B_OE_ERR_RW1C_ALIAS_HW_ADDR;
749 if (csr_db[reg_addr] == NULL) {
750 csr_db[reg_addr] = new csr_data_intf<DATA> ();
751 csr_db[reg_addr]->data = new csr_data<DATA> ();
752 }
753
754 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_READ_MASK;
755 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_WRITE_MASK;
756 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_CLEAR_MASK;
757 csr_db[reg_addr]->set_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_SET_MASK;
758 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_ERR_RW1C_ALIAS_TOGGLE_MASK;
759 csr_db[reg_addr]->por_val = PEU_CSR_OE_ERR_RW1C_ALIAS_POR_VALUE;
760
761 csr_db[reg_addr]->data->val = PEU_CSR_OE_ERR_RW1C_ALIAS_POR_VALUE;
762 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
763 csr_db[reg_addr]->sw_reset_val_hold = false;
764
765 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
766 notify (*(csr_db[reg_addr]->data->events[i]));
767 }
768
769 reg_addr = PEU_CSR_A_OE_ERR_RW1S_ALIAS_HW_ADDR;
770 if (csr_db[reg_addr] == NULL) {
771 csr_db[reg_addr] = new csr_data_intf<DATA> ();
772 csr_db[reg_addr]->data = csr_db[PEU_CSR_A_OE_ERR_RW1C_ALIAS_HW_ADDR]->data;
773
774 }
775
776 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_READ_MASK;
777 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_WRITE_MASK;
778 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_CLEAR_MASK;
779 csr_db[reg_addr]->set_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_SET_MASK;
780 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_TOGGLE_MASK;
781 csr_db[reg_addr]->por_val = PEU_CSR_OE_ERR_RW1S_ALIAS_POR_VALUE;
782
783 csr_db[reg_addr]->data->val = PEU_CSR_OE_ERR_RW1S_ALIAS_POR_VALUE;
784 csr_db[reg_addr]->intf_type = WRITE1_SET;
785 csr_db[reg_addr]->sw_reset_val_hold = false;
786
787 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
788 notify (*(csr_db[reg_addr]->data->events[i]));
789 }
790
791 reg_addr = PEU_CSR_B_OE_ERR_RW1S_ALIAS_HW_ADDR;
792 if (csr_db[reg_addr] == NULL) {
793 csr_db[reg_addr] = new csr_data_intf<DATA> ();
794 csr_db[reg_addr]->data = csr_db[PEU_CSR_B_OE_ERR_RW1C_ALIAS_HW_ADDR]->data;
795
796 }
797
798 csr_db[reg_addr]->rd_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_READ_MASK;
799 csr_db[reg_addr]->wr_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_WRITE_MASK;
800 csr_db[reg_addr]->clr_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_CLEAR_MASK;
801 csr_db[reg_addr]->set_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_SET_MASK;
802 csr_db[reg_addr]->toggle_mask = PEU_CSR_OE_ERR_RW1S_ALIAS_TOGGLE_MASK;
803 csr_db[reg_addr]->por_val = PEU_CSR_OE_ERR_RW1S_ALIAS_POR_VALUE;
804
805 csr_db[reg_addr]->data->val = PEU_CSR_OE_ERR_RW1S_ALIAS_POR_VALUE;
806 csr_db[reg_addr]->intf_type = WRITE1_SET;
807 csr_db[reg_addr]->sw_reset_val_hold = false;
808
809 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
810 notify (*(csr_db[reg_addr]->data->events[i]));
811 }
812
813 reg_addr = PEU_CSR_A_ROE_HDR1_HW_ADDR;
814 if (csr_db[reg_addr] == NULL) {
815 csr_db[reg_addr] = new csr_data_intf<DATA> ();
816 csr_db[reg_addr]->data = new csr_data<DATA> ();
817 }
818
819 csr_db[reg_addr]->rd_mask = PEU_CSR_ROE_HDR1_READ_MASK;
820 csr_db[reg_addr]->wr_mask = PEU_CSR_ROE_HDR1_WRITE_MASK;
821 csr_db[reg_addr]->clr_mask = PEU_CSR_ROE_HDR1_CLEAR_MASK;
822 csr_db[reg_addr]->set_mask = PEU_CSR_ROE_HDR1_SET_MASK;
823 csr_db[reg_addr]->toggle_mask = PEU_CSR_ROE_HDR1_TOGGLE_MASK;
824 csr_db[reg_addr]->por_val = PEU_CSR_ROE_HDR1_POR_VALUE;
825
826 csr_db[reg_addr]->data->val = PEU_CSR_ROE_HDR1_POR_VALUE;
827
828 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
829 notify (*(csr_db[reg_addr]->data->events[i]));
830 }
831
832 reg_addr = PEU_CSR_B_ROE_HDR1_HW_ADDR;
833 if (csr_db[reg_addr] == NULL) {
834 csr_db[reg_addr] = new csr_data_intf<DATA> ();
835 csr_db[reg_addr]->data = new csr_data<DATA> ();
836 }
837
838 csr_db[reg_addr]->rd_mask = PEU_CSR_ROE_HDR1_READ_MASK;
839 csr_db[reg_addr]->wr_mask = PEU_CSR_ROE_HDR1_WRITE_MASK;
840 csr_db[reg_addr]->clr_mask = PEU_CSR_ROE_HDR1_CLEAR_MASK;
841 csr_db[reg_addr]->set_mask = PEU_CSR_ROE_HDR1_SET_MASK;
842 csr_db[reg_addr]->toggle_mask = PEU_CSR_ROE_HDR1_TOGGLE_MASK;
843 csr_db[reg_addr]->por_val = PEU_CSR_ROE_HDR1_POR_VALUE;
844
845 csr_db[reg_addr]->data->val = PEU_CSR_ROE_HDR1_POR_VALUE;
846
847 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
848 notify (*(csr_db[reg_addr]->data->events[i]));
849 }
850
851 reg_addr = PEU_CSR_A_ROE_HDR2_HW_ADDR;
852 if (csr_db[reg_addr] == NULL) {
853 csr_db[reg_addr] = new csr_data_intf<DATA> ();
854 csr_db[reg_addr]->data = new csr_data<DATA> ();
855 }
856
857 csr_db[reg_addr]->rd_mask = PEU_CSR_ROE_HDR2_READ_MASK;
858 csr_db[reg_addr]->wr_mask = PEU_CSR_ROE_HDR2_WRITE_MASK;
859 csr_db[reg_addr]->clr_mask = PEU_CSR_ROE_HDR2_CLEAR_MASK;
860 csr_db[reg_addr]->set_mask = PEU_CSR_ROE_HDR2_SET_MASK;
861 csr_db[reg_addr]->toggle_mask = PEU_CSR_ROE_HDR2_TOGGLE_MASK;
862 csr_db[reg_addr]->por_val = PEU_CSR_ROE_HDR2_POR_VALUE;
863
864 csr_db[reg_addr]->data->val = PEU_CSR_ROE_HDR2_POR_VALUE;
865
866 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
867 notify (*(csr_db[reg_addr]->data->events[i]));
868 }
869
870 reg_addr = PEU_CSR_B_ROE_HDR2_HW_ADDR;
871 if (csr_db[reg_addr] == NULL) {
872 csr_db[reg_addr] = new csr_data_intf<DATA> ();
873 csr_db[reg_addr]->data = new csr_data<DATA> ();
874 }
875
876 csr_db[reg_addr]->rd_mask = PEU_CSR_ROE_HDR2_READ_MASK;
877 csr_db[reg_addr]->wr_mask = PEU_CSR_ROE_HDR2_WRITE_MASK;
878 csr_db[reg_addr]->clr_mask = PEU_CSR_ROE_HDR2_CLEAR_MASK;
879 csr_db[reg_addr]->set_mask = PEU_CSR_ROE_HDR2_SET_MASK;
880 csr_db[reg_addr]->toggle_mask = PEU_CSR_ROE_HDR2_TOGGLE_MASK;
881 csr_db[reg_addr]->por_val = PEU_CSR_ROE_HDR2_POR_VALUE;
882
883 csr_db[reg_addr]->data->val = PEU_CSR_ROE_HDR2_POR_VALUE;
884
885 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
886 notify (*(csr_db[reg_addr]->data->events[i]));
887 }
888
889 reg_addr = PEU_CSR_A_TOE_HDR1_HW_ADDR;
890 if (csr_db[reg_addr] == NULL) {
891 csr_db[reg_addr] = new csr_data_intf<DATA> ();
892 csr_db[reg_addr]->data = new csr_data<DATA> ();
893 }
894
895 csr_db[reg_addr]->rd_mask = PEU_CSR_TOE_HDR1_READ_MASK;
896 csr_db[reg_addr]->wr_mask = PEU_CSR_TOE_HDR1_WRITE_MASK;
897 csr_db[reg_addr]->clr_mask = PEU_CSR_TOE_HDR1_CLEAR_MASK;
898 csr_db[reg_addr]->set_mask = PEU_CSR_TOE_HDR1_SET_MASK;
899 csr_db[reg_addr]->toggle_mask = PEU_CSR_TOE_HDR1_TOGGLE_MASK;
900 csr_db[reg_addr]->por_val = PEU_CSR_TOE_HDR1_POR_VALUE;
901
902 csr_db[reg_addr]->data->val = PEU_CSR_TOE_HDR1_POR_VALUE;
903
904 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
905 notify (*(csr_db[reg_addr]->data->events[i]));
906 }
907
908 reg_addr = PEU_CSR_B_TOE_HDR1_HW_ADDR;
909 if (csr_db[reg_addr] == NULL) {
910 csr_db[reg_addr] = new csr_data_intf<DATA> ();
911 csr_db[reg_addr]->data = new csr_data<DATA> ();
912 }
913
914 csr_db[reg_addr]->rd_mask = PEU_CSR_TOE_HDR1_READ_MASK;
915 csr_db[reg_addr]->wr_mask = PEU_CSR_TOE_HDR1_WRITE_MASK;
916 csr_db[reg_addr]->clr_mask = PEU_CSR_TOE_HDR1_CLEAR_MASK;
917 csr_db[reg_addr]->set_mask = PEU_CSR_TOE_HDR1_SET_MASK;
918 csr_db[reg_addr]->toggle_mask = PEU_CSR_TOE_HDR1_TOGGLE_MASK;
919 csr_db[reg_addr]->por_val = PEU_CSR_TOE_HDR1_POR_VALUE;
920
921 csr_db[reg_addr]->data->val = PEU_CSR_TOE_HDR1_POR_VALUE;
922
923 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
924 notify (*(csr_db[reg_addr]->data->events[i]));
925 }
926
927 reg_addr = PEU_CSR_A_TOE_HDR2_HW_ADDR;
928 if (csr_db[reg_addr] == NULL) {
929 csr_db[reg_addr] = new csr_data_intf<DATA> ();
930 csr_db[reg_addr]->data = new csr_data<DATA> ();
931 }
932
933 csr_db[reg_addr]->rd_mask = PEU_CSR_TOE_HDR2_READ_MASK;
934 csr_db[reg_addr]->wr_mask = PEU_CSR_TOE_HDR2_WRITE_MASK;
935 csr_db[reg_addr]->clr_mask = PEU_CSR_TOE_HDR2_CLEAR_MASK;
936 csr_db[reg_addr]->set_mask = PEU_CSR_TOE_HDR2_SET_MASK;
937 csr_db[reg_addr]->toggle_mask = PEU_CSR_TOE_HDR2_TOGGLE_MASK;
938 csr_db[reg_addr]->por_val = PEU_CSR_TOE_HDR2_POR_VALUE;
939
940 csr_db[reg_addr]->data->val = PEU_CSR_TOE_HDR2_POR_VALUE;
941
942 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
943 notify (*(csr_db[reg_addr]->data->events[i]));
944 }
945
946 reg_addr = PEU_CSR_B_TOE_HDR2_HW_ADDR;
947 if (csr_db[reg_addr] == NULL) {
948 csr_db[reg_addr] = new csr_data_intf<DATA> ();
949 csr_db[reg_addr]->data = new csr_data<DATA> ();
950 }
951
952 csr_db[reg_addr]->rd_mask = PEU_CSR_TOE_HDR2_READ_MASK;
953 csr_db[reg_addr]->wr_mask = PEU_CSR_TOE_HDR2_WRITE_MASK;
954 csr_db[reg_addr]->clr_mask = PEU_CSR_TOE_HDR2_CLEAR_MASK;
955 csr_db[reg_addr]->set_mask = PEU_CSR_TOE_HDR2_SET_MASK;
956 csr_db[reg_addr]->toggle_mask = PEU_CSR_TOE_HDR2_TOGGLE_MASK;
957 csr_db[reg_addr]->por_val = PEU_CSR_TOE_HDR2_POR_VALUE;
958
959 csr_db[reg_addr]->data->val = PEU_CSR_TOE_HDR2_POR_VALUE;
960
961 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
962 notify (*(csr_db[reg_addr]->data->events[i]));
963 }
964
965 reg_addr = PEU_CSR_A_TLU_PRFC_HW_ADDR;
966 if (csr_db[reg_addr] == NULL) {
967 csr_db[reg_addr] = new csr_data_intf<DATA> ();
968 csr_db[reg_addr]->data = new csr_data<DATA> ();
969 }
970
971 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRFC_READ_MASK;
972 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRFC_WRITE_MASK;
973 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRFC_CLEAR_MASK;
974 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRFC_SET_MASK;
975 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRFC_TOGGLE_MASK;
976 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRFC_POR_VALUE;
977
978 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRFC_POR_VALUE;
979
980 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
981 notify (*(csr_db[reg_addr]->data->events[i]));
982 }
983
984 reg_addr = PEU_CSR_B_TLU_PRFC_HW_ADDR;
985 if (csr_db[reg_addr] == NULL) {
986 csr_db[reg_addr] = new csr_data_intf<DATA> ();
987 csr_db[reg_addr]->data = new csr_data<DATA> ();
988 }
989
990 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRFC_READ_MASK;
991 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRFC_WRITE_MASK;
992 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRFC_CLEAR_MASK;
993 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRFC_SET_MASK;
994 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRFC_TOGGLE_MASK;
995 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRFC_POR_VALUE;
996
997 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRFC_POR_VALUE;
998
999 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1000 notify (*(csr_db[reg_addr]->data->events[i]));
1001 }
1002
1003 reg_addr = PEU_CSR_A_TLU_PRF0_HW_ADDR;
1004 if (csr_db[reg_addr] == NULL) {
1005 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1006 csr_db[reg_addr]->data = new csr_data<DATA> ();
1007 }
1008
1009 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF0_READ_MASK;
1010 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF0_WRITE_MASK;
1011 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF0_CLEAR_MASK;
1012 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF0_SET_MASK;
1013 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF0_TOGGLE_MASK;
1014 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF0_POR_VALUE;
1015
1016 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF0_POR_VALUE;
1017
1018 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1019 notify (*(csr_db[reg_addr]->data->events[i]));
1020 }
1021
1022 reg_addr = PEU_CSR_B_TLU_PRF0_HW_ADDR;
1023 if (csr_db[reg_addr] == NULL) {
1024 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1025 csr_db[reg_addr]->data = new csr_data<DATA> ();
1026 }
1027
1028 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF0_READ_MASK;
1029 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF0_WRITE_MASK;
1030 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF0_CLEAR_MASK;
1031 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF0_SET_MASK;
1032 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF0_TOGGLE_MASK;
1033 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF0_POR_VALUE;
1034
1035 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF0_POR_VALUE;
1036
1037 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1038 notify (*(csr_db[reg_addr]->data->events[i]));
1039 }
1040
1041 reg_addr = PEU_CSR_A_TLU_PRF1_HW_ADDR;
1042 if (csr_db[reg_addr] == NULL) {
1043 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1044 csr_db[reg_addr]->data = new csr_data<DATA> ();
1045 }
1046
1047 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF1_READ_MASK;
1048 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF1_WRITE_MASK;
1049 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF1_CLEAR_MASK;
1050 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF1_SET_MASK;
1051 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF1_TOGGLE_MASK;
1052 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF1_POR_VALUE;
1053
1054 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF1_POR_VALUE;
1055
1056 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1057 notify (*(csr_db[reg_addr]->data->events[i]));
1058 }
1059
1060 reg_addr = PEU_CSR_B_TLU_PRF1_HW_ADDR;
1061 if (csr_db[reg_addr] == NULL) {
1062 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1063 csr_db[reg_addr]->data = new csr_data<DATA> ();
1064 }
1065
1066 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF1_READ_MASK;
1067 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF1_WRITE_MASK;
1068 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF1_CLEAR_MASK;
1069 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF1_SET_MASK;
1070 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF1_TOGGLE_MASK;
1071 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF1_POR_VALUE;
1072
1073 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF1_POR_VALUE;
1074
1075 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1076 notify (*(csr_db[reg_addr]->data->events[i]));
1077 }
1078
1079 reg_addr = PEU_CSR_A_TLU_PRF2_HW_ADDR;
1080 if (csr_db[reg_addr] == NULL) {
1081 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1082 csr_db[reg_addr]->data = new csr_data<DATA> ();
1083 }
1084
1085 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF2_READ_MASK;
1086 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF2_WRITE_MASK;
1087 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF2_CLEAR_MASK;
1088 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF2_SET_MASK;
1089 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF2_TOGGLE_MASK;
1090 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF2_POR_VALUE;
1091
1092 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF2_POR_VALUE;
1093
1094 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1095 notify (*(csr_db[reg_addr]->data->events[i]));
1096 }
1097
1098 reg_addr = PEU_CSR_B_TLU_PRF2_HW_ADDR;
1099 if (csr_db[reg_addr] == NULL) {
1100 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1101 csr_db[reg_addr]->data = new csr_data<DATA> ();
1102 }
1103
1104 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_PRF2_READ_MASK;
1105 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_PRF2_WRITE_MASK;
1106 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_PRF2_CLEAR_MASK;
1107 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_PRF2_SET_MASK;
1108 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_PRF2_TOGGLE_MASK;
1109 csr_db[reg_addr]->por_val = PEU_CSR_TLU_PRF2_POR_VALUE;
1110
1111 csr_db[reg_addr]->data->val = PEU_CSR_TLU_PRF2_POR_VALUE;
1112
1113 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1114 notify (*(csr_db[reg_addr]->data->events[i]));
1115 }
1116
1117 reg_addr = PEU_CSR_A_TLU_DBG_SEL_A_HW_ADDR;
1118 if (csr_db[reg_addr] == NULL) {
1119 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1120 csr_db[reg_addr]->data = new csr_data<DATA> ();
1121 }
1122
1123 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DBG_SEL_A_READ_MASK;
1124 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DBG_SEL_A_WRITE_MASK;
1125 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DBG_SEL_A_CLEAR_MASK;
1126 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DBG_SEL_A_SET_MASK;
1127 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DBG_SEL_A_TOGGLE_MASK;
1128 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DBG_SEL_A_POR_VALUE;
1129
1130 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DBG_SEL_A_POR_VALUE;
1131
1132 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1133 notify (*(csr_db[reg_addr]->data->events[i]));
1134 }
1135
1136 reg_addr = PEU_CSR_B_TLU_DBG_SEL_A_HW_ADDR;
1137 if (csr_db[reg_addr] == NULL) {
1138 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1139 csr_db[reg_addr]->data = new csr_data<DATA> ();
1140 }
1141
1142 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DBG_SEL_A_READ_MASK;
1143 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DBG_SEL_A_WRITE_MASK;
1144 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DBG_SEL_A_CLEAR_MASK;
1145 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DBG_SEL_A_SET_MASK;
1146 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DBG_SEL_A_TOGGLE_MASK;
1147 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DBG_SEL_A_POR_VALUE;
1148
1149 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DBG_SEL_A_POR_VALUE;
1150
1151 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1152 notify (*(csr_db[reg_addr]->data->events[i]));
1153 }
1154
1155 reg_addr = PEU_CSR_A_TLU_DBG_SEL_B_HW_ADDR;
1156 if (csr_db[reg_addr] == NULL) {
1157 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1158 csr_db[reg_addr]->data = new csr_data<DATA> ();
1159 }
1160
1161 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DBG_SEL_B_READ_MASK;
1162 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DBG_SEL_B_WRITE_MASK;
1163 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DBG_SEL_B_CLEAR_MASK;
1164 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DBG_SEL_B_SET_MASK;
1165 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DBG_SEL_B_TOGGLE_MASK;
1166 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DBG_SEL_B_POR_VALUE;
1167
1168 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DBG_SEL_B_POR_VALUE;
1169
1170 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1171 notify (*(csr_db[reg_addr]->data->events[i]));
1172 }
1173
1174 reg_addr = PEU_CSR_B_TLU_DBG_SEL_B_HW_ADDR;
1175 if (csr_db[reg_addr] == NULL) {
1176 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1177 csr_db[reg_addr]->data = new csr_data<DATA> ();
1178 }
1179
1180 csr_db[reg_addr]->rd_mask = PEU_CSR_TLU_DBG_SEL_B_READ_MASK;
1181 csr_db[reg_addr]->wr_mask = PEU_CSR_TLU_DBG_SEL_B_WRITE_MASK;
1182 csr_db[reg_addr]->clr_mask = PEU_CSR_TLU_DBG_SEL_B_CLEAR_MASK;
1183 csr_db[reg_addr]->set_mask = PEU_CSR_TLU_DBG_SEL_B_SET_MASK;
1184 csr_db[reg_addr]->toggle_mask = PEU_CSR_TLU_DBG_SEL_B_TOGGLE_MASK;
1185 csr_db[reg_addr]->por_val = PEU_CSR_TLU_DBG_SEL_B_POR_VALUE;
1186
1187 csr_db[reg_addr]->data->val = PEU_CSR_TLU_DBG_SEL_B_POR_VALUE;
1188
1189 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1190 notify (*(csr_db[reg_addr]->data->events[i]));
1191 }
1192
1193 reg_addr = PEU_CSR_A_DEV_CAP_HW_ADDR;
1194 if (csr_db[reg_addr] == NULL) {
1195 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1196 csr_db[reg_addr]->data = new csr_data<DATA> ();
1197 }
1198
1199 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_CAP_READ_MASK;
1200 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_CAP_WRITE_MASK;
1201 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_CAP_CLEAR_MASK;
1202 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_CAP_SET_MASK;
1203 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_CAP_TOGGLE_MASK;
1204 csr_db[reg_addr]->por_val = PEU_CSR_DEV_CAP_POR_VALUE;
1205
1206 csr_db[reg_addr]->data->val = PEU_CSR_DEV_CAP_POR_VALUE;
1207
1208 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1209 notify (*(csr_db[reg_addr]->data->events[i]));
1210 }
1211
1212 reg_addr = PEU_CSR_B_DEV_CAP_HW_ADDR;
1213 if (csr_db[reg_addr] == NULL) {
1214 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1215 csr_db[reg_addr]->data = new csr_data<DATA> ();
1216 }
1217
1218 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_CAP_READ_MASK;
1219 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_CAP_WRITE_MASK;
1220 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_CAP_CLEAR_MASK;
1221 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_CAP_SET_MASK;
1222 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_CAP_TOGGLE_MASK;
1223 csr_db[reg_addr]->por_val = PEU_CSR_DEV_CAP_POR_VALUE;
1224
1225 csr_db[reg_addr]->data->val = PEU_CSR_DEV_CAP_POR_VALUE;
1226
1227 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1228 notify (*(csr_db[reg_addr]->data->events[i]));
1229 }
1230
1231 reg_addr = PEU_CSR_A_DEV_CTL_HW_ADDR;
1232 if (csr_db[reg_addr] == NULL) {
1233 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1234 csr_db[reg_addr]->data = new csr_data<DATA> ();
1235 }
1236
1237 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_CTL_READ_MASK;
1238 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_CTL_WRITE_MASK;
1239 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_CTL_CLEAR_MASK;
1240 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_CTL_SET_MASK;
1241 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_CTL_TOGGLE_MASK;
1242 csr_db[reg_addr]->por_val = PEU_CSR_DEV_CTL_POR_VALUE;
1243
1244 csr_db[reg_addr]->data->val = PEU_CSR_DEV_CTL_POR_VALUE;
1245
1246 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1247 notify (*(csr_db[reg_addr]->data->events[i]));
1248 }
1249
1250 reg_addr = PEU_CSR_B_DEV_CTL_HW_ADDR;
1251 if (csr_db[reg_addr] == NULL) {
1252 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1253 csr_db[reg_addr]->data = new csr_data<DATA> ();
1254 }
1255
1256 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_CTL_READ_MASK;
1257 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_CTL_WRITE_MASK;
1258 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_CTL_CLEAR_MASK;
1259 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_CTL_SET_MASK;
1260 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_CTL_TOGGLE_MASK;
1261 csr_db[reg_addr]->por_val = PEU_CSR_DEV_CTL_POR_VALUE;
1262
1263 csr_db[reg_addr]->data->val = PEU_CSR_DEV_CTL_POR_VALUE;
1264
1265 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1266 notify (*(csr_db[reg_addr]->data->events[i]));
1267 }
1268
1269 reg_addr = PEU_CSR_A_DEV_STS_HW_ADDR;
1270 if (csr_db[reg_addr] == NULL) {
1271 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1272 csr_db[reg_addr]->data = new csr_data<DATA> ();
1273 }
1274
1275 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_STS_READ_MASK;
1276 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_STS_WRITE_MASK;
1277 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_STS_CLEAR_MASK;
1278 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_STS_SET_MASK;
1279 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_STS_TOGGLE_MASK;
1280 csr_db[reg_addr]->por_val = PEU_CSR_DEV_STS_POR_VALUE;
1281
1282 csr_db[reg_addr]->data->val = PEU_CSR_DEV_STS_POR_VALUE;
1283
1284 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1285 notify (*(csr_db[reg_addr]->data->events[i]));
1286 }
1287
1288 reg_addr = PEU_CSR_B_DEV_STS_HW_ADDR;
1289 if (csr_db[reg_addr] == NULL) {
1290 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1291 csr_db[reg_addr]->data = new csr_data<DATA> ();
1292 }
1293
1294 csr_db[reg_addr]->rd_mask = PEU_CSR_DEV_STS_READ_MASK;
1295 csr_db[reg_addr]->wr_mask = PEU_CSR_DEV_STS_WRITE_MASK;
1296 csr_db[reg_addr]->clr_mask = PEU_CSR_DEV_STS_CLEAR_MASK;
1297 csr_db[reg_addr]->set_mask = PEU_CSR_DEV_STS_SET_MASK;
1298 csr_db[reg_addr]->toggle_mask = PEU_CSR_DEV_STS_TOGGLE_MASK;
1299 csr_db[reg_addr]->por_val = PEU_CSR_DEV_STS_POR_VALUE;
1300
1301 csr_db[reg_addr]->data->val = PEU_CSR_DEV_STS_POR_VALUE;
1302
1303 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1304 notify (*(csr_db[reg_addr]->data->events[i]));
1305 }
1306
1307 reg_addr = PEU_CSR_A_LNK_CAP_HW_ADDR;
1308 if (csr_db[reg_addr] == NULL) {
1309 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1310 csr_db[reg_addr]->data = new csr_data<DATA> ();
1311 }
1312
1313 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_CAP_READ_MASK;
1314 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_CAP_WRITE_MASK;
1315 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_CAP_CLEAR_MASK;
1316 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_CAP_SET_MASK;
1317 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_CAP_TOGGLE_MASK;
1318 csr_db[reg_addr]->por_val = PEU_CSR_LNK_CAP_POR_VALUE;
1319
1320 csr_db[reg_addr]->data->val = PEU_CSR_LNK_CAP_POR_VALUE;
1321
1322 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1323 notify (*(csr_db[reg_addr]->data->events[i]));
1324 }
1325
1326 reg_addr = PEU_CSR_B_LNK_CAP_HW_ADDR;
1327 if (csr_db[reg_addr] == NULL) {
1328 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1329 csr_db[reg_addr]->data = new csr_data<DATA> ();
1330 }
1331
1332 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_CAP_READ_MASK;
1333 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_CAP_WRITE_MASK;
1334 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_CAP_CLEAR_MASK;
1335 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_CAP_SET_MASK;
1336 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_CAP_TOGGLE_MASK;
1337 csr_db[reg_addr]->por_val = PEU_CSR_LNK_CAP_POR_VALUE;
1338
1339 csr_db[reg_addr]->data->val = PEU_CSR_LNK_CAP_POR_VALUE;
1340
1341 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1342 notify (*(csr_db[reg_addr]->data->events[i]));
1343 }
1344
1345 reg_addr = PEU_CSR_A_LNK_CTL_HW_ADDR;
1346 if (csr_db[reg_addr] == NULL) {
1347 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1348 csr_db[reg_addr]->data = new csr_data<DATA> ();
1349 }
1350
1351 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_CTL_READ_MASK;
1352 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_CTL_WRITE_MASK;
1353 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_CTL_CLEAR_MASK;
1354 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_CTL_SET_MASK;
1355 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_CTL_TOGGLE_MASK;
1356 csr_db[reg_addr]->por_val = PEU_CSR_LNK_CTL_POR_VALUE;
1357
1358 csr_db[reg_addr]->data->val = PEU_CSR_LNK_CTL_POR_VALUE;
1359
1360 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1361 notify (*(csr_db[reg_addr]->data->events[i]));
1362 }
1363
1364 reg_addr = PEU_CSR_B_LNK_CTL_HW_ADDR;
1365 if (csr_db[reg_addr] == NULL) {
1366 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1367 csr_db[reg_addr]->data = new csr_data<DATA> ();
1368 }
1369
1370 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_CTL_READ_MASK;
1371 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_CTL_WRITE_MASK;
1372 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_CTL_CLEAR_MASK;
1373 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_CTL_SET_MASK;
1374 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_CTL_TOGGLE_MASK;
1375 csr_db[reg_addr]->por_val = PEU_CSR_LNK_CTL_POR_VALUE;
1376
1377 csr_db[reg_addr]->data->val = PEU_CSR_LNK_CTL_POR_VALUE;
1378
1379 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1380 notify (*(csr_db[reg_addr]->data->events[i]));
1381 }
1382
1383 reg_addr = PEU_CSR_A_LNK_STS_HW_ADDR;
1384 if (csr_db[reg_addr] == NULL) {
1385 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1386 csr_db[reg_addr]->data = new csr_data<DATA> ();
1387 }
1388
1389 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_STS_READ_MASK;
1390 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_STS_WRITE_MASK;
1391 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_STS_CLEAR_MASK;
1392 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_STS_SET_MASK;
1393 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_STS_TOGGLE_MASK;
1394 csr_db[reg_addr]->por_val = PEU_CSR_LNK_STS_POR_VALUE;
1395
1396 csr_db[reg_addr]->data->val = PEU_CSR_LNK_STS_POR_VALUE;
1397
1398 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1399 notify (*(csr_db[reg_addr]->data->events[i]));
1400 }
1401
1402 reg_addr = PEU_CSR_B_LNK_STS_HW_ADDR;
1403 if (csr_db[reg_addr] == NULL) {
1404 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1405 csr_db[reg_addr]->data = new csr_data<DATA> ();
1406 }
1407
1408 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_STS_READ_MASK;
1409 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_STS_WRITE_MASK;
1410 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_STS_CLEAR_MASK;
1411 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_STS_SET_MASK;
1412 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_STS_TOGGLE_MASK;
1413 csr_db[reg_addr]->por_val = PEU_CSR_LNK_STS_POR_VALUE;
1414
1415 csr_db[reg_addr]->data->val = PEU_CSR_LNK_STS_POR_VALUE;
1416
1417 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1418 notify (*(csr_db[reg_addr]->data->events[i]));
1419 }
1420
1421 reg_addr = PEU_CSR_A_SLT_CAP_HW_ADDR;
1422 if (csr_db[reg_addr] == NULL) {
1423 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1424 csr_db[reg_addr]->data = new csr_data<DATA> ();
1425 }
1426
1427 csr_db[reg_addr]->rd_mask = PEU_CSR_SLT_CAP_READ_MASK;
1428 csr_db[reg_addr]->wr_mask = PEU_CSR_SLT_CAP_WRITE_MASK;
1429 csr_db[reg_addr]->clr_mask = PEU_CSR_SLT_CAP_CLEAR_MASK;
1430 csr_db[reg_addr]->set_mask = PEU_CSR_SLT_CAP_SET_MASK;
1431 csr_db[reg_addr]->toggle_mask = PEU_CSR_SLT_CAP_TOGGLE_MASK;
1432 csr_db[reg_addr]->por_val = PEU_CSR_SLT_CAP_POR_VALUE;
1433
1434 csr_db[reg_addr]->data->val = PEU_CSR_SLT_CAP_POR_VALUE;
1435
1436 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1437 notify (*(csr_db[reg_addr]->data->events[i]));
1438 }
1439
1440 reg_addr = PEU_CSR_B_SLT_CAP_HW_ADDR;
1441 if (csr_db[reg_addr] == NULL) {
1442 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1443 csr_db[reg_addr]->data = new csr_data<DATA> ();
1444 }
1445
1446 csr_db[reg_addr]->rd_mask = PEU_CSR_SLT_CAP_READ_MASK;
1447 csr_db[reg_addr]->wr_mask = PEU_CSR_SLT_CAP_WRITE_MASK;
1448 csr_db[reg_addr]->clr_mask = PEU_CSR_SLT_CAP_CLEAR_MASK;
1449 csr_db[reg_addr]->set_mask = PEU_CSR_SLT_CAP_SET_MASK;
1450 csr_db[reg_addr]->toggle_mask = PEU_CSR_SLT_CAP_TOGGLE_MASK;
1451 csr_db[reg_addr]->por_val = PEU_CSR_SLT_CAP_POR_VALUE;
1452
1453 csr_db[reg_addr]->data->val = PEU_CSR_SLT_CAP_POR_VALUE;
1454
1455 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1456 notify (*(csr_db[reg_addr]->data->events[i]));
1457 }
1458
1459 reg_addr = PEU_CSR_A_UE_LOG_HW_ADDR;
1460 if (csr_db[reg_addr] == NULL) {
1461 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1462 csr_db[reg_addr]->data = new csr_data<DATA> ();
1463 }
1464
1465 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_LOG_READ_MASK;
1466 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_LOG_WRITE_MASK;
1467 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_LOG_CLEAR_MASK;
1468 csr_db[reg_addr]->set_mask = PEU_CSR_UE_LOG_SET_MASK;
1469 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_LOG_TOGGLE_MASK;
1470 csr_db[reg_addr]->por_val = PEU_CSR_UE_LOG_POR_VALUE;
1471
1472 csr_db[reg_addr]->data->val = PEU_CSR_UE_LOG_POR_VALUE;
1473
1474 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1475 notify (*(csr_db[reg_addr]->data->events[i]));
1476 }
1477
1478 reg_addr = PEU_CSR_B_UE_LOG_HW_ADDR;
1479 if (csr_db[reg_addr] == NULL) {
1480 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1481 csr_db[reg_addr]->data = new csr_data<DATA> ();
1482 }
1483
1484 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_LOG_READ_MASK;
1485 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_LOG_WRITE_MASK;
1486 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_LOG_CLEAR_MASK;
1487 csr_db[reg_addr]->set_mask = PEU_CSR_UE_LOG_SET_MASK;
1488 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_LOG_TOGGLE_MASK;
1489 csr_db[reg_addr]->por_val = PEU_CSR_UE_LOG_POR_VALUE;
1490
1491 csr_db[reg_addr]->data->val = PEU_CSR_UE_LOG_POR_VALUE;
1492
1493 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1494 notify (*(csr_db[reg_addr]->data->events[i]));
1495 }
1496
1497 reg_addr = PEU_CSR_A_UE_INT_EN_HW_ADDR;
1498 if (csr_db[reg_addr] == NULL) {
1499 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1500 csr_db[reg_addr]->data = new csr_data<DATA> ();
1501 }
1502
1503 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_INT_EN_READ_MASK;
1504 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_INT_EN_WRITE_MASK;
1505 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_INT_EN_CLEAR_MASK;
1506 csr_db[reg_addr]->set_mask = PEU_CSR_UE_INT_EN_SET_MASK;
1507 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_INT_EN_TOGGLE_MASK;
1508 csr_db[reg_addr]->por_val = PEU_CSR_UE_INT_EN_POR_VALUE;
1509
1510 csr_db[reg_addr]->data->val = PEU_CSR_UE_INT_EN_POR_VALUE;
1511
1512 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1513 notify (*(csr_db[reg_addr]->data->events[i]));
1514 }
1515
1516 reg_addr = PEU_CSR_B_UE_INT_EN_HW_ADDR;
1517 if (csr_db[reg_addr] == NULL) {
1518 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1519 csr_db[reg_addr]->data = new csr_data<DATA> ();
1520 }
1521
1522 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_INT_EN_READ_MASK;
1523 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_INT_EN_WRITE_MASK;
1524 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_INT_EN_CLEAR_MASK;
1525 csr_db[reg_addr]->set_mask = PEU_CSR_UE_INT_EN_SET_MASK;
1526 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_INT_EN_TOGGLE_MASK;
1527 csr_db[reg_addr]->por_val = PEU_CSR_UE_INT_EN_POR_VALUE;
1528
1529 csr_db[reg_addr]->data->val = PEU_CSR_UE_INT_EN_POR_VALUE;
1530
1531 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1532 notify (*(csr_db[reg_addr]->data->events[i]));
1533 }
1534
1535 reg_addr = PEU_CSR_A_UE_EN_ERR_HW_ADDR;
1536 if (csr_db[reg_addr] == NULL) {
1537 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1538 csr_db[reg_addr]->data = new csr_data<DATA> ();
1539 }
1540
1541 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_EN_ERR_READ_MASK;
1542 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_EN_ERR_WRITE_MASK;
1543 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_EN_ERR_CLEAR_MASK;
1544 csr_db[reg_addr]->set_mask = PEU_CSR_UE_EN_ERR_SET_MASK;
1545 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_EN_ERR_TOGGLE_MASK;
1546 csr_db[reg_addr]->por_val = PEU_CSR_UE_EN_ERR_POR_VALUE;
1547
1548 csr_db[reg_addr]->data->val = PEU_CSR_UE_EN_ERR_POR_VALUE;
1549
1550 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1551 notify (*(csr_db[reg_addr]->data->events[i]));
1552 }
1553
1554 reg_addr = PEU_CSR_B_UE_EN_ERR_HW_ADDR;
1555 if (csr_db[reg_addr] == NULL) {
1556 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1557 csr_db[reg_addr]->data = new csr_data<DATA> ();
1558 }
1559
1560 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_EN_ERR_READ_MASK;
1561 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_EN_ERR_WRITE_MASK;
1562 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_EN_ERR_CLEAR_MASK;
1563 csr_db[reg_addr]->set_mask = PEU_CSR_UE_EN_ERR_SET_MASK;
1564 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_EN_ERR_TOGGLE_MASK;
1565 csr_db[reg_addr]->por_val = PEU_CSR_UE_EN_ERR_POR_VALUE;
1566
1567 csr_db[reg_addr]->data->val = PEU_CSR_UE_EN_ERR_POR_VALUE;
1568
1569 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1570 notify (*(csr_db[reg_addr]->data->events[i]));
1571 }
1572
1573 reg_addr = PEU_CSR_A_UE_ERR_RW1C_ALIAS_HW_ADDR;
1574 if (csr_db[reg_addr] == NULL) {
1575 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1576 csr_db[reg_addr]->data = new csr_data<DATA> ();
1577 }
1578
1579 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_READ_MASK;
1580 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_WRITE_MASK;
1581 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_CLEAR_MASK;
1582 csr_db[reg_addr]->set_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_SET_MASK;
1583 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_TOGGLE_MASK;
1584 csr_db[reg_addr]->por_val = PEU_CSR_UE_ERR_RW1C_ALIAS_POR_VALUE;
1585
1586 csr_db[reg_addr]->data->val = PEU_CSR_UE_ERR_RW1C_ALIAS_POR_VALUE;
1587 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
1588 csr_db[reg_addr]->sw_reset_val_hold = false;
1589
1590 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1591 notify (*(csr_db[reg_addr]->data->events[i]));
1592 }
1593
1594 reg_addr = PEU_CSR_B_UE_ERR_RW1C_ALIAS_HW_ADDR;
1595 if (csr_db[reg_addr] == NULL) {
1596 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1597 csr_db[reg_addr]->data = new csr_data<DATA> ();
1598 }
1599
1600 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_READ_MASK;
1601 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_WRITE_MASK;
1602 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_CLEAR_MASK;
1603 csr_db[reg_addr]->set_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_SET_MASK;
1604 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_ERR_RW1C_ALIAS_TOGGLE_MASK;
1605 csr_db[reg_addr]->por_val = PEU_CSR_UE_ERR_RW1C_ALIAS_POR_VALUE;
1606
1607 csr_db[reg_addr]->data->val = PEU_CSR_UE_ERR_RW1C_ALIAS_POR_VALUE;
1608 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
1609 csr_db[reg_addr]->sw_reset_val_hold = false;
1610
1611 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1612 notify (*(csr_db[reg_addr]->data->events[i]));
1613 }
1614
1615 reg_addr = PEU_CSR_A_UE_ERR_RW1S_ALIAS_HW_ADDR;
1616 if (csr_db[reg_addr] == NULL) {
1617 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1618 csr_db[reg_addr]->data = csr_db[PEU_CSR_A_UE_ERR_RW1C_ALIAS_HW_ADDR]->data;
1619 }
1620
1621 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_READ_MASK;
1622 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_WRITE_MASK;
1623 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_CLEAR_MASK;
1624 csr_db[reg_addr]->set_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_SET_MASK;
1625 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_TOGGLE_MASK;
1626 csr_db[reg_addr]->por_val = PEU_CSR_UE_ERR_RW1S_ALIAS_POR_VALUE;
1627
1628 csr_db[reg_addr]->data->val = PEU_CSR_UE_ERR_RW1S_ALIAS_POR_VALUE;
1629 csr_db[reg_addr]->intf_type = WRITE1_SET;
1630 csr_db[reg_addr]->sw_reset_val_hold = false;
1631
1632 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1633 notify (*(csr_db[reg_addr]->data->events[i]));
1634 }
1635
1636 reg_addr = PEU_CSR_B_UE_ERR_RW1S_ALIAS_HW_ADDR;
1637 if (csr_db[reg_addr] == NULL) {
1638 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1639 csr_db[reg_addr]->data = csr_db[PEU_CSR_B_UE_ERR_RW1C_ALIAS_HW_ADDR]->data;
1640 }
1641
1642 csr_db[reg_addr]->rd_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_READ_MASK;
1643 csr_db[reg_addr]->wr_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_WRITE_MASK;
1644 csr_db[reg_addr]->clr_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_CLEAR_MASK;
1645 csr_db[reg_addr]->set_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_SET_MASK;
1646 csr_db[reg_addr]->toggle_mask = PEU_CSR_UE_ERR_RW1S_ALIAS_TOGGLE_MASK;
1647 csr_db[reg_addr]->por_val = PEU_CSR_UE_ERR_RW1S_ALIAS_POR_VALUE;
1648
1649 csr_db[reg_addr]->data->val = PEU_CSR_UE_ERR_RW1S_ALIAS_POR_VALUE;
1650 csr_db[reg_addr]->intf_type = WRITE1_SET;
1651 csr_db[reg_addr]->sw_reset_val_hold = false;
1652
1653 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1654 notify (*(csr_db[reg_addr]->data->events[i]));
1655 }
1656
1657 reg_addr = PEU_CSR_A_RUE_HDR1_HW_ADDR;
1658 if (csr_db[reg_addr] == NULL) {
1659 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1660 csr_db[reg_addr]->data = new csr_data<DATA> ();
1661 }
1662
1663 csr_db[reg_addr]->rd_mask = PEU_CSR_RUE_HDR1_READ_MASK;
1664 csr_db[reg_addr]->wr_mask = PEU_CSR_RUE_HDR1_WRITE_MASK;
1665 csr_db[reg_addr]->clr_mask = PEU_CSR_RUE_HDR1_CLEAR_MASK;
1666 csr_db[reg_addr]->set_mask = PEU_CSR_RUE_HDR1_SET_MASK;
1667 csr_db[reg_addr]->toggle_mask = PEU_CSR_RUE_HDR1_TOGGLE_MASK;
1668 csr_db[reg_addr]->por_val = PEU_CSR_RUE_HDR1_POR_VALUE;
1669
1670 csr_db[reg_addr]->data->val = PEU_CSR_RUE_HDR1_POR_VALUE;
1671
1672 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1673 notify (*(csr_db[reg_addr]->data->events[i]));
1674 }
1675
1676 reg_addr = PEU_CSR_B_RUE_HDR1_HW_ADDR;
1677 if (csr_db[reg_addr] == NULL) {
1678 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1679 csr_db[reg_addr]->data = new csr_data<DATA> ();
1680 }
1681
1682 csr_db[reg_addr]->rd_mask = PEU_CSR_RUE_HDR1_READ_MASK;
1683 csr_db[reg_addr]->wr_mask = PEU_CSR_RUE_HDR1_WRITE_MASK;
1684 csr_db[reg_addr]->clr_mask = PEU_CSR_RUE_HDR1_CLEAR_MASK;
1685 csr_db[reg_addr]->set_mask = PEU_CSR_RUE_HDR1_SET_MASK;
1686 csr_db[reg_addr]->toggle_mask = PEU_CSR_RUE_HDR1_TOGGLE_MASK;
1687 csr_db[reg_addr]->por_val = PEU_CSR_RUE_HDR1_POR_VALUE;
1688
1689 csr_db[reg_addr]->data->val = PEU_CSR_RUE_HDR1_POR_VALUE;
1690
1691 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1692 notify (*(csr_db[reg_addr]->data->events[i]));
1693 }
1694
1695 reg_addr = PEU_CSR_A_RUE_HDR2_HW_ADDR;
1696 if (csr_db[reg_addr] == NULL) {
1697 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1698 csr_db[reg_addr]->data = new csr_data<DATA> ();
1699 }
1700
1701 csr_db[reg_addr]->rd_mask = PEU_CSR_RUE_HDR2_READ_MASK;
1702 csr_db[reg_addr]->wr_mask = PEU_CSR_RUE_HDR2_WRITE_MASK;
1703 csr_db[reg_addr]->clr_mask = PEU_CSR_RUE_HDR2_CLEAR_MASK;
1704 csr_db[reg_addr]->set_mask = PEU_CSR_RUE_HDR2_SET_MASK;
1705 csr_db[reg_addr]->toggle_mask = PEU_CSR_RUE_HDR2_TOGGLE_MASK;
1706 csr_db[reg_addr]->por_val = PEU_CSR_RUE_HDR2_POR_VALUE;
1707
1708 csr_db[reg_addr]->data->val = PEU_CSR_RUE_HDR2_POR_VALUE;
1709
1710 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1711 notify (*(csr_db[reg_addr]->data->events[i]));
1712 }
1713
1714 reg_addr = PEU_CSR_B_RUE_HDR2_HW_ADDR;
1715 if (csr_db[reg_addr] == NULL) {
1716 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1717 csr_db[reg_addr]->data = new csr_data<DATA> ();
1718 }
1719
1720 csr_db[reg_addr]->rd_mask = PEU_CSR_RUE_HDR2_READ_MASK;
1721 csr_db[reg_addr]->wr_mask = PEU_CSR_RUE_HDR2_WRITE_MASK;
1722 csr_db[reg_addr]->clr_mask = PEU_CSR_RUE_HDR2_CLEAR_MASK;
1723 csr_db[reg_addr]->set_mask = PEU_CSR_RUE_HDR2_SET_MASK;
1724 csr_db[reg_addr]->toggle_mask = PEU_CSR_RUE_HDR2_TOGGLE_MASK;
1725 csr_db[reg_addr]->por_val = PEU_CSR_RUE_HDR2_POR_VALUE;
1726
1727 csr_db[reg_addr]->data->val = PEU_CSR_RUE_HDR2_POR_VALUE;
1728
1729 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1730 notify (*(csr_db[reg_addr]->data->events[i]));
1731 }
1732
1733 reg_addr = PEU_CSR_A_TUE_HDR1_HW_ADDR;
1734 if (csr_db[reg_addr] == NULL) {
1735 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1736 csr_db[reg_addr]->data = new csr_data<DATA> ();
1737 }
1738
1739 csr_db[reg_addr]->rd_mask = PEU_CSR_TUE_HDR1_READ_MASK;
1740 csr_db[reg_addr]->wr_mask = PEU_CSR_TUE_HDR1_WRITE_MASK;
1741 csr_db[reg_addr]->clr_mask = PEU_CSR_TUE_HDR1_CLEAR_MASK;
1742 csr_db[reg_addr]->set_mask = PEU_CSR_TUE_HDR1_SET_MASK;
1743 csr_db[reg_addr]->toggle_mask = PEU_CSR_TUE_HDR1_TOGGLE_MASK;
1744 csr_db[reg_addr]->por_val = PEU_CSR_TUE_HDR1_POR_VALUE;
1745
1746 csr_db[reg_addr]->data->val = PEU_CSR_TUE_HDR1_POR_VALUE;
1747
1748 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1749 notify (*(csr_db[reg_addr]->data->events[i]));
1750 }
1751
1752 reg_addr = PEU_CSR_B_TUE_HDR1_HW_ADDR;
1753 if (csr_db[reg_addr] == NULL) {
1754 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1755 csr_db[reg_addr]->data = new csr_data<DATA> ();
1756 }
1757
1758 csr_db[reg_addr]->rd_mask = PEU_CSR_TUE_HDR1_READ_MASK;
1759 csr_db[reg_addr]->wr_mask = PEU_CSR_TUE_HDR1_WRITE_MASK;
1760 csr_db[reg_addr]->clr_mask = PEU_CSR_TUE_HDR1_CLEAR_MASK;
1761 csr_db[reg_addr]->set_mask = PEU_CSR_TUE_HDR1_SET_MASK;
1762 csr_db[reg_addr]->toggle_mask = PEU_CSR_TUE_HDR1_TOGGLE_MASK;
1763 csr_db[reg_addr]->por_val = PEU_CSR_TUE_HDR1_POR_VALUE;
1764
1765 csr_db[reg_addr]->data->val = PEU_CSR_TUE_HDR1_POR_VALUE;
1766
1767 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1768 notify (*(csr_db[reg_addr]->data->events[i]));
1769 }
1770
1771 reg_addr = PEU_CSR_A_TUE_HDR2_HW_ADDR;
1772 if (csr_db[reg_addr] == NULL) {
1773 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1774 csr_db[reg_addr]->data = new csr_data<DATA> ();
1775 }
1776
1777 csr_db[reg_addr]->rd_mask = PEU_CSR_TUE_HDR2_READ_MASK;
1778 csr_db[reg_addr]->wr_mask = PEU_CSR_TUE_HDR2_WRITE_MASK;
1779 csr_db[reg_addr]->clr_mask = PEU_CSR_TUE_HDR2_CLEAR_MASK;
1780 csr_db[reg_addr]->set_mask = PEU_CSR_TUE_HDR2_SET_MASK;
1781 csr_db[reg_addr]->toggle_mask = PEU_CSR_TUE_HDR2_TOGGLE_MASK;
1782 csr_db[reg_addr]->por_val = PEU_CSR_TUE_HDR2_POR_VALUE;
1783
1784 csr_db[reg_addr]->data->val = PEU_CSR_TUE_HDR2_POR_VALUE;
1785
1786 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1787 notify (*(csr_db[reg_addr]->data->events[i]));
1788 }
1789
1790 reg_addr = PEU_CSR_B_TUE_HDR2_HW_ADDR;
1791 if (csr_db[reg_addr] == NULL) {
1792 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1793 csr_db[reg_addr]->data = new csr_data<DATA> ();
1794 }
1795
1796 csr_db[reg_addr]->rd_mask = PEU_CSR_TUE_HDR2_READ_MASK;
1797 csr_db[reg_addr]->wr_mask = PEU_CSR_TUE_HDR2_WRITE_MASK;
1798 csr_db[reg_addr]->clr_mask = PEU_CSR_TUE_HDR2_CLEAR_MASK;
1799 csr_db[reg_addr]->set_mask = PEU_CSR_TUE_HDR2_SET_MASK;
1800 csr_db[reg_addr]->toggle_mask = PEU_CSR_TUE_HDR2_TOGGLE_MASK;
1801 csr_db[reg_addr]->por_val = PEU_CSR_TUE_HDR2_POR_VALUE;
1802
1803 csr_db[reg_addr]->data->val = PEU_CSR_TUE_HDR2_POR_VALUE;
1804
1805 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1806 notify (*(csr_db[reg_addr]->data->events[i]));
1807 }
1808
1809 reg_addr = PEU_CSR_A_CE_LOG_HW_ADDR;
1810 if (csr_db[reg_addr] == NULL) {
1811 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1812 csr_db[reg_addr]->data = new csr_data<DATA> ();
1813 }
1814
1815 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_LOG_READ_MASK;
1816 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_LOG_WRITE_MASK;
1817 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_LOG_CLEAR_MASK;
1818 csr_db[reg_addr]->set_mask = PEU_CSR_CE_LOG_SET_MASK;
1819 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_LOG_TOGGLE_MASK;
1820 csr_db[reg_addr]->por_val = PEU_CSR_CE_LOG_POR_VALUE;
1821
1822 csr_db[reg_addr]->data->val = PEU_CSR_CE_LOG_POR_VALUE;
1823
1824 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1825 notify (*(csr_db[reg_addr]->data->events[i]));
1826 }
1827
1828 reg_addr = PEU_CSR_B_CE_LOG_HW_ADDR;
1829 if (csr_db[reg_addr] == NULL) {
1830 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1831 csr_db[reg_addr]->data = new csr_data<DATA> ();
1832 }
1833
1834 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_LOG_READ_MASK;
1835 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_LOG_WRITE_MASK;
1836 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_LOG_CLEAR_MASK;
1837 csr_db[reg_addr]->set_mask = PEU_CSR_CE_LOG_SET_MASK;
1838 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_LOG_TOGGLE_MASK;
1839 csr_db[reg_addr]->por_val = PEU_CSR_CE_LOG_POR_VALUE;
1840
1841 csr_db[reg_addr]->data->val = PEU_CSR_CE_LOG_POR_VALUE;
1842
1843 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1844 notify (*(csr_db[reg_addr]->data->events[i]));
1845 }
1846
1847 reg_addr = PEU_CSR_A_CE_INT_EN_HW_ADDR;
1848 if (csr_db[reg_addr] == NULL) {
1849 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1850 csr_db[reg_addr]->data = new csr_data<DATA> ();
1851 }
1852
1853 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_INT_EN_READ_MASK;
1854 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_INT_EN_WRITE_MASK;
1855 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_INT_EN_CLEAR_MASK;
1856 csr_db[reg_addr]->set_mask = PEU_CSR_CE_INT_EN_SET_MASK;
1857 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_INT_EN_TOGGLE_MASK;
1858 csr_db[reg_addr]->por_val = PEU_CSR_CE_INT_EN_POR_VALUE;
1859
1860 csr_db[reg_addr]->data->val = PEU_CSR_CE_INT_EN_POR_VALUE;
1861
1862 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1863 notify (*(csr_db[reg_addr]->data->events[i]));
1864 }
1865
1866 reg_addr = PEU_CSR_B_CE_INT_EN_HW_ADDR;
1867 if (csr_db[reg_addr] == NULL) {
1868 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1869 csr_db[reg_addr]->data = new csr_data<DATA> ();
1870 }
1871
1872 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_INT_EN_READ_MASK;
1873 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_INT_EN_WRITE_MASK;
1874 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_INT_EN_CLEAR_MASK;
1875 csr_db[reg_addr]->set_mask = PEU_CSR_CE_INT_EN_SET_MASK;
1876 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_INT_EN_TOGGLE_MASK;
1877 csr_db[reg_addr]->por_val = PEU_CSR_CE_INT_EN_POR_VALUE;
1878
1879 csr_db[reg_addr]->data->val = PEU_CSR_CE_INT_EN_POR_VALUE;
1880
1881 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1882 notify (*(csr_db[reg_addr]->data->events[i]));
1883 }
1884
1885 reg_addr = PEU_CSR_A_CE_EN_ERR_HW_ADDR;
1886 if (csr_db[reg_addr] == NULL) {
1887 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1888 csr_db[reg_addr]->data = new csr_data<DATA> ();
1889 }
1890
1891 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_EN_ERR_READ_MASK;
1892 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_EN_ERR_WRITE_MASK;
1893 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_EN_ERR_CLEAR_MASK;
1894 csr_db[reg_addr]->set_mask = PEU_CSR_CE_EN_ERR_SET_MASK;
1895 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_EN_ERR_TOGGLE_MASK;
1896 csr_db[reg_addr]->por_val = PEU_CSR_CE_EN_ERR_POR_VALUE;
1897
1898 csr_db[reg_addr]->data->val = PEU_CSR_CE_EN_ERR_POR_VALUE;
1899
1900 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1901 notify (*(csr_db[reg_addr]->data->events[i]));
1902 }
1903
1904 reg_addr = PEU_CSR_B_CE_EN_ERR_HW_ADDR;
1905 if (csr_db[reg_addr] == NULL) {
1906 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1907 csr_db[reg_addr]->data = new csr_data<DATA> ();
1908 }
1909
1910 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_EN_ERR_READ_MASK;
1911 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_EN_ERR_WRITE_MASK;
1912 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_EN_ERR_CLEAR_MASK;
1913 csr_db[reg_addr]->set_mask = PEU_CSR_CE_EN_ERR_SET_MASK;
1914 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_EN_ERR_TOGGLE_MASK;
1915 csr_db[reg_addr]->por_val = PEU_CSR_CE_EN_ERR_POR_VALUE;
1916
1917 csr_db[reg_addr]->data->val = PEU_CSR_CE_EN_ERR_POR_VALUE;
1918
1919 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1920 notify (*(csr_db[reg_addr]->data->events[i]));
1921 }
1922
1923 reg_addr = PEU_CSR_A_CE_ERR_RW1C_ALIAS_HW_ADDR;
1924 if (csr_db[reg_addr] == NULL) {
1925 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1926 csr_db[reg_addr]->data = new csr_data<DATA> ();
1927 }
1928
1929 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_READ_MASK;
1930 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_WRITE_MASK;
1931 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_CLEAR_MASK;
1932 csr_db[reg_addr]->set_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_SET_MASK;
1933 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_TOGGLE_MASK;
1934 csr_db[reg_addr]->por_val = PEU_CSR_CE_ERR_RW1C_ALIAS_POR_VALUE;
1935
1936 csr_db[reg_addr]->data->val = PEU_CSR_CE_ERR_RW1C_ALIAS_POR_VALUE;
1937 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
1938 csr_db[reg_addr]->sw_reset_val_hold = false;
1939
1940 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1941 notify (*(csr_db[reg_addr]->data->events[i]));
1942 }
1943
1944 reg_addr = PEU_CSR_B_CE_ERR_RW1C_ALIAS_HW_ADDR;
1945 if (csr_db[reg_addr] == NULL) {
1946 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1947 csr_db[reg_addr]->data = new csr_data<DATA> ();
1948 }
1949
1950 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_READ_MASK;
1951 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_WRITE_MASK;
1952 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_CLEAR_MASK;
1953 csr_db[reg_addr]->set_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_SET_MASK;
1954 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_ERR_RW1C_ALIAS_TOGGLE_MASK;
1955 csr_db[reg_addr]->por_val = PEU_CSR_CE_ERR_RW1C_ALIAS_POR_VALUE;
1956
1957 csr_db[reg_addr]->data->val = PEU_CSR_CE_ERR_RW1C_ALIAS_POR_VALUE;
1958 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
1959 csr_db[reg_addr]->sw_reset_val_hold = false;
1960
1961 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1962 notify (*(csr_db[reg_addr]->data->events[i]));
1963 }
1964
1965 reg_addr = PEU_CSR_A_CE_ERR_RW1S_ALIAS_HW_ADDR;
1966 if (csr_db[reg_addr] == NULL) {
1967 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1968 csr_db[reg_addr]->data = csr_db[PEU_CSR_A_CE_ERR_RW1C_ALIAS_HW_ADDR]->data;
1969 }
1970
1971 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_READ_MASK;
1972 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_WRITE_MASK;
1973 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_CLEAR_MASK;
1974 csr_db[reg_addr]->set_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_SET_MASK;
1975 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_TOGGLE_MASK;
1976 csr_db[reg_addr]->por_val = PEU_CSR_CE_ERR_RW1S_ALIAS_POR_VALUE;
1977
1978 csr_db[reg_addr]->data->val = PEU_CSR_CE_ERR_RW1S_ALIAS_POR_VALUE;
1979 csr_db[reg_addr]->intf_type = WRITE1_SET;
1980 csr_db[reg_addr]->sw_reset_val_hold = false;
1981
1982 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
1983 notify (*(csr_db[reg_addr]->data->events[i]));
1984 }
1985
1986 reg_addr = PEU_CSR_B_CE_ERR_RW1S_ALIAS_HW_ADDR;
1987 if (csr_db[reg_addr] == NULL) {
1988 csr_db[reg_addr] = new csr_data_intf<DATA> ();
1989 csr_db[reg_addr]->data = csr_db[PEU_CSR_B_CE_ERR_RW1C_ALIAS_HW_ADDR]->data;
1990 }
1991
1992 csr_db[reg_addr]->rd_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_READ_MASK;
1993 csr_db[reg_addr]->wr_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_WRITE_MASK;
1994 csr_db[reg_addr]->clr_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_CLEAR_MASK;
1995 csr_db[reg_addr]->set_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_SET_MASK;
1996 csr_db[reg_addr]->toggle_mask = PEU_CSR_CE_ERR_RW1S_ALIAS_TOGGLE_MASK;
1997 csr_db[reg_addr]->por_val = PEU_CSR_CE_ERR_RW1S_ALIAS_POR_VALUE;
1998
1999 csr_db[reg_addr]->data->val = PEU_CSR_CE_ERR_RW1S_ALIAS_POR_VALUE;
2000 csr_db[reg_addr]->intf_type = WRITE1_SET;
2001 csr_db[reg_addr]->sw_reset_val_hold = false;
2002
2003 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2004 notify (*(csr_db[reg_addr]->data->events[i]));
2005 }
2006
2007 reg_addr = PEU_CSR_A_PEU_DLPL_SERDES_REV_HW_ADDR;
2008 if (csr_db[reg_addr] == NULL) {
2009 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2010 csr_db[reg_addr]->data = new csr_data<DATA> ();
2011 }
2012
2013 csr_db[reg_addr]->rd_mask = PEU_CSR_PEU_DLPL_SERDES_REV_READ_MASK;
2014 csr_db[reg_addr]->wr_mask = PEU_CSR_PEU_DLPL_SERDES_REV_WRITE_MASK;
2015 csr_db[reg_addr]->clr_mask = PEU_CSR_PEU_DLPL_SERDES_REV_CLEAR_MASK;
2016 csr_db[reg_addr]->set_mask = PEU_CSR_PEU_DLPL_SERDES_REV_SET_MASK;
2017 csr_db[reg_addr]->toggle_mask = PEU_CSR_PEU_DLPL_SERDES_REV_TOGGLE_MASK;
2018 csr_db[reg_addr]->por_val = PEU_CSR_PEU_DLPL_SERDES_REV_POR_VALUE;
2019
2020 csr_db[reg_addr]->data->val = PEU_CSR_PEU_DLPL_SERDES_REV_POR_VALUE;
2021
2022 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2023 notify (*(csr_db[reg_addr]->data->events[i]));
2024 }
2025
2026 reg_addr = PEU_CSR_B_PEU_DLPL_SERDES_REV_HW_ADDR;
2027 if (csr_db[reg_addr] == NULL) {
2028 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2029 csr_db[reg_addr]->data = new csr_data<DATA> ();
2030 }
2031
2032 csr_db[reg_addr]->rd_mask = PEU_CSR_PEU_DLPL_SERDES_REV_READ_MASK;
2033 csr_db[reg_addr]->wr_mask = PEU_CSR_PEU_DLPL_SERDES_REV_WRITE_MASK;
2034 csr_db[reg_addr]->clr_mask = PEU_CSR_PEU_DLPL_SERDES_REV_CLEAR_MASK;
2035 csr_db[reg_addr]->set_mask = PEU_CSR_PEU_DLPL_SERDES_REV_SET_MASK;
2036 csr_db[reg_addr]->toggle_mask = PEU_CSR_PEU_DLPL_SERDES_REV_TOGGLE_MASK;
2037 csr_db[reg_addr]->por_val = PEU_CSR_PEU_DLPL_SERDES_REV_POR_VALUE;
2038
2039 csr_db[reg_addr]->data->val = PEU_CSR_PEU_DLPL_SERDES_REV_POR_VALUE;
2040
2041 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2042 notify (*(csr_db[reg_addr]->data->events[i]));
2043 }
2044
2045 reg_addr = PEU_CSR_A_ACKNAK_THRESH_HW_ADDR;
2046 if (csr_db[reg_addr] == NULL) {
2047 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2048 csr_db[reg_addr]->data = new csr_data<DATA> ();
2049 }
2050
2051 csr_db[reg_addr]->rd_mask = PEU_CSR_ACKNAK_THRESH_READ_MASK;
2052 csr_db[reg_addr]->wr_mask = PEU_CSR_ACKNAK_THRESH_WRITE_MASK;
2053 csr_db[reg_addr]->clr_mask = PEU_CSR_ACKNAK_THRESH_CLEAR_MASK;
2054 csr_db[reg_addr]->set_mask = PEU_CSR_ACKNAK_THRESH_SET_MASK;
2055 csr_db[reg_addr]->toggle_mask = PEU_CSR_ACKNAK_THRESH_TOGGLE_MASK;
2056 csr_db[reg_addr]->por_val = PEU_CSR_ACKNAK_THRESH_POR_VALUE;
2057
2058 csr_db[reg_addr]->data->val = PEU_CSR_ACKNAK_THRESH_POR_VALUE;
2059
2060 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2061 notify (*(csr_db[reg_addr]->data->events[i]));
2062 }
2063
2064 reg_addr = PEU_CSR_B_ACKNAK_THRESH_HW_ADDR;
2065 if (csr_db[reg_addr] == NULL) {
2066 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2067 csr_db[reg_addr]->data = new csr_data<DATA> ();
2068 }
2069
2070 csr_db[reg_addr]->rd_mask = PEU_CSR_ACKNAK_THRESH_READ_MASK;
2071 csr_db[reg_addr]->wr_mask = PEU_CSR_ACKNAK_THRESH_WRITE_MASK;
2072 csr_db[reg_addr]->clr_mask = PEU_CSR_ACKNAK_THRESH_CLEAR_MASK;
2073 csr_db[reg_addr]->set_mask = PEU_CSR_ACKNAK_THRESH_SET_MASK;
2074 csr_db[reg_addr]->toggle_mask = PEU_CSR_ACKNAK_THRESH_TOGGLE_MASK;
2075 csr_db[reg_addr]->por_val = PEU_CSR_ACKNAK_THRESH_POR_VALUE;
2076
2077 csr_db[reg_addr]->data->val = PEU_CSR_ACKNAK_THRESH_POR_VALUE;
2078
2079 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2080 notify (*(csr_db[reg_addr]->data->events[i]));
2081 }
2082
2083 reg_addr = PEU_CSR_A_ACKNAK_TIMER_HW_ADDR;
2084 if (csr_db[reg_addr] == NULL) {
2085 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2086 csr_db[reg_addr]->data = new csr_data<DATA> ();
2087 }
2088
2089 csr_db[reg_addr]->rd_mask = PEU_CSR_ACKNAK_TIMER_READ_MASK;
2090 csr_db[reg_addr]->wr_mask = PEU_CSR_ACKNAK_TIMER_WRITE_MASK;
2091 csr_db[reg_addr]->clr_mask = PEU_CSR_ACKNAK_TIMER_CLEAR_MASK;
2092 csr_db[reg_addr]->set_mask = PEU_CSR_ACKNAK_TIMER_SET_MASK;
2093 csr_db[reg_addr]->toggle_mask = PEU_CSR_ACKNAK_TIMER_TOGGLE_MASK;
2094 csr_db[reg_addr]->por_val = PEU_CSR_ACKNAK_TIMER_POR_VALUE;
2095
2096 csr_db[reg_addr]->data->val = PEU_CSR_ACKNAK_TIMER_POR_VALUE;
2097
2098 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2099 notify (*(csr_db[reg_addr]->data->events[i]));
2100 }
2101
2102 reg_addr = PEU_CSR_B_ACKNAK_TIMER_HW_ADDR;
2103 if (csr_db[reg_addr] == NULL) {
2104 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2105 csr_db[reg_addr]->data = new csr_data<DATA> ();
2106 }
2107
2108 csr_db[reg_addr]->rd_mask = PEU_CSR_ACKNAK_TIMER_READ_MASK;
2109 csr_db[reg_addr]->wr_mask = PEU_CSR_ACKNAK_TIMER_WRITE_MASK;
2110 csr_db[reg_addr]->clr_mask = PEU_CSR_ACKNAK_TIMER_CLEAR_MASK;
2111 csr_db[reg_addr]->set_mask = PEU_CSR_ACKNAK_TIMER_SET_MASK;
2112 csr_db[reg_addr]->toggle_mask = PEU_CSR_ACKNAK_TIMER_TOGGLE_MASK;
2113 csr_db[reg_addr]->por_val = PEU_CSR_ACKNAK_TIMER_POR_VALUE;
2114
2115 csr_db[reg_addr]->data->val = PEU_CSR_ACKNAK_TIMER_POR_VALUE;
2116
2117 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2118 notify (*(csr_db[reg_addr]->data->events[i]));
2119 }
2120
2121 reg_addr = PEU_CSR_A_REPLAY_TIM_THRESH_HW_ADDR;
2122 if (csr_db[reg_addr] == NULL) {
2123 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2124 csr_db[reg_addr]->data = new csr_data<DATA> ();
2125 }
2126
2127 csr_db[reg_addr]->rd_mask = PEU_CSR_REPLAY_TIM_THRESH_READ_MASK;
2128 csr_db[reg_addr]->wr_mask = PEU_CSR_REPLAY_TIM_THRESH_WRITE_MASK;
2129 csr_db[reg_addr]->clr_mask = PEU_CSR_REPLAY_TIM_THRESH_CLEAR_MASK;
2130 csr_db[reg_addr]->set_mask = PEU_CSR_REPLAY_TIM_THRESH_SET_MASK;
2131 csr_db[reg_addr]->toggle_mask = PEU_CSR_REPLAY_TIM_THRESH_TOGGLE_MASK;
2132 csr_db[reg_addr]->por_val = PEU_CSR_REPLAY_TIM_THRESH_POR_VALUE;
2133
2134 csr_db[reg_addr]->data->val = PEU_CSR_REPLAY_TIM_THRESH_POR_VALUE;
2135
2136 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2137 notify (*(csr_db[reg_addr]->data->events[i]));
2138 }
2139
2140 reg_addr = PEU_CSR_B_REPLAY_TIM_THRESH_HW_ADDR;
2141 if (csr_db[reg_addr] == NULL) {
2142 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2143 csr_db[reg_addr]->data = new csr_data<DATA> ();
2144 }
2145
2146 csr_db[reg_addr]->rd_mask = PEU_CSR_REPLAY_TIM_THRESH_READ_MASK;
2147 csr_db[reg_addr]->wr_mask = PEU_CSR_REPLAY_TIM_THRESH_WRITE_MASK;
2148 csr_db[reg_addr]->clr_mask = PEU_CSR_REPLAY_TIM_THRESH_CLEAR_MASK;
2149 csr_db[reg_addr]->set_mask = PEU_CSR_REPLAY_TIM_THRESH_SET_MASK;
2150 csr_db[reg_addr]->toggle_mask = PEU_CSR_REPLAY_TIM_THRESH_TOGGLE_MASK;
2151 csr_db[reg_addr]->por_val = PEU_CSR_REPLAY_TIM_THRESH_POR_VALUE;
2152
2153 csr_db[reg_addr]->data->val = PEU_CSR_REPLAY_TIM_THRESH_POR_VALUE;
2154
2155 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2156 notify (*(csr_db[reg_addr]->data->events[i]));
2157 }
2158
2159 reg_addr = PEU_CSR_A_REPLAY_TIMER_HW_ADDR;
2160 if (csr_db[reg_addr] == NULL) {
2161 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2162 csr_db[reg_addr]->data = new csr_data<DATA> ();
2163 }
2164
2165 csr_db[reg_addr]->rd_mask = PEU_CSR_REPLAY_TIMER_READ_MASK;
2166 csr_db[reg_addr]->wr_mask = PEU_CSR_REPLAY_TIMER_WRITE_MASK;
2167 csr_db[reg_addr]->clr_mask = PEU_CSR_REPLAY_TIMER_CLEAR_MASK;
2168 csr_db[reg_addr]->set_mask = PEU_CSR_REPLAY_TIMER_SET_MASK;
2169 csr_db[reg_addr]->toggle_mask = PEU_CSR_REPLAY_TIMER_TOGGLE_MASK;
2170 csr_db[reg_addr]->por_val = PEU_CSR_REPLAY_TIMER_POR_VALUE;
2171
2172 csr_db[reg_addr]->data->val = PEU_CSR_REPLAY_TIMER_POR_VALUE;
2173
2174 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2175 notify (*(csr_db[reg_addr]->data->events[i]));
2176 }
2177
2178 reg_addr = PEU_CSR_B_REPLAY_TIMER_HW_ADDR;
2179 if (csr_db[reg_addr] == NULL) {
2180 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2181 csr_db[reg_addr]->data = new csr_data<DATA> ();
2182 }
2183
2184 csr_db[reg_addr]->rd_mask = PEU_CSR_REPLAY_TIMER_READ_MASK;
2185 csr_db[reg_addr]->wr_mask = PEU_CSR_REPLAY_TIMER_WRITE_MASK;
2186 csr_db[reg_addr]->clr_mask = PEU_CSR_REPLAY_TIMER_CLEAR_MASK;
2187 csr_db[reg_addr]->set_mask = PEU_CSR_REPLAY_TIMER_SET_MASK;
2188 csr_db[reg_addr]->toggle_mask = PEU_CSR_REPLAY_TIMER_TOGGLE_MASK;
2189 csr_db[reg_addr]->por_val = PEU_CSR_REPLAY_TIMER_POR_VALUE;
2190
2191 csr_db[reg_addr]->data->val = PEU_CSR_REPLAY_TIMER_POR_VALUE;
2192
2193 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2194 notify (*(csr_db[reg_addr]->data->events[i]));
2195 }
2196
2197 reg_addr = PEU_CSR_A_VEN_DLLP_MSG_HW_ADDR;
2198 if (csr_db[reg_addr] == NULL) {
2199 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2200 csr_db[reg_addr]->data = new csr_data<DATA> ();
2201 }
2202
2203 csr_db[reg_addr]->rd_mask = PEU_CSR_VEN_DLLP_MSG_READ_MASK;
2204 csr_db[reg_addr]->wr_mask = PEU_CSR_VEN_DLLP_MSG_WRITE_MASK;
2205 csr_db[reg_addr]->clr_mask = PEU_CSR_VEN_DLLP_MSG_CLEAR_MASK;
2206 csr_db[reg_addr]->set_mask = PEU_CSR_VEN_DLLP_MSG_SET_MASK;
2207 csr_db[reg_addr]->toggle_mask = PEU_CSR_VEN_DLLP_MSG_TOGGLE_MASK;
2208 csr_db[reg_addr]->por_val = PEU_CSR_VEN_DLLP_MSG_POR_VALUE;
2209
2210 csr_db[reg_addr]->data->val = PEU_CSR_VEN_DLLP_MSG_POR_VALUE;
2211
2212 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2213 notify (*(csr_db[reg_addr]->data->events[i]));
2214 }
2215
2216 reg_addr = PEU_CSR_B_VEN_DLLP_MSG_HW_ADDR;
2217 if (csr_db[reg_addr] == NULL) {
2218 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2219 csr_db[reg_addr]->data = new csr_data<DATA> ();
2220 }
2221
2222 csr_db[reg_addr]->rd_mask = PEU_CSR_VEN_DLLP_MSG_READ_MASK;
2223 csr_db[reg_addr]->wr_mask = PEU_CSR_VEN_DLLP_MSG_WRITE_MASK;
2224 csr_db[reg_addr]->clr_mask = PEU_CSR_VEN_DLLP_MSG_CLEAR_MASK;
2225 csr_db[reg_addr]->set_mask = PEU_CSR_VEN_DLLP_MSG_SET_MASK;
2226 csr_db[reg_addr]->toggle_mask = PEU_CSR_VEN_DLLP_MSG_TOGGLE_MASK;
2227 csr_db[reg_addr]->por_val = PEU_CSR_VEN_DLLP_MSG_POR_VALUE;
2228
2229 csr_db[reg_addr]->data->val = PEU_CSR_VEN_DLLP_MSG_POR_VALUE;
2230
2231 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2232 notify (*(csr_db[reg_addr]->data->events[i]));
2233 }
2234
2235 reg_addr = PEU_CSR_A_FORCE_LTSSM_HW_ADDR;
2236 if (csr_db[reg_addr] == NULL) {
2237 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2238 csr_db[reg_addr]->data = new csr_data<DATA> ();
2239 }
2240
2241 csr_db[reg_addr]->rd_mask = PEU_CSR_FORCE_LTSSM_READ_MASK;
2242 csr_db[reg_addr]->wr_mask = PEU_CSR_FORCE_LTSSM_WRITE_MASK;
2243 csr_db[reg_addr]->clr_mask = PEU_CSR_FORCE_LTSSM_CLEAR_MASK;
2244 csr_db[reg_addr]->set_mask = PEU_CSR_FORCE_LTSSM_SET_MASK;
2245 csr_db[reg_addr]->toggle_mask = PEU_CSR_FORCE_LTSSM_TOGGLE_MASK;
2246 csr_db[reg_addr]->por_val = PEU_CSR_FORCE_LTSSM_POR_VALUE;
2247
2248 csr_db[reg_addr]->data->val = PEU_CSR_FORCE_LTSSM_POR_VALUE;
2249
2250 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2251 notify (*(csr_db[reg_addr]->data->events[i]));
2252 }
2253
2254 reg_addr = PEU_CSR_B_FORCE_LTSSM_HW_ADDR;
2255 if (csr_db[reg_addr] == NULL) {
2256 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2257 csr_db[reg_addr]->data = new csr_data<DATA> ();
2258 }
2259
2260 csr_db[reg_addr]->rd_mask = PEU_CSR_FORCE_LTSSM_READ_MASK;
2261 csr_db[reg_addr]->wr_mask = PEU_CSR_FORCE_LTSSM_WRITE_MASK;
2262 csr_db[reg_addr]->clr_mask = PEU_CSR_FORCE_LTSSM_CLEAR_MASK;
2263 csr_db[reg_addr]->set_mask = PEU_CSR_FORCE_LTSSM_SET_MASK;
2264 csr_db[reg_addr]->toggle_mask = PEU_CSR_FORCE_LTSSM_TOGGLE_MASK;
2265 csr_db[reg_addr]->por_val = PEU_CSR_FORCE_LTSSM_POR_VALUE;
2266
2267 csr_db[reg_addr]->data->val = PEU_CSR_FORCE_LTSSM_POR_VALUE;
2268
2269 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2270 notify (*(csr_db[reg_addr]->data->events[i]));
2271 }
2272
2273 reg_addr = PEU_CSR_A_LINK_CFG_HW_ADDR;
2274 if (csr_db[reg_addr] == NULL) {
2275 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2276 csr_db[reg_addr]->data = new csr_data<DATA> ();
2277 }
2278
2279 csr_db[reg_addr]->rd_mask = PEU_CSR_LINK_CFG_READ_MASK;
2280 csr_db[reg_addr]->wr_mask = PEU_CSR_LINK_CFG_WRITE_MASK;
2281 csr_db[reg_addr]->clr_mask = PEU_CSR_LINK_CFG_CLEAR_MASK;
2282 csr_db[reg_addr]->set_mask = PEU_CSR_LINK_CFG_SET_MASK;
2283 csr_db[reg_addr]->toggle_mask = PEU_CSR_LINK_CFG_TOGGLE_MASK;
2284 csr_db[reg_addr]->por_val = PEU_CSR_LINK_CFG_POR_VALUE;
2285
2286 csr_db[reg_addr]->data->val = PEU_CSR_LINK_CFG_POR_VALUE;
2287
2288 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2289 notify (*(csr_db[reg_addr]->data->events[i]));
2290 }
2291
2292 reg_addr = PEU_CSR_B_LINK_CFG_HW_ADDR;
2293 if (csr_db[reg_addr] == NULL) {
2294 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2295 csr_db[reg_addr]->data = new csr_data<DATA> ();
2296 }
2297
2298 csr_db[reg_addr]->rd_mask = PEU_CSR_LINK_CFG_READ_MASK;
2299 csr_db[reg_addr]->wr_mask = PEU_CSR_LINK_CFG_WRITE_MASK;
2300 csr_db[reg_addr]->clr_mask = PEU_CSR_LINK_CFG_CLEAR_MASK;
2301 csr_db[reg_addr]->set_mask = PEU_CSR_LINK_CFG_SET_MASK;
2302 csr_db[reg_addr]->toggle_mask = PEU_CSR_LINK_CFG_TOGGLE_MASK;
2303 csr_db[reg_addr]->por_val = PEU_CSR_LINK_CFG_POR_VALUE;
2304
2305 csr_db[reg_addr]->data->val = PEU_CSR_LINK_CFG_POR_VALUE;
2306
2307 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2308 notify (*(csr_db[reg_addr]->data->events[i]));
2309 }
2310
2311 reg_addr = PEU_CSR_A_LINK_CTL_HW_ADDR;
2312 if (csr_db[reg_addr] == NULL) {
2313 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2314 csr_db[reg_addr]->data = new csr_data<DATA> ();
2315 }
2316
2317 csr_db[reg_addr]->rd_mask = PEU_CSR_LINK_CTL_READ_MASK;
2318 csr_db[reg_addr]->wr_mask = PEU_CSR_LINK_CTL_WRITE_MASK;
2319 csr_db[reg_addr]->clr_mask = PEU_CSR_LINK_CTL_CLEAR_MASK;
2320 csr_db[reg_addr]->set_mask = PEU_CSR_LINK_CTL_SET_MASK;
2321 csr_db[reg_addr]->toggle_mask = PEU_CSR_LINK_CTL_TOGGLE_MASK;
2322 csr_db[reg_addr]->por_val = PEU_CSR_LINK_CTL_POR_VALUE;
2323
2324 csr_db[reg_addr]->data->val = PEU_CSR_LINK_CTL_POR_VALUE;
2325
2326 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2327 notify (*(csr_db[reg_addr]->data->events[i]));
2328 }
2329
2330 reg_addr = PEU_CSR_B_LINK_CTL_HW_ADDR;
2331 if (csr_db[reg_addr] == NULL) {
2332 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2333 csr_db[reg_addr]->data = new csr_data<DATA> ();
2334 }
2335
2336 csr_db[reg_addr]->rd_mask = PEU_CSR_LINK_CTL_READ_MASK;
2337 csr_db[reg_addr]->wr_mask = PEU_CSR_LINK_CTL_WRITE_MASK;
2338 csr_db[reg_addr]->clr_mask = PEU_CSR_LINK_CTL_CLEAR_MASK;
2339 csr_db[reg_addr]->set_mask = PEU_CSR_LINK_CTL_SET_MASK;
2340 csr_db[reg_addr]->toggle_mask = PEU_CSR_LINK_CTL_TOGGLE_MASK;
2341 csr_db[reg_addr]->por_val = PEU_CSR_LINK_CTL_POR_VALUE;
2342
2343 csr_db[reg_addr]->data->val = PEU_CSR_LINK_CTL_POR_VALUE;
2344
2345 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2346 notify (*(csr_db[reg_addr]->data->events[i]));
2347 }
2348
2349 reg_addr = PEU_CSR_A_LANE_SKEW_HW_ADDR;
2350 if (csr_db[reg_addr] == NULL) {
2351 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2352 csr_db[reg_addr]->data = new csr_data<DATA> ();
2353 }
2354
2355 csr_db[reg_addr]->rd_mask = PEU_CSR_LANE_SKEW_READ_MASK;
2356 csr_db[reg_addr]->wr_mask = PEU_CSR_LANE_SKEW_WRITE_MASK;
2357 csr_db[reg_addr]->clr_mask = PEU_CSR_LANE_SKEW_CLEAR_MASK;
2358 csr_db[reg_addr]->set_mask = PEU_CSR_LANE_SKEW_SET_MASK;
2359 csr_db[reg_addr]->toggle_mask = PEU_CSR_LANE_SKEW_TOGGLE_MASK;
2360 csr_db[reg_addr]->por_val = PEU_CSR_LANE_SKEW_POR_VALUE;
2361
2362 csr_db[reg_addr]->data->val = PEU_CSR_LANE_SKEW_POR_VALUE;
2363
2364 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2365 notify (*(csr_db[reg_addr]->data->events[i]));
2366 }
2367
2368 reg_addr = PEU_CSR_B_LANE_SKEW_HW_ADDR;
2369 if (csr_db[reg_addr] == NULL) {
2370 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2371 csr_db[reg_addr]->data = new csr_data<DATA> ();
2372 }
2373
2374 csr_db[reg_addr]->rd_mask = PEU_CSR_LANE_SKEW_READ_MASK;
2375 csr_db[reg_addr]->wr_mask = PEU_CSR_LANE_SKEW_WRITE_MASK;
2376 csr_db[reg_addr]->clr_mask = PEU_CSR_LANE_SKEW_CLEAR_MASK;
2377 csr_db[reg_addr]->set_mask = PEU_CSR_LANE_SKEW_SET_MASK;
2378 csr_db[reg_addr]->toggle_mask = PEU_CSR_LANE_SKEW_TOGGLE_MASK;
2379 csr_db[reg_addr]->por_val = PEU_CSR_LANE_SKEW_POR_VALUE;
2380
2381 csr_db[reg_addr]->data->val = PEU_CSR_LANE_SKEW_POR_VALUE;
2382
2383 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2384 notify (*(csr_db[reg_addr]->data->events[i]));
2385 }
2386
2387 reg_addr = PEU_CSR_A_SYMBOL_NUM_HW_ADDR;
2388 if (csr_db[reg_addr] == NULL) {
2389 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2390 csr_db[reg_addr]->data = new csr_data<DATA> ();
2391 }
2392
2393 csr_db[reg_addr]->rd_mask = PEU_CSR_SYMBOL_NUM_READ_MASK;
2394 csr_db[reg_addr]->wr_mask = PEU_CSR_SYMBOL_NUM_WRITE_MASK;
2395 csr_db[reg_addr]->clr_mask = PEU_CSR_SYMBOL_NUM_CLEAR_MASK;
2396 csr_db[reg_addr]->set_mask = PEU_CSR_SYMBOL_NUM_SET_MASK;
2397 csr_db[reg_addr]->toggle_mask = PEU_CSR_SYMBOL_NUM_TOGGLE_MASK;
2398 csr_db[reg_addr]->por_val = PEU_CSR_SYMBOL_NUM_POR_VALUE;
2399
2400 csr_db[reg_addr]->data->val = PEU_CSR_SYMBOL_NUM_POR_VALUE;
2401
2402 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2403 notify (*(csr_db[reg_addr]->data->events[i]));
2404 }
2405
2406 reg_addr = PEU_CSR_B_SYMBOL_NUM_HW_ADDR;
2407 if (csr_db[reg_addr] == NULL) {
2408 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2409 csr_db[reg_addr]->data = new csr_data<DATA> ();
2410 }
2411
2412 csr_db[reg_addr]->rd_mask = PEU_CSR_SYMBOL_NUM_READ_MASK;
2413 csr_db[reg_addr]->wr_mask = PEU_CSR_SYMBOL_NUM_WRITE_MASK;
2414 csr_db[reg_addr]->clr_mask = PEU_CSR_SYMBOL_NUM_CLEAR_MASK;
2415 csr_db[reg_addr]->set_mask = PEU_CSR_SYMBOL_NUM_SET_MASK;
2416 csr_db[reg_addr]->toggle_mask = PEU_CSR_SYMBOL_NUM_TOGGLE_MASK;
2417 csr_db[reg_addr]->por_val = PEU_CSR_SYMBOL_NUM_POR_VALUE;
2418
2419 csr_db[reg_addr]->data->val = PEU_CSR_SYMBOL_NUM_POR_VALUE;
2420
2421 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2422 notify (*(csr_db[reg_addr]->data->events[i]));
2423 }
2424
2425 reg_addr = PEU_CSR_A_SYMBOL_TIMER_HW_ADDR;
2426 if (csr_db[reg_addr] == NULL) {
2427 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2428 csr_db[reg_addr]->data = new csr_data<DATA> ();
2429 }
2430
2431 csr_db[reg_addr]->rd_mask = PEU_CSR_SYMBOL_TIMER_READ_MASK;
2432 csr_db[reg_addr]->wr_mask = PEU_CSR_SYMBOL_TIMER_WRITE_MASK;
2433 csr_db[reg_addr]->clr_mask = PEU_CSR_SYMBOL_TIMER_CLEAR_MASK;
2434 csr_db[reg_addr]->set_mask = PEU_CSR_SYMBOL_TIMER_SET_MASK;
2435 csr_db[reg_addr]->toggle_mask = PEU_CSR_SYMBOL_TIMER_TOGGLE_MASK;
2436 csr_db[reg_addr]->por_val = PEU_CSR_SYMBOL_TIMER_POR_VALUE;
2437
2438 csr_db[reg_addr]->data->val = PEU_CSR_SYMBOL_TIMER_POR_VALUE;
2439
2440 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2441 notify (*(csr_db[reg_addr]->data->events[i]));
2442 }
2443
2444 reg_addr = PEU_CSR_B_SYMBOL_TIMER_HW_ADDR;
2445 if (csr_db[reg_addr] == NULL) {
2446 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2447 csr_db[reg_addr]->data = new csr_data<DATA> ();
2448 }
2449
2450 csr_db[reg_addr]->rd_mask = PEU_CSR_SYMBOL_TIMER_READ_MASK;
2451 csr_db[reg_addr]->wr_mask = PEU_CSR_SYMBOL_TIMER_WRITE_MASK;
2452 csr_db[reg_addr]->clr_mask = PEU_CSR_SYMBOL_TIMER_CLEAR_MASK;
2453 csr_db[reg_addr]->set_mask = PEU_CSR_SYMBOL_TIMER_SET_MASK;
2454 csr_db[reg_addr]->toggle_mask = PEU_CSR_SYMBOL_TIMER_TOGGLE_MASK;
2455 csr_db[reg_addr]->por_val = PEU_CSR_SYMBOL_TIMER_POR_VALUE;
2456
2457 csr_db[reg_addr]->data->val = PEU_CSR_SYMBOL_TIMER_POR_VALUE;
2458
2459 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2460 notify (*(csr_db[reg_addr]->data->events[i]));
2461 }
2462
2463 reg_addr = PEU_CSR_A_CORE_STATUS_HW_ADDR;
2464 if (csr_db[reg_addr] == NULL) {
2465 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2466 csr_db[reg_addr]->data = new csr_data<DATA> ();
2467 }
2468
2469 csr_db[reg_addr]->rd_mask = PEU_CSR_CORE_STATUS_READ_MASK;
2470 csr_db[reg_addr]->wr_mask = PEU_CSR_CORE_STATUS_WRITE_MASK;
2471 csr_db[reg_addr]->clr_mask = PEU_CSR_CORE_STATUS_CLEAR_MASK;
2472 csr_db[reg_addr]->set_mask = PEU_CSR_CORE_STATUS_SET_MASK;
2473 csr_db[reg_addr]->toggle_mask = PEU_CSR_CORE_STATUS_TOGGLE_MASK;
2474 csr_db[reg_addr]->por_val = PEU_CSR_CORE_STATUS_POR_VALUE;
2475
2476 csr_db[reg_addr]->data->val = PEU_CSR_CORE_STATUS_POR_VALUE;
2477
2478 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2479 notify (*(csr_db[reg_addr]->data->events[i]));
2480 }
2481
2482 reg_addr = PEU_CSR_B_CORE_STATUS_HW_ADDR;
2483 if (csr_db[reg_addr] == NULL) {
2484 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2485 csr_db[reg_addr]->data = new csr_data<DATA> ();
2486 }
2487
2488 csr_db[reg_addr]->rd_mask = PEU_CSR_CORE_STATUS_READ_MASK;
2489 csr_db[reg_addr]->wr_mask = PEU_CSR_CORE_STATUS_WRITE_MASK;
2490 csr_db[reg_addr]->clr_mask = PEU_CSR_CORE_STATUS_CLEAR_MASK;
2491 csr_db[reg_addr]->set_mask = PEU_CSR_CORE_STATUS_SET_MASK;
2492 csr_db[reg_addr]->toggle_mask = PEU_CSR_CORE_STATUS_TOGGLE_MASK;
2493 csr_db[reg_addr]->por_val = PEU_CSR_CORE_STATUS_POR_VALUE;
2494
2495 csr_db[reg_addr]->data->val = PEU_CSR_CORE_STATUS_POR_VALUE;
2496
2497 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2498 notify (*(csr_db[reg_addr]->data->events[i]));
2499 }
2500
2501 reg_addr = PEU_CSR_A_EVENT_ERR_LOG_EN_HW_ADDR;
2502 if (csr_db[reg_addr] == NULL) {
2503 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2504 csr_db[reg_addr]->data = new csr_data<DATA> ();
2505 }
2506
2507 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_LOG_EN_READ_MASK;
2508 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_LOG_EN_WRITE_MASK;
2509 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_LOG_EN_CLEAR_MASK;
2510 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_LOG_EN_SET_MASK;
2511 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_LOG_EN_TOGGLE_MASK;
2512 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_LOG_EN_POR_VALUE;
2513
2514 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_LOG_EN_POR_VALUE;
2515
2516 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2517 notify (*(csr_db[reg_addr]->data->events[i]));
2518 }
2519
2520 reg_addr = PEU_CSR_B_EVENT_ERR_LOG_EN_HW_ADDR;
2521 if (csr_db[reg_addr] == NULL) {
2522 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2523 csr_db[reg_addr]->data = new csr_data<DATA> ();
2524 }
2525
2526 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_LOG_EN_READ_MASK;
2527 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_LOG_EN_WRITE_MASK;
2528 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_LOG_EN_CLEAR_MASK;
2529 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_LOG_EN_SET_MASK;
2530 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_LOG_EN_TOGGLE_MASK;
2531 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_LOG_EN_POR_VALUE;
2532
2533 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_LOG_EN_POR_VALUE;
2534
2535 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2536 notify (*(csr_db[reg_addr]->data->events[i]));
2537 }
2538
2539 reg_addr = PEU_CSR_A_EVENT_ERR_INT_EN_HW_ADDR;
2540 if (csr_db[reg_addr] == NULL) {
2541 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2542 csr_db[reg_addr]->data = new csr_data<DATA> ();
2543 }
2544
2545 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_INT_EN_READ_MASK;
2546 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_INT_EN_WRITE_MASK;
2547 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_INT_EN_CLEAR_MASK;
2548 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_INT_EN_SET_MASK;
2549 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_INT_EN_TOGGLE_MASK;
2550 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_INT_EN_POR_VALUE;
2551
2552 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_INT_EN_POR_VALUE;
2553
2554 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2555 notify (*(csr_db[reg_addr]->data->events[i]));
2556 }
2557
2558 reg_addr = PEU_CSR_B_EVENT_ERR_INT_EN_HW_ADDR;
2559 if (csr_db[reg_addr] == NULL) {
2560 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2561 csr_db[reg_addr]->data = new csr_data<DATA> ();
2562 }
2563
2564 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_INT_EN_READ_MASK;
2565 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_INT_EN_WRITE_MASK;
2566 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_INT_EN_CLEAR_MASK;
2567 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_INT_EN_SET_MASK;
2568 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_INT_EN_TOGGLE_MASK;
2569 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_INT_EN_POR_VALUE;
2570
2571 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_INT_EN_POR_VALUE;
2572
2573 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2574 notify (*(csr_db[reg_addr]->data->events[i]));
2575 }
2576
2577 reg_addr = PEU_CSR_A_EVENT_ERR_INT_STS_HW_ADDR;
2578 if (csr_db[reg_addr] == NULL) {
2579 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2580 csr_db[reg_addr]->data = new csr_data<DATA> ();
2581 }
2582
2583 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_INT_STS_READ_MASK;
2584 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_INT_STS_WRITE_MASK;
2585 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_INT_STS_CLEAR_MASK;
2586 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_INT_STS_SET_MASK;
2587 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_INT_STS_TOGGLE_MASK;
2588 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_INT_STS_POR_VALUE;
2589
2590 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_INT_STS_POR_VALUE;
2591
2592 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2593 notify (*(csr_db[reg_addr]->data->events[i]));
2594 }
2595
2596 reg_addr = PEU_CSR_B_EVENT_ERR_INT_STS_HW_ADDR;
2597 if (csr_db[reg_addr] == NULL) {
2598 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2599 csr_db[reg_addr]->data = new csr_data<DATA> ();
2600 }
2601
2602 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_INT_STS_READ_MASK;
2603 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_INT_STS_WRITE_MASK;
2604 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_INT_STS_CLEAR_MASK;
2605 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_INT_STS_SET_MASK;
2606 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_INT_STS_TOGGLE_MASK;
2607 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_INT_STS_POR_VALUE;
2608
2609 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_INT_STS_POR_VALUE;
2610
2611 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2612 notify (*(csr_db[reg_addr]->data->events[i]));
2613 }
2614
2615 reg_addr = PEU_CSR_A_EVENT_ERR_STS_CLR_RW1C_ALIAS_HW_ADDR;
2616 if (csr_db[reg_addr] == NULL) {
2617 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2618 csr_db[reg_addr]->data = new csr_data<DATA> ();
2619 }
2620
2621 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_READ_MASK;
2622 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_WRITE_MASK;
2623 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_CLEAR_MASK;
2624 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_SET_MASK;
2625 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_TOGGLE_MASK;
2626 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_POR_VALUE;
2627
2628 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_POR_VALUE;
2629 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
2630 csr_db[reg_addr]->sw_reset_val_hold = false;
2631
2632 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2633 notify (*(csr_db[reg_addr]->data->events[i]));
2634 }
2635
2636 reg_addr = PEU_CSR_B_EVENT_ERR_STS_CLR_RW1C_ALIAS_HW_ADDR;
2637 if (csr_db[reg_addr] == NULL) {
2638 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2639 csr_db[reg_addr]->data = new csr_data<DATA> ();
2640 }
2641
2642 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_READ_MASK;
2643 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_WRITE_MASK;
2644 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_CLEAR_MASK;
2645 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_SET_MASK;
2646 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_TOGGLE_MASK;
2647 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_POR_VALUE;
2648
2649 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_STS_CLR_RW1C_ALIAS_POR_VALUE;
2650 csr_db[reg_addr]->intf_type = WRITE1_CLEAR;
2651 csr_db[reg_addr]->sw_reset_val_hold = false;
2652
2653 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2654 notify (*(csr_db[reg_addr]->data->events[i]));
2655 }
2656
2657 reg_addr = PEU_CSR_A_EVENT_ERR_STS_CLR_RW1S_ALIAS_HW_ADDR;
2658 if (csr_db[reg_addr] == NULL) {
2659 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2660 csr_db[reg_addr]->data = csr_db[PEU_CSR_A_EVENT_ERR_STS_CLR_RW1C_ALIAS_HW_ADDR]->data;
2661 }
2662
2663 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_READ_MASK;
2664 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_WRITE_MASK;
2665 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_CLEAR_MASK;
2666 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_SET_MASK;
2667 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_TOGGLE_MASK;
2668 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_POR_VALUE;
2669
2670 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_POR_VALUE;
2671 csr_db[reg_addr]->intf_type = WRITE1_SET;
2672 csr_db[reg_addr]->sw_reset_val_hold = false;
2673
2674 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2675 notify (*(csr_db[reg_addr]->data->events[i]));
2676 }
2677
2678 reg_addr = PEU_CSR_B_EVENT_ERR_STS_CLR_RW1S_ALIAS_HW_ADDR;
2679 if (csr_db[reg_addr] == NULL) {
2680 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2681 csr_db[reg_addr]->data = csr_db[PEU_CSR_B_EVENT_ERR_STS_CLR_RW1C_ALIAS_HW_ADDR]->data;
2682 }
2683
2684 csr_db[reg_addr]->rd_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_READ_MASK;
2685 csr_db[reg_addr]->wr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_WRITE_MASK;
2686 csr_db[reg_addr]->clr_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_CLEAR_MASK;
2687 csr_db[reg_addr]->set_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_SET_MASK;
2688 csr_db[reg_addr]->toggle_mask = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_TOGGLE_MASK;
2689 csr_db[reg_addr]->por_val = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_POR_VALUE;
2690
2691 csr_db[reg_addr]->data->val = PEU_CSR_EVENT_ERR_STS_CLR_RW1S_ALIAS_POR_VALUE;
2692 csr_db[reg_addr]->intf_type = WRITE1_SET;
2693 csr_db[reg_addr]->sw_reset_val_hold = false;
2694
2695 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2696 notify (*(csr_db[reg_addr]->data->events[i]));
2697 }
2698
2699 reg_addr = PEU_CSR_A_LNK_BIT_ERR_CNT_1_HW_ADDR;
2700 if (csr_db[reg_addr] == NULL) {
2701 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2702 csr_db[reg_addr]->data = new csr_data<DATA> ();
2703 }
2704
2705 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_READ_MASK;
2706 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_WRITE_MASK;
2707 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_CLEAR_MASK;
2708 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_SET_MASK;
2709 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_TOGGLE_MASK;
2710 csr_db[reg_addr]->por_val = PEU_CSR_LNK_BIT_ERR_CNT_1_POR_VALUE;
2711
2712 csr_db[reg_addr]->data->val = PEU_CSR_LNK_BIT_ERR_CNT_1_POR_VALUE;
2713
2714 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2715 notify (*(csr_db[reg_addr]->data->events[i]));
2716 }
2717
2718 reg_addr = PEU_CSR_B_LNK_BIT_ERR_CNT_1_HW_ADDR;
2719 if (csr_db[reg_addr] == NULL) {
2720 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2721 csr_db[reg_addr]->data = new csr_data<DATA> ();
2722 }
2723
2724 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_READ_MASK;
2725 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_WRITE_MASK;
2726 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_CLEAR_MASK;
2727 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_SET_MASK;
2728 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_BIT_ERR_CNT_1_TOGGLE_MASK;
2729 csr_db[reg_addr]->por_val = PEU_CSR_LNK_BIT_ERR_CNT_1_POR_VALUE;
2730
2731 csr_db[reg_addr]->data->val = PEU_CSR_LNK_BIT_ERR_CNT_1_POR_VALUE;
2732
2733 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2734 notify (*(csr_db[reg_addr]->data->events[i]));
2735 }
2736
2737 reg_addr = PEU_CSR_A_LNK_BIT_ERR_CNT_2_HW_ADDR;
2738 if (csr_db[reg_addr] == NULL) {
2739 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2740 csr_db[reg_addr]->data = new csr_data<DATA> ();
2741 }
2742
2743 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_READ_MASK;
2744 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_WRITE_MASK;
2745 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_CLEAR_MASK;
2746 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_SET_MASK;
2747 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_TOGGLE_MASK;
2748 csr_db[reg_addr]->por_val = PEU_CSR_LNK_BIT_ERR_CNT_2_POR_VALUE;
2749
2750 csr_db[reg_addr]->data->val = PEU_CSR_LNK_BIT_ERR_CNT_2_POR_VALUE;
2751
2752 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2753 notify (*(csr_db[reg_addr]->data->events[i]));
2754 }
2755
2756 reg_addr = PEU_CSR_B_LNK_BIT_ERR_CNT_2_HW_ADDR;
2757 if (csr_db[reg_addr] == NULL) {
2758 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2759 csr_db[reg_addr]->data = new csr_data<DATA> ();
2760 }
2761
2762 csr_db[reg_addr]->rd_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_READ_MASK;
2763 csr_db[reg_addr]->wr_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_WRITE_MASK;
2764 csr_db[reg_addr]->clr_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_CLEAR_MASK;
2765 csr_db[reg_addr]->set_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_SET_MASK;
2766 csr_db[reg_addr]->toggle_mask = PEU_CSR_LNK_BIT_ERR_CNT_2_TOGGLE_MASK;
2767 csr_db[reg_addr]->por_val = PEU_CSR_LNK_BIT_ERR_CNT_2_POR_VALUE;
2768
2769 csr_db[reg_addr]->data->val = PEU_CSR_LNK_BIT_ERR_CNT_2_POR_VALUE;
2770
2771 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2772 notify (*(csr_db[reg_addr]->data->events[i]));
2773 }
2774
2775 reg_addr = PEU_CSR_A_SERDES_PLL_HW_ADDR;
2776 if (csr_db[reg_addr] == NULL) {
2777 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2778 csr_db[reg_addr]->data = new csr_data<DATA> ();
2779 }
2780
2781 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_PLL_READ_MASK;
2782 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_PLL_WRITE_MASK;
2783 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_PLL_CLEAR_MASK;
2784 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_PLL_SET_MASK;
2785 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_PLL_TOGGLE_MASK;
2786 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_PLL_POR_VALUE;
2787
2788 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_PLL_POR_VALUE;
2789
2790 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2791 notify (*(csr_db[reg_addr]->data->events[i]));
2792 }
2793
2794 reg_addr = PEU_CSR_B_SERDES_PLL_HW_ADDR;
2795 if (csr_db[reg_addr] == NULL) {
2796 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2797 csr_db[reg_addr]->data = new csr_data<DATA> ();
2798 }
2799
2800 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_PLL_READ_MASK;
2801 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_PLL_WRITE_MASK;
2802 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_PLL_CLEAR_MASK;
2803 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_PLL_SET_MASK;
2804 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_PLL_TOGGLE_MASK;
2805 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_PLL_POR_VALUE;
2806
2807 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_PLL_POR_VALUE;
2808
2809 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2810 notify (*(csr_db[reg_addr]->data->events[i]));
2811 }
2812
2813 reg_addr = PEU_CSR_A_SERDES_RECEIVER_LANE_CTL_HW_ADDR;
2814 if (csr_db[reg_addr] == NULL) {
2815 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2816 csr_db[reg_addr]->data = new csr_data<DATA> ();
2817 }
2818
2819 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_READ_MASK;
2820 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_WRITE_MASK;
2821 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_CLEAR_MASK;
2822 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_SET_MASK;
2823 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_TOGGLE_MASK;
2824 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_RECEIVER_LANE_CTL_POR_VALUE;
2825
2826 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_RECEIVER_LANE_CTL_POR_VALUE;
2827
2828 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2829 notify (*(csr_db[reg_addr]->data->events[i]));
2830 }
2831
2832 reg_addr = PEU_CSR_B_SERDES_RECEIVER_LANE_CTL_HW_ADDR;
2833 if (csr_db[reg_addr] == NULL) {
2834 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2835 csr_db[reg_addr]->data = new csr_data<DATA> ();
2836 }
2837
2838 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_READ_MASK;
2839 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_WRITE_MASK;
2840 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_CLEAR_MASK;
2841 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_SET_MASK;
2842 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_RECEIVER_LANE_CTL_TOGGLE_MASK;
2843 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_RECEIVER_LANE_CTL_POR_VALUE;
2844
2845 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_RECEIVER_LANE_CTL_POR_VALUE;
2846
2847 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2848 notify (*(csr_db[reg_addr]->data->events[i]));
2849 }
2850
2851 reg_addr = PEU_CSR_A_SERDES_RECEIVER_LANE_STATUS_HW_ADDR;
2852 if (csr_db[reg_addr] == NULL) {
2853 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2854 csr_db[reg_addr]->data = new csr_data<DATA> ();
2855 }
2856
2857 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_READ_MASK;
2858 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_WRITE_MASK;
2859 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_CLEAR_MASK;
2860 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_SET_MASK;
2861 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_TOGGLE_MASK;
2862 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_POR_VALUE;
2863
2864 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_POR_VALUE;
2865
2866 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2867 notify (*(csr_db[reg_addr]->data->events[i]));
2868 }
2869
2870 reg_addr = PEU_CSR_B_SERDES_RECEIVER_LANE_STATUS_HW_ADDR;
2871 if (csr_db[reg_addr] == NULL) {
2872 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2873 csr_db[reg_addr]->data = new csr_data<DATA> ();
2874 }
2875
2876 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_READ_MASK;
2877 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_WRITE_MASK;
2878 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_CLEAR_MASK;
2879 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_SET_MASK;
2880 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_TOGGLE_MASK;
2881 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_POR_VALUE;
2882
2883 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_RECEIVER_LANE_STATUS_POR_VALUE;
2884
2885 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2886 notify (*(csr_db[reg_addr]->data->events[i]));
2887 }
2888
2889 reg_addr = PEU_CSR_A_SERDES_XMITTER_LANE_CTL_HW_ADDR;
2890 if (csr_db[reg_addr] == NULL) {
2891 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2892 csr_db[reg_addr]->data = new csr_data<DATA> ();
2893 }
2894
2895 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_READ_MASK;
2896 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_WRITE_MASK;
2897 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_CLEAR_MASK;
2898 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_SET_MASK;
2899 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_TOGGLE_MASK;
2900 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_XMITTER_LANE_CTL_POR_VALUE;
2901
2902 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_XMITTER_LANE_CTL_POR_VALUE;
2903
2904 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2905 notify (*(csr_db[reg_addr]->data->events[i]));
2906 }
2907
2908 reg_addr = PEU_CSR_B_SERDES_XMITTER_LANE_CTL_HW_ADDR;
2909 if (csr_db[reg_addr] == NULL) {
2910 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2911 csr_db[reg_addr]->data = new csr_data<DATA> ();
2912 }
2913
2914 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_READ_MASK;
2915 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_WRITE_MASK;
2916 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_CLEAR_MASK;
2917 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_SET_MASK;
2918 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_XMITTER_LANE_CTL_TOGGLE_MASK;
2919 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_XMITTER_LANE_CTL_POR_VALUE;
2920
2921 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_XMITTER_LANE_CTL_POR_VALUE;
2922
2923 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2924 notify (*(csr_db[reg_addr]->data->events[i]));
2925 }
2926
2927 reg_addr = PEU_CSR_A_SERDES_XMITTER_LANE_STATUS_HW_ADDR;
2928 if (csr_db[reg_addr] == NULL) {
2929 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2930 csr_db[reg_addr]->data = new csr_data<DATA> ();
2931 }
2932
2933 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_READ_MASK;
2934 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_WRITE_MASK;
2935 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_CLEAR_MASK;
2936 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_SET_MASK;
2937 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_TOGGLE_MASK;
2938 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_XMITTER_LANE_STATUS_POR_VALUE;
2939
2940 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_XMITTER_LANE_STATUS_POR_VALUE;
2941
2942 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2943 notify (*(csr_db[reg_addr]->data->events[i]));
2944 }
2945
2946 reg_addr = PEU_CSR_B_SERDES_XMITTER_LANE_STATUS_HW_ADDR;
2947 if (csr_db[reg_addr] == NULL) {
2948 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2949 csr_db[reg_addr]->data = new csr_data<DATA> ();
2950 }
2951
2952 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_READ_MASK;
2953 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_WRITE_MASK;
2954 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_CLEAR_MASK;
2955 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_SET_MASK;
2956 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_XMITTER_LANE_STATUS_TOGGLE_MASK;
2957 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_XMITTER_LANE_STATUS_POR_VALUE;
2958
2959 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_XMITTER_LANE_STATUS_POR_VALUE;
2960
2961 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2962 notify (*(csr_db[reg_addr]->data->events[i]));
2963 }
2964
2965 reg_addr = PEU_CSR_A_SERDES_MACRO_TEST_CFG_HW_ADDR;
2966 if (csr_db[reg_addr] == NULL) {
2967 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2968 csr_db[reg_addr]->data = new csr_data<DATA> ();
2969 }
2970
2971 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_READ_MASK;
2972 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_WRITE_MASK;
2973 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_CLEAR_MASK;
2974 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_SET_MASK;
2975 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_TOGGLE_MASK;
2976 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_MACRO_TEST_CFG_POR_VALUE;
2977
2978 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_MACRO_TEST_CFG_POR_VALUE;
2979
2980 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
2981 notify (*(csr_db[reg_addr]->data->events[i]));
2982 }
2983
2984 reg_addr = PEU_CSR_B_SERDES_MACRO_TEST_CFG_HW_ADDR;
2985 if (csr_db[reg_addr] == NULL) {
2986 csr_db[reg_addr] = new csr_data_intf<DATA> ();
2987 csr_db[reg_addr]->data = new csr_data<DATA> ();
2988 }
2989
2990 csr_db[reg_addr]->rd_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_READ_MASK;
2991 csr_db[reg_addr]->wr_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_WRITE_MASK;
2992 csr_db[reg_addr]->clr_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_CLEAR_MASK;
2993 csr_db[reg_addr]->set_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_SET_MASK;
2994 csr_db[reg_addr]->toggle_mask = PEU_CSR_SERDES_MACRO_TEST_CFG_TOGGLE_MASK;
2995 csr_db[reg_addr]->por_val = PEU_CSR_SERDES_MACRO_TEST_CFG_POR_VALUE;
2996
2997 csr_db[reg_addr]->data->val = PEU_CSR_SERDES_MACRO_TEST_CFG_POR_VALUE;
2998
2999 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
3000 notify (*(csr_db[reg_addr]->data->events[i]));
3001 }
3002
3003 reg_addr = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_HW_ADDR;
3004 if (csr_db[reg_addr] == NULL) {
3005 csr_db[reg_addr] = new csr_data_intf<DATA> ();
3006 csr_db[reg_addr]->data = new csr_data<DATA> ();
3007 }
3008
3009 csr_db[reg_addr]->rd_mask = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_READ_MASK;
3010 csr_db[reg_addr]->wr_mask = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_WRITE_MASK;
3011 csr_db[reg_addr]->clr_mask = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_CLEAR_MASK;
3012 csr_db[reg_addr]->set_mask = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_SET_MASK;
3013 csr_db[reg_addr]->toggle_mask = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_TOGGLE_MASK;
3014 csr_db[reg_addr]->por_val = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_POR_VALUE;
3015
3016 csr_db[reg_addr]->data->val = ILU_CSR_A_ILU_LOG_ERR_RW1S_ALIAS_POR_VALUE;
3017 csr_db[reg_addr]->intf_type = WRITE1_SET;
3018 csr_db[reg_addr]->sw_reset_val_hold = false;
3019
3020 for (uint32 i = 0; i < csr_db[reg_addr]->data->num_events; i++) {
3021 notify (*(csr_db[reg_addr]->data->events[i]));
3022 }
3023
3024 LOG_DEBUG << "Create CSR DB .. Done";
3025 }
3026
3027 /**
3028 * This method resets the CSR data element, based on the specified rst_type
3029 */
3030 void reset_csr_db(){
3031 LOG_DEBUG << "Reset CSR DB";
3032 if(rst_type==POR_L)
3033 LOG_INFO<<"CSR: POR_L reset..";
3034 else if(rst_type==RST_L)
3035 LOG_INFO<<"CSR: RST_L reset..";
3036 else LOG_WARNING << "CSR: WARNING: Undefined reset type!";
3037
3038 USE_NAMESPACE(std)map<ADDR, csr_data_intf <DATA>* >::iterator it;
3039 for(it=csr_db.begin(); it!=csr_db.end(); ++it){
3040 ((*it).second)->reset_data(rst_type);
3041 }
3042 LOG_DEBUG << "Reset CSR DB .. Done";
3043 } //end reset_csr_db()
3044
3045 /**
3046 * This thread handles reset behavior of the module. On the arrival of a
3047 * reset global event, it issues a reset to the CSR DB.
3048 */
3049 void reset_handler(){
3050 while(1){
3051 wait(*parent_global_event);
3052 switch(*parent_global_event_type){
3053 case POR_RESET_ENTER:
3054 LOG_WARNING<<"CSR: Entering reset state...";
3055 rst_type=POR_L;
3056 reset_csr_db();
3057 POR_RESET=true;
3058 break;
3059 case WMR_RESET_ENTER:
3060 LOG_WARNING<<"CSR: Entering reset state...";
3061 rst_type=RST_L;
3062 reset_csr_db();
3063 POR_RESET=true;
3064 break;
3065 case POR_RESET_EXIT:
3066 case WMR_RESET_EXIT:
3067 LOG_INFO<<"CSR: Exiting reset state...";
3068 POR_RESET = false;
3069 break;
3070 }
3071 }
3072 } //end reset_handler()
3073
3074 sc_export<if_type> target_port;
3075 sc_event *parent_global_event; ///< Global event for CSR module
3076 uint8 *parent_global_event_type; ///< Global event type
3077 bool POR_RESET; ///< Power-on reset flag
3078 uint8 rst_type; ///< Reset type
3079
3080 private:
3081 USE_NAMESPACE(std)map<ADDR, csr_data_intf <DATA>* > csr_db;
3082 };
3083} // namespace pcie_tl
3084
3085#endif // INC_csr_hpp__
3086