Merge branch 'cxgb4-next'
[pandora-kernel.git] / drivers / net / ethernet / chelsio / cxgb4 / t4_regs.h
1 /*
2  * This file is part of the Chelsio T4 Ethernet driver for Linux.
3  *
4  * Copyright (c) 2003-2014 Chelsio Communications, Inc. All rights reserved.
5  *
6  * This software is available to you under a choice of one of two
7  * licenses.  You may choose to be licensed under the terms of the GNU
8  * General Public License (GPL) Version 2, available from the file
9  * COPYING in the main directory of this source tree, or the
10  * OpenIB.org BSD license below:
11  *
12  *     Redistribution and use in source and binary forms, with or
13  *     without modification, are permitted provided that the following
14  *     conditions are met:
15  *
16  *      - Redistributions of source code must retain the above
17  *        copyright notice, this list of conditions and the following
18  *        disclaimer.
19  *
20  *      - Redistributions in binary form must reproduce the above
21  *        copyright notice, this list of conditions and the following
22  *        disclaimer in the documentation and/or other materials
23  *        provided with the distribution.
24  *
25  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
28  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
29  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
30  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32  * SOFTWARE.
33  */
34
35 #ifndef __T4_REGS_H
36 #define __T4_REGS_H
37
38 #define MYPF_BASE 0x1b000
39 #define MYPF_REG(reg_addr) (MYPF_BASE + (reg_addr))
40
41 #define PF0_BASE 0x1e000
42 #define PF0_REG(reg_addr) (PF0_BASE + (reg_addr))
43
44 #define PF_STRIDE 0x400
45 #define PF_BASE(idx) (PF0_BASE + (idx) * PF_STRIDE)
46 #define PF_REG(idx, reg) (PF_BASE(idx) + (reg))
47
48 #define MYPORT_BASE 0x1c000
49 #define MYPORT_REG(reg_addr) (MYPORT_BASE + (reg_addr))
50
51 #define PORT0_BASE 0x20000
52 #define PORT0_REG(reg_addr) (PORT0_BASE + (reg_addr))
53
54 #define PORT_STRIDE 0x2000
55 #define PORT_BASE(idx) (PORT0_BASE + (idx) * PORT_STRIDE)
56 #define PORT_REG(idx, reg) (PORT_BASE(idx) + (reg))
57
58 #define EDC_STRIDE (EDC_1_BASE_ADDR - EDC_0_BASE_ADDR)
59 #define EDC_REG(reg, idx) (reg + EDC_STRIDE * idx)
60
61 #define PCIE_MEM_ACCESS_REG(reg_addr, idx) ((reg_addr) + (idx) * 8)
62 #define PCIE_MAILBOX_REG(reg_addr, idx) ((reg_addr) + (idx) * 8)
63 #define MC_BIST_STATUS_REG(reg_addr, idx) ((reg_addr) + (idx) * 4)
64 #define EDC_BIST_STATUS_REG(reg_addr, idx) ((reg_addr) + (idx) * 4)
65
66 #define SGE_PF_KDOORBELL_A 0x0
67
68 #define QID_S    15
69 #define QID_V(x) ((x) << QID_S)
70
71 #define DBPRIO_S    14
72 #define DBPRIO_V(x) ((x) << DBPRIO_S)
73 #define DBPRIO_F    DBPRIO_V(1U)
74
75 #define PIDX_S    0
76 #define PIDX_V(x) ((x) << PIDX_S)
77
78 #define SGE_VF_KDOORBELL_A 0x0
79
80 #define DBTYPE_S    13
81 #define DBTYPE_V(x) ((x) << DBTYPE_S)
82 #define DBTYPE_F    DBTYPE_V(1U)
83
84 #define PIDX_T5_S    0
85 #define PIDX_T5_M    0x1fffU
86 #define PIDX_T5_V(x) ((x) << PIDX_T5_S)
87 #define PIDX_T5_G(x) (((x) >> PIDX_T5_S) & PIDX_T5_M)
88
89 #define SGE_PF_GTS_A 0x4
90
91 #define INGRESSQID_S    16
92 #define INGRESSQID_V(x) ((x) << INGRESSQID_S)
93
94 #define TIMERREG_S    13
95 #define TIMERREG_V(x) ((x) << TIMERREG_S)
96
97 #define SEINTARM_S    12
98 #define SEINTARM_V(x) ((x) << SEINTARM_S)
99
100 #define CIDXINC_S    0
101 #define CIDXINC_M    0xfffU
102 #define CIDXINC_V(x) ((x) << CIDXINC_S)
103
104 #define SGE_CONTROL_A   0x1008
105 #define SGE_CONTROL2_A  0x1124
106
107 #define RXPKTCPLMODE_S    18
108 #define RXPKTCPLMODE_V(x) ((x) << RXPKTCPLMODE_S)
109 #define RXPKTCPLMODE_F    RXPKTCPLMODE_V(1U)
110
111 #define EGRSTATUSPAGESIZE_S    17
112 #define EGRSTATUSPAGESIZE_V(x) ((x) << EGRSTATUSPAGESIZE_S)
113 #define EGRSTATUSPAGESIZE_F    EGRSTATUSPAGESIZE_V(1U)
114
115 #define PKTSHIFT_S    10
116 #define PKTSHIFT_M    0x7U
117 #define PKTSHIFT_V(x) ((x) << PKTSHIFT_S)
118 #define PKTSHIFT_G(x) (((x) >> PKTSHIFT_S) & PKTSHIFT_M)
119
120 #define INGPCIEBOUNDARY_S    7
121 #define INGPCIEBOUNDARY_V(x) ((x) << INGPCIEBOUNDARY_S)
122
123 #define INGPADBOUNDARY_S    4
124 #define INGPADBOUNDARY_M    0x7U
125 #define INGPADBOUNDARY_V(x) ((x) << INGPADBOUNDARY_S)
126 #define INGPADBOUNDARY_G(x) (((x) >> INGPADBOUNDARY_S) & INGPADBOUNDARY_M)
127
128 #define EGRPCIEBOUNDARY_S    1
129 #define EGRPCIEBOUNDARY_V(x) ((x) << EGRPCIEBOUNDARY_S)
130
131 #define  INGPACKBOUNDARY_S      16
132 #define  INGPACKBOUNDARY_M      0x7U
133 #define  INGPACKBOUNDARY_V(x)   ((x) << INGPACKBOUNDARY_S)
134 #define  INGPACKBOUNDARY_G(x)   (((x) >> INGPACKBOUNDARY_S) \
135                                  & INGPACKBOUNDARY_M)
136
137 #define GLOBALENABLE_S    0
138 #define GLOBALENABLE_V(x) ((x) << GLOBALENABLE_S)
139 #define GLOBALENABLE_F    GLOBALENABLE_V(1U)
140
141 #define SGE_HOST_PAGE_SIZE_A 0x100c
142
143 #define HOSTPAGESIZEPF7_S    28
144 #define HOSTPAGESIZEPF7_M    0xfU
145 #define HOSTPAGESIZEPF7_V(x) ((x) << HOSTPAGESIZEPF7_S)
146 #define HOSTPAGESIZEPF7_G(x) (((x) >> HOSTPAGESIZEPF7_S) & HOSTPAGESIZEPF7_M)
147
148 #define HOSTPAGESIZEPF6_S    24
149 #define HOSTPAGESIZEPF6_M    0xfU
150 #define HOSTPAGESIZEPF6_V(x) ((x) << HOSTPAGESIZEPF6_S)
151 #define HOSTPAGESIZEPF6_G(x) (((x) >> HOSTPAGESIZEPF6_S) & HOSTPAGESIZEPF6_M)
152
153 #define HOSTPAGESIZEPF5_S    20
154 #define HOSTPAGESIZEPF5_M    0xfU
155 #define HOSTPAGESIZEPF5_V(x) ((x) << HOSTPAGESIZEPF5_S)
156 #define HOSTPAGESIZEPF5_G(x) (((x) >> HOSTPAGESIZEPF5_S) & HOSTPAGESIZEPF5_M)
157
158 #define HOSTPAGESIZEPF4_S    16
159 #define HOSTPAGESIZEPF4_M    0xfU
160 #define HOSTPAGESIZEPF4_V(x) ((x) << HOSTPAGESIZEPF4_S)
161 #define HOSTPAGESIZEPF4_G(x) (((x) >> HOSTPAGESIZEPF4_S) & HOSTPAGESIZEPF4_M)
162
163 #define HOSTPAGESIZEPF3_S    12
164 #define HOSTPAGESIZEPF3_M    0xfU
165 #define HOSTPAGESIZEPF3_V(x) ((x) << HOSTPAGESIZEPF3_S)
166 #define HOSTPAGESIZEPF3_G(x) (((x) >> HOSTPAGESIZEPF3_S) & HOSTPAGESIZEPF3_M)
167
168 #define HOSTPAGESIZEPF2_S    8
169 #define HOSTPAGESIZEPF2_M    0xfU
170 #define HOSTPAGESIZEPF2_V(x) ((x) << HOSTPAGESIZEPF2_S)
171 #define HOSTPAGESIZEPF2_G(x) (((x) >> HOSTPAGESIZEPF2_S) & HOSTPAGESIZEPF2_M)
172
173 #define HOSTPAGESIZEPF1_S    4
174 #define HOSTPAGESIZEPF1_M    0xfU
175 #define HOSTPAGESIZEPF1_V(x) ((x) << HOSTPAGESIZEPF1_S)
176 #define HOSTPAGESIZEPF1_G(x) (((x) >> HOSTPAGESIZEPF1_S) & HOSTPAGESIZEPF1_M)
177
178 #define HOSTPAGESIZEPF0_S    0
179 #define HOSTPAGESIZEPF0_M    0xfU
180 #define HOSTPAGESIZEPF0_V(x) ((x) << HOSTPAGESIZEPF0_S)
181 #define HOSTPAGESIZEPF0_G(x) (((x) >> HOSTPAGESIZEPF0_S) & HOSTPAGESIZEPF0_M)
182
183 #define SGE_EGRESS_QUEUES_PER_PAGE_PF_A 0x1010
184 #define SGE_EGRESS_QUEUES_PER_PAGE_VF_A 0x1014
185
186 #define QUEUESPERPAGEPF1_S    4
187
188 #define QUEUESPERPAGEPF0_S    0
189 #define QUEUESPERPAGEPF0_M    0xfU
190 #define QUEUESPERPAGEPF0_V(x) ((x) << QUEUESPERPAGEPF0_S)
191 #define QUEUESPERPAGEPF0_G(x) (((x) >> QUEUESPERPAGEPF0_S) & QUEUESPERPAGEPF0_M)
192
193 #define SGE_INT_CAUSE1_A        0x1024
194 #define SGE_INT_CAUSE2_A        0x1030
195 #define SGE_INT_CAUSE3_A        0x103c
196
197 #define ERR_FLM_DBP_S    31
198 #define ERR_FLM_DBP_V(x) ((x) << ERR_FLM_DBP_S)
199 #define ERR_FLM_DBP_F    ERR_FLM_DBP_V(1U)
200
201 #define ERR_FLM_IDMA1_S    30
202 #define ERR_FLM_IDMA1_V(x) ((x) << ERR_FLM_IDMA1_S)
203 #define ERR_FLM_IDMA1_F    ERR_FLM_IDMA1_V(1U)
204
205 #define ERR_FLM_IDMA0_S    29
206 #define ERR_FLM_IDMA0_V(x) ((x) << ERR_FLM_IDMA0_S)
207 #define ERR_FLM_IDMA0_F    ERR_FLM_IDMA0_V(1U)
208
209 #define ERR_FLM_HINT_S    28
210 #define ERR_FLM_HINT_V(x) ((x) << ERR_FLM_HINT_S)
211 #define ERR_FLM_HINT_F    ERR_FLM_HINT_V(1U)
212
213 #define ERR_PCIE_ERROR3_S    27
214 #define ERR_PCIE_ERROR3_V(x) ((x) << ERR_PCIE_ERROR3_S)
215 #define ERR_PCIE_ERROR3_F    ERR_PCIE_ERROR3_V(1U)
216
217 #define ERR_PCIE_ERROR2_S    26
218 #define ERR_PCIE_ERROR2_V(x) ((x) << ERR_PCIE_ERROR2_S)
219 #define ERR_PCIE_ERROR2_F    ERR_PCIE_ERROR2_V(1U)
220
221 #define ERR_PCIE_ERROR1_S    25
222 #define ERR_PCIE_ERROR1_V(x) ((x) << ERR_PCIE_ERROR1_S)
223 #define ERR_PCIE_ERROR1_F    ERR_PCIE_ERROR1_V(1U)
224
225 #define ERR_PCIE_ERROR0_S    24
226 #define ERR_PCIE_ERROR0_V(x) ((x) << ERR_PCIE_ERROR0_S)
227 #define ERR_PCIE_ERROR0_F    ERR_PCIE_ERROR0_V(1U)
228
229 #define ERR_CPL_EXCEED_IQE_SIZE_S    22
230 #define ERR_CPL_EXCEED_IQE_SIZE_V(x) ((x) << ERR_CPL_EXCEED_IQE_SIZE_S)
231 #define ERR_CPL_EXCEED_IQE_SIZE_F    ERR_CPL_EXCEED_IQE_SIZE_V(1U)
232
233 #define ERR_INVALID_CIDX_INC_S    21
234 #define ERR_INVALID_CIDX_INC_V(x) ((x) << ERR_INVALID_CIDX_INC_S)
235 #define ERR_INVALID_CIDX_INC_F    ERR_INVALID_CIDX_INC_V(1U)
236
237 #define ERR_CPL_OPCODE_0_S    19
238 #define ERR_CPL_OPCODE_0_V(x) ((x) << ERR_CPL_OPCODE_0_S)
239 #define ERR_CPL_OPCODE_0_F    ERR_CPL_OPCODE_0_V(1U)
240
241 #define ERR_DROPPED_DB_S    18
242 #define ERR_DROPPED_DB_V(x) ((x) << ERR_DROPPED_DB_S)
243 #define ERR_DROPPED_DB_F    ERR_DROPPED_DB_V(1U)
244
245 #define ERR_DATA_CPL_ON_HIGH_QID1_S    17
246 #define ERR_DATA_CPL_ON_HIGH_QID1_V(x) ((x) << ERR_DATA_CPL_ON_HIGH_QID1_S)
247 #define ERR_DATA_CPL_ON_HIGH_QID1_F    ERR_DATA_CPL_ON_HIGH_QID1_V(1U)
248
249 #define ERR_DATA_CPL_ON_HIGH_QID0_S    16
250 #define ERR_DATA_CPL_ON_HIGH_QID0_V(x) ((x) << ERR_DATA_CPL_ON_HIGH_QID0_S)
251 #define ERR_DATA_CPL_ON_HIGH_QID0_F    ERR_DATA_CPL_ON_HIGH_QID0_V(1U)
252
253 #define ERR_BAD_DB_PIDX3_S    15
254 #define ERR_BAD_DB_PIDX3_V(x) ((x) << ERR_BAD_DB_PIDX3_S)
255 #define ERR_BAD_DB_PIDX3_F    ERR_BAD_DB_PIDX3_V(1U)
256
257 #define ERR_BAD_DB_PIDX2_S    14
258 #define ERR_BAD_DB_PIDX2_V(x) ((x) << ERR_BAD_DB_PIDX2_S)
259 #define ERR_BAD_DB_PIDX2_F    ERR_BAD_DB_PIDX2_V(1U)
260
261 #define ERR_BAD_DB_PIDX1_S    13
262 #define ERR_BAD_DB_PIDX1_V(x) ((x) << ERR_BAD_DB_PIDX1_S)
263 #define ERR_BAD_DB_PIDX1_F    ERR_BAD_DB_PIDX1_V(1U)
264
265 #define ERR_BAD_DB_PIDX0_S    12
266 #define ERR_BAD_DB_PIDX0_V(x) ((x) << ERR_BAD_DB_PIDX0_S)
267 #define ERR_BAD_DB_PIDX0_F    ERR_BAD_DB_PIDX0_V(1U)
268
269 #define ERR_ING_CTXT_PRIO_S    10
270 #define ERR_ING_CTXT_PRIO_V(x) ((x) << ERR_ING_CTXT_PRIO_S)
271 #define ERR_ING_CTXT_PRIO_F    ERR_ING_CTXT_PRIO_V(1U)
272
273 #define ERR_EGR_CTXT_PRIO_S    9
274 #define ERR_EGR_CTXT_PRIO_V(x) ((x) << ERR_EGR_CTXT_PRIO_S)
275 #define ERR_EGR_CTXT_PRIO_F    ERR_EGR_CTXT_PRIO_V(1U)
276
277 #define DBFIFO_HP_INT_S    8
278 #define DBFIFO_HP_INT_V(x) ((x) << DBFIFO_HP_INT_S)
279 #define DBFIFO_HP_INT_F    DBFIFO_HP_INT_V(1U)
280
281 #define DBFIFO_LP_INT_S    7
282 #define DBFIFO_LP_INT_V(x) ((x) << DBFIFO_LP_INT_S)
283 #define DBFIFO_LP_INT_F    DBFIFO_LP_INT_V(1U)
284
285 #define INGRESS_SIZE_ERR_S    5
286 #define INGRESS_SIZE_ERR_V(x) ((x) << INGRESS_SIZE_ERR_S)
287 #define INGRESS_SIZE_ERR_F    INGRESS_SIZE_ERR_V(1U)
288
289 #define EGRESS_SIZE_ERR_S    4
290 #define EGRESS_SIZE_ERR_V(x) ((x) << EGRESS_SIZE_ERR_S)
291 #define EGRESS_SIZE_ERR_F    EGRESS_SIZE_ERR_V(1U)
292
293 #define SGE_INT_ENABLE3_A 0x1040
294 #define SGE_FL_BUFFER_SIZE0_A 0x1044
295 #define SGE_FL_BUFFER_SIZE1_A 0x1048
296 #define SGE_FL_BUFFER_SIZE2_A 0x104c
297 #define SGE_FL_BUFFER_SIZE3_A 0x1050
298 #define SGE_FL_BUFFER_SIZE4_A 0x1054
299 #define SGE_FL_BUFFER_SIZE5_A 0x1058
300 #define SGE_FL_BUFFER_SIZE6_A 0x105c
301 #define SGE_FL_BUFFER_SIZE7_A 0x1060
302 #define SGE_FL_BUFFER_SIZE8_A 0x1064
303
304 #define SGE_INGRESS_RX_THRESHOLD_A 0x10a0
305
306 #define THRESHOLD_0_S    24
307 #define THRESHOLD_0_M    0x3fU
308 #define THRESHOLD_0_V(x) ((x) << THRESHOLD_0_S)
309 #define THRESHOLD_0_G(x) (((x) >> THRESHOLD_0_S) & THRESHOLD_0_M)
310
311 #define THRESHOLD_1_S    16
312 #define THRESHOLD_1_M    0x3fU
313 #define THRESHOLD_1_V(x) ((x) << THRESHOLD_1_S)
314 #define THRESHOLD_1_G(x) (((x) >> THRESHOLD_1_S) & THRESHOLD_1_M)
315
316 #define THRESHOLD_2_S    8
317 #define THRESHOLD_2_M    0x3fU
318 #define THRESHOLD_2_V(x) ((x) << THRESHOLD_2_S)
319 #define THRESHOLD_2_G(x) (((x) >> THRESHOLD_2_S) & THRESHOLD_2_M)
320
321 #define THRESHOLD_3_S    0
322 #define THRESHOLD_3_M    0x3fU
323 #define THRESHOLD_3_V(x) ((x) << THRESHOLD_3_S)
324 #define THRESHOLD_3_G(x) (((x) >> THRESHOLD_3_S) & THRESHOLD_3_M)
325
326 #define SGE_CONM_CTRL_A 0x1094
327
328 #define EGRTHRESHOLD_S    8
329 #define EGRTHRESHOLD_M    0x3fU
330 #define EGRTHRESHOLD_V(x) ((x) << EGRTHRESHOLD_S)
331 #define EGRTHRESHOLD_G(x) (((x) >> EGRTHRESHOLD_S) & EGRTHRESHOLD_M)
332
333 #define EGRTHRESHOLDPACKING_S    14
334 #define EGRTHRESHOLDPACKING_M    0x3fU
335 #define EGRTHRESHOLDPACKING_V(x) ((x) << EGRTHRESHOLDPACKING_S)
336 #define EGRTHRESHOLDPACKING_G(x) \
337         (((x) >> EGRTHRESHOLDPACKING_S) & EGRTHRESHOLDPACKING_M)
338
339 #define SGE_TIMESTAMP_LO_A 0x1098
340 #define SGE_TIMESTAMP_HI_A 0x109c
341
342 #define TSOP_S    28
343 #define TSOP_M    0x3U
344 #define TSOP_V(x) ((x) << TSOP_S)
345 #define TSOP_G(x) (((x) >> TSOP_S) & TSOP_M)
346
347 #define TSVAL_S    0
348 #define TSVAL_M    0xfffffffU
349 #define TSVAL_V(x) ((x) << TSVAL_S)
350 #define TSVAL_G(x) (((x) >> TSVAL_S) & TSVAL_M)
351
352 #define SGE_DBFIFO_STATUS_A 0x10a4
353
354 #define HP_INT_THRESH_S    28
355 #define HP_INT_THRESH_M    0xfU
356 #define HP_INT_THRESH_V(x) ((x) << HP_INT_THRESH_S)
357
358 #define LP_INT_THRESH_S    12
359 #define LP_INT_THRESH_M    0xfU
360 #define LP_INT_THRESH_V(x) ((x) << LP_INT_THRESH_S)
361
362 #define SGE_DOORBELL_CONTROL_A 0x10a8
363
364 #define NOCOALESCE_S    26
365 #define NOCOALESCE_V(x) ((x) << NOCOALESCE_S)
366 #define NOCOALESCE_F    NOCOALESCE_V(1U)
367
368 #define ENABLE_DROP_S    13
369 #define ENABLE_DROP_V(x) ((x) << ENABLE_DROP_S)
370 #define ENABLE_DROP_F    ENABLE_DROP_V(1U)
371
372 #define SGE_TIMER_VALUE_0_AND_1_A 0x10b8
373
374 #define TIMERVALUE0_S    16
375 #define TIMERVALUE0_M    0xffffU
376 #define TIMERVALUE0_V(x) ((x) << TIMERVALUE0_S)
377 #define TIMERVALUE0_G(x) (((x) >> TIMERVALUE0_S) & TIMERVALUE0_M)
378
379 #define TIMERVALUE1_S    0
380 #define TIMERVALUE1_M    0xffffU
381 #define TIMERVALUE1_V(x) ((x) << TIMERVALUE1_S)
382 #define TIMERVALUE1_G(x) (((x) >> TIMERVALUE1_S) & TIMERVALUE1_M)
383
384 #define SGE_TIMER_VALUE_2_AND_3_A 0x10bc
385
386 #define TIMERVALUE2_S    16
387 #define TIMERVALUE2_M    0xffffU
388 #define TIMERVALUE2_V(x) ((x) << TIMERVALUE2_S)
389 #define TIMERVALUE2_G(x) (((x) >> TIMERVALUE2_S) & TIMERVALUE2_M)
390
391 #define TIMERVALUE3_S    0
392 #define TIMERVALUE3_M    0xffffU
393 #define TIMERVALUE3_V(x) ((x) << TIMERVALUE3_S)
394 #define TIMERVALUE3_G(x) (((x) >> TIMERVALUE3_S) & TIMERVALUE3_M)
395
396 #define SGE_TIMER_VALUE_4_AND_5_A 0x10c0
397
398 #define TIMERVALUE4_S    16
399 #define TIMERVALUE4_M    0xffffU
400 #define TIMERVALUE4_V(x) ((x) << TIMERVALUE4_S)
401 #define TIMERVALUE4_G(x) (((x) >> TIMERVALUE4_S) & TIMERVALUE4_M)
402
403 #define TIMERVALUE5_S    0
404 #define TIMERVALUE5_M    0xffffU
405 #define TIMERVALUE5_V(x) ((x) << TIMERVALUE5_S)
406 #define TIMERVALUE5_G(x) (((x) >> TIMERVALUE5_S) & TIMERVALUE5_M)
407
408 #define SGE_DEBUG_INDEX_A 0x10cc
409 #define SGE_DEBUG_DATA_HIGH_A 0x10d0
410 #define SGE_DEBUG_DATA_LOW_A 0x10d4
411
412 #define SGE_DEBUG_DATA_LOW_INDEX_2_A    0x12c8
413 #define SGE_DEBUG_DATA_LOW_INDEX_3_A    0x12cc
414 #define SGE_DEBUG_DATA_HIGH_INDEX_10_A  0x12a8
415
416 #define SGE_INGRESS_QUEUES_PER_PAGE_PF_A 0x10f4
417 #define SGE_INGRESS_QUEUES_PER_PAGE_VF_A 0x10f8
418
419 #define HP_INT_THRESH_S    28
420 #define HP_INT_THRESH_M    0xfU
421 #define HP_INT_THRESH_V(x) ((x) << HP_INT_THRESH_S)
422
423 #define HP_COUNT_S    16
424 #define HP_COUNT_M    0x7ffU
425 #define HP_COUNT_G(x) (((x) >> HP_COUNT_S) & HP_COUNT_M)
426
427 #define LP_INT_THRESH_S    12
428 #define LP_INT_THRESH_M    0xfU
429 #define LP_INT_THRESH_V(x) ((x) << LP_INT_THRESH_S)
430
431 #define LP_COUNT_S    0
432 #define LP_COUNT_M    0x7ffU
433 #define LP_COUNT_G(x) (((x) >> LP_COUNT_S) & LP_COUNT_M)
434
435 #define LP_INT_THRESH_T5_S    18
436 #define LP_INT_THRESH_T5_M    0xfffU
437 #define LP_INT_THRESH_T5_V(x) ((x) << LP_INT_THRESH_T5_S)
438
439 #define LP_COUNT_T5_S    0
440 #define LP_COUNT_T5_M    0x3ffffU
441 #define LP_COUNT_T5_G(x) (((x) >> LP_COUNT_T5_S) & LP_COUNT_T5_M)
442
443 #define SGE_DOORBELL_CONTROL_A 0x10a8
444
445 #define SGE_STAT_TOTAL_A        0x10e4
446 #define SGE_STAT_MATCH_A        0x10e8
447 #define SGE_STAT_CFG_A          0x10ec
448
449 #define STATSOURCE_T5_S    9
450 #define STATSOURCE_T5_V(x) ((x) << STATSOURCE_T5_S)
451
452 #define SGE_DBFIFO_STATUS2_A 0x1118
453
454 #define HP_INT_THRESH_T5_S    10
455 #define HP_INT_THRESH_T5_M    0xfU
456 #define HP_INT_THRESH_T5_V(x) ((x) << HP_INT_THRESH_T5_S)
457
458 #define HP_COUNT_T5_S    0
459 #define HP_COUNT_T5_M    0x3ffU
460 #define HP_COUNT_T5_G(x) (((x) >> HP_COUNT_T5_S) & HP_COUNT_T5_M)
461
462 #define ENABLE_DROP_S    13
463 #define ENABLE_DROP_V(x) ((x) << ENABLE_DROP_S)
464 #define ENABLE_DROP_F    ENABLE_DROP_V(1U)
465
466 #define DROPPED_DB_S    0
467 #define DROPPED_DB_V(x) ((x) << DROPPED_DB_S)
468 #define DROPPED_DB_F    DROPPED_DB_V(1U)
469
470 #define SGE_CTXT_CMD_A 0x11fc
471 #define SGE_DBQ_CTXT_BADDR_A 0x1084
472
473 /* registers for module PCIE */
474 #define PCIE_PF_CFG_A   0x40
475
476 #define AIVEC_S    4
477 #define AIVEC_M    0x3ffU
478 #define AIVEC_V(x) ((x) << AIVEC_S)
479
480 #define PCIE_PF_CLI_A   0x44
481 #define PCIE_INT_CAUSE_A        0x3004
482
483 #define UNXSPLCPLERR_S    29
484 #define UNXSPLCPLERR_V(x) ((x) << UNXSPLCPLERR_S)
485 #define UNXSPLCPLERR_F    UNXSPLCPLERR_V(1U)
486
487 #define PCIEPINT_S    28
488 #define PCIEPINT_V(x) ((x) << PCIEPINT_S)
489 #define PCIEPINT_F    PCIEPINT_V(1U)
490
491 #define PCIESINT_S    27
492 #define PCIESINT_V(x) ((x) << PCIESINT_S)
493 #define PCIESINT_F    PCIESINT_V(1U)
494
495 #define RPLPERR_S    26
496 #define RPLPERR_V(x) ((x) << RPLPERR_S)
497 #define RPLPERR_F    RPLPERR_V(1U)
498
499 #define RXWRPERR_S    25
500 #define RXWRPERR_V(x) ((x) << RXWRPERR_S)
501 #define RXWRPERR_F    RXWRPERR_V(1U)
502
503 #define RXCPLPERR_S    24
504 #define RXCPLPERR_V(x) ((x) << RXCPLPERR_S)
505 #define RXCPLPERR_F    RXCPLPERR_V(1U)
506
507 #define PIOTAGPERR_S    23
508 #define PIOTAGPERR_V(x) ((x) << PIOTAGPERR_S)
509 #define PIOTAGPERR_F    PIOTAGPERR_V(1U)
510
511 #define MATAGPERR_S    22
512 #define MATAGPERR_V(x) ((x) << MATAGPERR_S)
513 #define MATAGPERR_F    MATAGPERR_V(1U)
514
515 #define INTXCLRPERR_S    21
516 #define INTXCLRPERR_V(x) ((x) << INTXCLRPERR_S)
517 #define INTXCLRPERR_F    INTXCLRPERR_V(1U)
518
519 #define FIDPERR_S    20
520 #define FIDPERR_V(x) ((x) << FIDPERR_S)
521 #define FIDPERR_F    FIDPERR_V(1U)
522
523 #define CFGSNPPERR_S    19
524 #define CFGSNPPERR_V(x) ((x) << CFGSNPPERR_S)
525 #define CFGSNPPERR_F    CFGSNPPERR_V(1U)
526
527 #define HRSPPERR_S    18
528 #define HRSPPERR_V(x) ((x) << HRSPPERR_S)
529 #define HRSPPERR_F    HRSPPERR_V(1U)
530
531 #define HREQPERR_S    17
532 #define HREQPERR_V(x) ((x) << HREQPERR_S)
533 #define HREQPERR_F    HREQPERR_V(1U)
534
535 #define HCNTPERR_S    16
536 #define HCNTPERR_V(x) ((x) << HCNTPERR_S)
537 #define HCNTPERR_F    HCNTPERR_V(1U)
538
539 #define DRSPPERR_S    15
540 #define DRSPPERR_V(x) ((x) << DRSPPERR_S)
541 #define DRSPPERR_F    DRSPPERR_V(1U)
542
543 #define DREQPERR_S    14
544 #define DREQPERR_V(x) ((x) << DREQPERR_S)
545 #define DREQPERR_F    DREQPERR_V(1U)
546
547 #define DCNTPERR_S    13
548 #define DCNTPERR_V(x) ((x) << DCNTPERR_S)
549 #define DCNTPERR_F    DCNTPERR_V(1U)
550
551 #define CRSPPERR_S    12
552 #define CRSPPERR_V(x) ((x) << CRSPPERR_S)
553 #define CRSPPERR_F    CRSPPERR_V(1U)
554
555 #define CREQPERR_S    11
556 #define CREQPERR_V(x) ((x) << CREQPERR_S)
557 #define CREQPERR_F    CREQPERR_V(1U)
558
559 #define CCNTPERR_S    10
560 #define CCNTPERR_V(x) ((x) << CCNTPERR_S)
561 #define CCNTPERR_F    CCNTPERR_V(1U)
562
563 #define TARTAGPERR_S    9
564 #define TARTAGPERR_V(x) ((x) << TARTAGPERR_S)
565 #define TARTAGPERR_F    TARTAGPERR_V(1U)
566
567 #define PIOREQPERR_S    8
568 #define PIOREQPERR_V(x) ((x) << PIOREQPERR_S)
569 #define PIOREQPERR_F    PIOREQPERR_V(1U)
570
571 #define PIOCPLPERR_S    7
572 #define PIOCPLPERR_V(x) ((x) << PIOCPLPERR_S)
573 #define PIOCPLPERR_F    PIOCPLPERR_V(1U)
574
575 #define MSIXDIPERR_S    6
576 #define MSIXDIPERR_V(x) ((x) << MSIXDIPERR_S)
577 #define MSIXDIPERR_F    MSIXDIPERR_V(1U)
578
579 #define MSIXDATAPERR_S    5
580 #define MSIXDATAPERR_V(x) ((x) << MSIXDATAPERR_S)
581 #define MSIXDATAPERR_F    MSIXDATAPERR_V(1U)
582
583 #define MSIXADDRHPERR_S    4
584 #define MSIXADDRHPERR_V(x) ((x) << MSIXADDRHPERR_S)
585 #define MSIXADDRHPERR_F    MSIXADDRHPERR_V(1U)
586
587 #define MSIXADDRLPERR_S    3
588 #define MSIXADDRLPERR_V(x) ((x) << MSIXADDRLPERR_S)
589 #define MSIXADDRLPERR_F    MSIXADDRLPERR_V(1U)
590
591 #define MSIDATAPERR_S    2
592 #define MSIDATAPERR_V(x) ((x) << MSIDATAPERR_S)
593 #define MSIDATAPERR_F    MSIDATAPERR_V(1U)
594
595 #define MSIADDRHPERR_S    1
596 #define MSIADDRHPERR_V(x) ((x) << MSIADDRHPERR_S)
597 #define MSIADDRHPERR_F    MSIADDRHPERR_V(1U)
598
599 #define MSIADDRLPERR_S    0
600 #define MSIADDRLPERR_V(x) ((x) << MSIADDRLPERR_S)
601 #define MSIADDRLPERR_F    MSIADDRLPERR_V(1U)
602
603 #define READRSPERR_S    29
604 #define READRSPERR_V(x) ((x) << READRSPERR_S)
605 #define READRSPERR_F    READRSPERR_V(1U)
606
607 #define TRGT1GRPPERR_S    28
608 #define TRGT1GRPPERR_V(x) ((x) << TRGT1GRPPERR_S)
609 #define TRGT1GRPPERR_F    TRGT1GRPPERR_V(1U)
610
611 #define IPSOTPERR_S    27
612 #define IPSOTPERR_V(x) ((x) << IPSOTPERR_S)
613 #define IPSOTPERR_F    IPSOTPERR_V(1U)
614
615 #define IPRETRYPERR_S    26
616 #define IPRETRYPERR_V(x) ((x) << IPRETRYPERR_S)
617 #define IPRETRYPERR_F    IPRETRYPERR_V(1U)
618
619 #define IPRXDATAGRPPERR_S    25
620 #define IPRXDATAGRPPERR_V(x) ((x) << IPRXDATAGRPPERR_S)
621 #define IPRXDATAGRPPERR_F    IPRXDATAGRPPERR_V(1U)
622
623 #define IPRXHDRGRPPERR_S    24
624 #define IPRXHDRGRPPERR_V(x) ((x) << IPRXHDRGRPPERR_S)
625 #define IPRXHDRGRPPERR_F    IPRXHDRGRPPERR_V(1U)
626
627 #define MAGRPPERR_S    22
628 #define MAGRPPERR_V(x) ((x) << MAGRPPERR_S)
629 #define MAGRPPERR_F    MAGRPPERR_V(1U)
630
631 #define VFIDPERR_S    21
632 #define VFIDPERR_V(x) ((x) << VFIDPERR_S)
633 #define VFIDPERR_F    VFIDPERR_V(1U)
634
635 #define HREQWRPERR_S    16
636 #define HREQWRPERR_V(x) ((x) << HREQWRPERR_S)
637 #define HREQWRPERR_F    HREQWRPERR_V(1U)
638
639 #define DREQWRPERR_S    13
640 #define DREQWRPERR_V(x) ((x) << DREQWRPERR_S)
641 #define DREQWRPERR_F    DREQWRPERR_V(1U)
642
643 #define CREQRDPERR_S    11
644 #define CREQRDPERR_V(x) ((x) << CREQRDPERR_S)
645 #define CREQRDPERR_F    CREQRDPERR_V(1U)
646
647 #define MSTTAGQPERR_S    10
648 #define MSTTAGQPERR_V(x) ((x) << MSTTAGQPERR_S)
649 #define MSTTAGQPERR_F    MSTTAGQPERR_V(1U)
650
651 #define PIOREQGRPPERR_S    8
652 #define PIOREQGRPPERR_V(x) ((x) << PIOREQGRPPERR_S)
653 #define PIOREQGRPPERR_F    PIOREQGRPPERR_V(1U)
654
655 #define PIOCPLGRPPERR_S    7
656 #define PIOCPLGRPPERR_V(x) ((x) << PIOCPLGRPPERR_S)
657 #define PIOCPLGRPPERR_F    PIOCPLGRPPERR_V(1U)
658
659 #define MSIXSTIPERR_S    2
660 #define MSIXSTIPERR_V(x) ((x) << MSIXSTIPERR_S)
661 #define MSIXSTIPERR_F    MSIXSTIPERR_V(1U)
662
663 #define MSTTIMEOUTPERR_S    1
664 #define MSTTIMEOUTPERR_V(x) ((x) << MSTTIMEOUTPERR_S)
665 #define MSTTIMEOUTPERR_F    MSTTIMEOUTPERR_V(1U)
666
667 #define MSTGRPPERR_S    0
668 #define MSTGRPPERR_V(x) ((x) << MSTGRPPERR_S)
669 #define MSTGRPPERR_F    MSTGRPPERR_V(1U)
670
671 #define PCIE_NONFAT_ERR_A       0x3010
672 #define PCIE_CFG_SPACE_REQ_A    0x3060
673 #define PCIE_CFG_SPACE_DATA_A   0x3064
674 #define PCIE_MEM_ACCESS_BASE_WIN_A 0x3068
675
676 #define PCIEOFST_S    10
677 #define PCIEOFST_M    0x3fffffU
678 #define PCIEOFST_G(x) (((x) >> PCIEOFST_S) & PCIEOFST_M)
679
680 #define BIR_S    8
681 #define BIR_M    0x3U
682 #define BIR_V(x) ((x) << BIR_S)
683 #define BIR_G(x) (((x) >> BIR_S) & BIR_M)
684
685 #define WINDOW_S    0
686 #define WINDOW_M    0xffU
687 #define WINDOW_V(x) ((x) << WINDOW_S)
688 #define WINDOW_G(x) (((x) >> WINDOW_S) & WINDOW_M)
689
690 #define PCIE_MEM_ACCESS_OFFSET_A 0x306c
691
692 #define ENABLE_S    30
693 #define ENABLE_V(x) ((x) << ENABLE_S)
694 #define ENABLE_F    ENABLE_V(1U)
695
696 #define LOCALCFG_S    28
697 #define LOCALCFG_V(x) ((x) << LOCALCFG_S)
698 #define LOCALCFG_F    LOCALCFG_V(1U)
699
700 #define FUNCTION_S    12
701 #define FUNCTION_V(x) ((x) << FUNCTION_S)
702
703 #define REGISTER_S    0
704 #define REGISTER_V(x) ((x) << REGISTER_S)
705
706 #define PFNUM_S    0
707 #define PFNUM_V(x) ((x) << PFNUM_S)
708
709 #define PCIE_FW_A 0x30b8
710
711 #define PCIE_CORE_UTL_SYSTEM_BUS_AGENT_STATUS_A 0x5908
712
713 #define RNPP_S    31
714 #define RNPP_V(x) ((x) << RNPP_S)
715 #define RNPP_F    RNPP_V(1U)
716
717 #define RPCP_S    29
718 #define RPCP_V(x) ((x) << RPCP_S)
719 #define RPCP_F    RPCP_V(1U)
720
721 #define RCIP_S    27
722 #define RCIP_V(x) ((x) << RCIP_S)
723 #define RCIP_F    RCIP_V(1U)
724
725 #define RCCP_S    26
726 #define RCCP_V(x) ((x) << RCCP_S)
727 #define RCCP_F    RCCP_V(1U)
728
729 #define RFTP_S    23
730 #define RFTP_V(x) ((x) << RFTP_S)
731 #define RFTP_F    RFTP_V(1U)
732
733 #define PTRP_S    20
734 #define PTRP_V(x) ((x) << PTRP_S)
735 #define PTRP_F    PTRP_V(1U)
736
737 #define PCIE_CORE_UTL_PCI_EXPRESS_PORT_STATUS_A 0x59a4
738
739 #define TPCP_S    30
740 #define TPCP_V(x) ((x) << TPCP_S)
741 #define TPCP_F    TPCP_V(1U)
742
743 #define TNPP_S    29
744 #define TNPP_V(x) ((x) << TNPP_S)
745 #define TNPP_F    TNPP_V(1U)
746
747 #define TFTP_S    28
748 #define TFTP_V(x) ((x) << TFTP_S)
749 #define TFTP_F    TFTP_V(1U)
750
751 #define TCAP_S    27
752 #define TCAP_V(x) ((x) << TCAP_S)
753 #define TCAP_F    TCAP_V(1U)
754
755 #define TCIP_S    26
756 #define TCIP_V(x) ((x) << TCIP_S)
757 #define TCIP_F    TCIP_V(1U)
758
759 #define RCAP_S    25
760 #define RCAP_V(x) ((x) << RCAP_S)
761 #define RCAP_F    RCAP_V(1U)
762
763 #define PLUP_S    23
764 #define PLUP_V(x) ((x) << PLUP_S)
765 #define PLUP_F    PLUP_V(1U)
766
767 #define PLDN_S    22
768 #define PLDN_V(x) ((x) << PLDN_S)
769 #define PLDN_F    PLDN_V(1U)
770
771 #define OTDD_S    21
772 #define OTDD_V(x) ((x) << OTDD_S)
773 #define OTDD_F    OTDD_V(1U)
774
775 #define GTRP_S    20
776 #define GTRP_V(x) ((x) << GTRP_S)
777 #define GTRP_F    GTRP_V(1U)
778
779 #define RDPE_S    18
780 #define RDPE_V(x) ((x) << RDPE_S)
781 #define RDPE_F    RDPE_V(1U)
782
783 #define TDCE_S    17
784 #define TDCE_V(x) ((x) << TDCE_S)
785 #define TDCE_F    TDCE_V(1U)
786
787 #define TDUE_S    16
788 #define TDUE_V(x) ((x) << TDUE_S)
789 #define TDUE_F    TDUE_V(1U)
790
791 /* registers for module MC */
792 #define MC_INT_CAUSE_A          0x7518
793 #define MC_P_INT_CAUSE_A        0x41318
794
795 #define ECC_UE_INT_CAUSE_S    2
796 #define ECC_UE_INT_CAUSE_V(x) ((x) << ECC_UE_INT_CAUSE_S)
797 #define ECC_UE_INT_CAUSE_F    ECC_UE_INT_CAUSE_V(1U)
798
799 #define ECC_CE_INT_CAUSE_S    1
800 #define ECC_CE_INT_CAUSE_V(x) ((x) << ECC_CE_INT_CAUSE_S)
801 #define ECC_CE_INT_CAUSE_F    ECC_CE_INT_CAUSE_V(1U)
802
803 #define PERR_INT_CAUSE_S    0
804 #define PERR_INT_CAUSE_V(x) ((x) << PERR_INT_CAUSE_S)
805 #define PERR_INT_CAUSE_F    PERR_INT_CAUSE_V(1U)
806
807 #define MC_ECC_STATUS_A         0x751c
808 #define MC_P_ECC_STATUS_A       0x4131c
809
810 #define ECC_CECNT_S    16
811 #define ECC_CECNT_M    0xffffU
812 #define ECC_CECNT_V(x) ((x) << ECC_CECNT_S)
813 #define ECC_CECNT_G(x) (((x) >> ECC_CECNT_S) & ECC_CECNT_M)
814
815 #define ECC_UECNT_S    0
816 #define ECC_UECNT_M    0xffffU
817 #define ECC_UECNT_V(x) ((x) << ECC_UECNT_S)
818 #define ECC_UECNT_G(x) (((x) >> ECC_UECNT_S) & ECC_UECNT_M)
819
820 #define MC_BIST_CMD_A 0x7600
821
822 #define START_BIST_S    31
823 #define START_BIST_V(x) ((x) << START_BIST_S)
824 #define START_BIST_F    START_BIST_V(1U)
825
826 #define BIST_CMD_GAP_S    8
827 #define BIST_CMD_GAP_V(x) ((x) << BIST_CMD_GAP_S)
828
829 #define BIST_OPCODE_S    0
830 #define BIST_OPCODE_V(x) ((x) << BIST_OPCODE_S)
831
832 #define MC_BIST_CMD_ADDR_A 0x7604
833 #define MC_BIST_CMD_LEN_A 0x7608
834 #define MC_BIST_DATA_PATTERN_A 0x760c
835
836 #define MC_BIST_STATUS_RDATA_A 0x7688
837
838 /* registers for module MA */
839 #define MA_EDRAM0_BAR_A 0x77c0
840
841 #define EDRAM0_SIZE_S    0
842 #define EDRAM0_SIZE_M    0xfffU
843 #define EDRAM0_SIZE_V(x) ((x) << EDRAM0_SIZE_S)
844 #define EDRAM0_SIZE_G(x) (((x) >> EDRAM0_SIZE_S) & EDRAM0_SIZE_M)
845
846 #define MA_EDRAM1_BAR_A 0x77c4
847
848 #define EDRAM1_SIZE_S    0
849 #define EDRAM1_SIZE_M    0xfffU
850 #define EDRAM1_SIZE_V(x) ((x) << EDRAM1_SIZE_S)
851 #define EDRAM1_SIZE_G(x) (((x) >> EDRAM1_SIZE_S) & EDRAM1_SIZE_M)
852
853 #define MA_EXT_MEMORY_BAR_A 0x77c8
854
855 #define EXT_MEM_SIZE_S    0
856 #define EXT_MEM_SIZE_M    0xfffU
857 #define EXT_MEM_SIZE_V(x) ((x) << EXT_MEM_SIZE_S)
858 #define EXT_MEM_SIZE_G(x) (((x) >> EXT_MEM_SIZE_S) & EXT_MEM_SIZE_M)
859
860 #define MA_EXT_MEMORY1_BAR_A 0x7808
861
862 #define EXT_MEM1_SIZE_S    0
863 #define EXT_MEM1_SIZE_M    0xfffU
864 #define EXT_MEM1_SIZE_V(x) ((x) << EXT_MEM1_SIZE_S)
865 #define EXT_MEM1_SIZE_G(x) (((x) >> EXT_MEM1_SIZE_S) & EXT_MEM1_SIZE_M)
866
867 #define MA_EXT_MEMORY0_BAR_A 0x77c8
868
869 #define EXT_MEM0_SIZE_S    0
870 #define EXT_MEM0_SIZE_M    0xfffU
871 #define EXT_MEM0_SIZE_V(x) ((x) << EXT_MEM0_SIZE_S)
872 #define EXT_MEM0_SIZE_G(x) (((x) >> EXT_MEM0_SIZE_S) & EXT_MEM0_SIZE_M)
873
874 #define MA_TARGET_MEM_ENABLE_A 0x77d8
875
876 #define EXT_MEM_ENABLE_S    2
877 #define EXT_MEM_ENABLE_V(x) ((x) << EXT_MEM_ENABLE_S)
878 #define EXT_MEM_ENABLE_F    EXT_MEM_ENABLE_V(1U)
879
880 #define EDRAM1_ENABLE_S    1
881 #define EDRAM1_ENABLE_V(x) ((x) << EDRAM1_ENABLE_S)
882 #define EDRAM1_ENABLE_F    EDRAM1_ENABLE_V(1U)
883
884 #define EDRAM0_ENABLE_S    0
885 #define EDRAM0_ENABLE_V(x) ((x) << EDRAM0_ENABLE_S)
886 #define EDRAM0_ENABLE_F    EDRAM0_ENABLE_V(1U)
887
888 #define EXT_MEM1_ENABLE_S    4
889 #define EXT_MEM1_ENABLE_V(x) ((x) << EXT_MEM1_ENABLE_S)
890 #define EXT_MEM1_ENABLE_F    EXT_MEM1_ENABLE_V(1U)
891
892 #define EXT_MEM0_ENABLE_S    2
893 #define EXT_MEM0_ENABLE_V(x) ((x) << EXT_MEM0_ENABLE_S)
894 #define EXT_MEM0_ENABLE_F    EXT_MEM0_ENABLE_V(1U)
895
896 #define MA_INT_CAUSE_A  0x77e0
897
898 #define MEM_PERR_INT_CAUSE_S    1
899 #define MEM_PERR_INT_CAUSE_V(x) ((x) << MEM_PERR_INT_CAUSE_S)
900 #define MEM_PERR_INT_CAUSE_F    MEM_PERR_INT_CAUSE_V(1U)
901
902 #define MEM_WRAP_INT_CAUSE_S    0
903 #define MEM_WRAP_INT_CAUSE_V(x) ((x) << MEM_WRAP_INT_CAUSE_S)
904 #define MEM_WRAP_INT_CAUSE_F    MEM_WRAP_INT_CAUSE_V(1U)
905
906 #define MA_INT_WRAP_STATUS_A    0x77e4
907
908 #define MEM_WRAP_ADDRESS_S    4
909 #define MEM_WRAP_ADDRESS_M    0xfffffffU
910 #define MEM_WRAP_ADDRESS_G(x) (((x) >> MEM_WRAP_ADDRESS_S) & MEM_WRAP_ADDRESS_M)
911
912 #define MEM_WRAP_CLIENT_NUM_S    0
913 #define MEM_WRAP_CLIENT_NUM_M    0xfU
914 #define MEM_WRAP_CLIENT_NUM_G(x) \
915         (((x) >> MEM_WRAP_CLIENT_NUM_S) & MEM_WRAP_CLIENT_NUM_M)
916
917 #define MA_PARITY_ERROR_STATUS_A        0x77f4
918 #define MA_PARITY_ERROR_STATUS1_A       0x77f4
919 #define MA_PARITY_ERROR_STATUS2_A       0x7804
920
921 /* registers for module EDC_0 */
922 #define EDC_0_BASE_ADDR         0x7900
923
924 #define EDC_BIST_CMD_A          0x7904
925 #define EDC_BIST_CMD_ADDR_A     0x7908
926 #define EDC_BIST_CMD_LEN_A      0x790c
927 #define EDC_BIST_DATA_PATTERN_A 0x7910
928 #define EDC_BIST_STATUS_RDATA_A 0x7928
929 #define EDC_INT_CAUSE_A         0x7978
930
931 #define ECC_UE_PAR_S    5
932 #define ECC_UE_PAR_V(x) ((x) << ECC_UE_PAR_S)
933 #define ECC_UE_PAR_F    ECC_UE_PAR_V(1U)
934
935 #define ECC_CE_PAR_S    4
936 #define ECC_CE_PAR_V(x) ((x) << ECC_CE_PAR_S)
937 #define ECC_CE_PAR_F    ECC_CE_PAR_V(1U)
938
939 #define PERR_PAR_CAUSE_S    3
940 #define PERR_PAR_CAUSE_V(x) ((x) << PERR_PAR_CAUSE_S)
941 #define PERR_PAR_CAUSE_F    PERR_PAR_CAUSE_V(1U)
942
943 #define EDC_ECC_STATUS_A        0x797c
944
945 /* registers for module EDC_1 */
946 #define EDC_1_BASE_ADDR 0x7980
947
948 /* registers for module CIM */
949 #define CIM_BOOT_CFG_A 0x7b00
950
951 #define  BOOTADDR_M     0xffffff00U
952
953 #define UPCRST_S    0
954 #define UPCRST_V(x) ((x) << UPCRST_S)
955 #define UPCRST_F    UPCRST_V(1U)
956
957 #define CIM_PF_MAILBOX_DATA_A 0x240
958 #define CIM_PF_MAILBOX_CTRL_A 0x280
959
960 #define MBMSGVALID_S    3
961 #define MBMSGVALID_V(x) ((x) << MBMSGVALID_S)
962 #define MBMSGVALID_F    MBMSGVALID_V(1U)
963
964 #define MBINTREQ_S    2
965 #define MBINTREQ_V(x) ((x) << MBINTREQ_S)
966 #define MBINTREQ_F    MBINTREQ_V(1U)
967
968 #define MBOWNER_S    0
969 #define MBOWNER_M    0x3U
970 #define MBOWNER_V(x) ((x) << MBOWNER_S)
971 #define MBOWNER_G(x) (((x) >> MBOWNER_S) & MBOWNER_M)
972
973 #define CIM_PF_HOST_INT_ENABLE_A 0x288
974
975 #define MBMSGRDYINTEN_S    19
976 #define MBMSGRDYINTEN_V(x) ((x) << MBMSGRDYINTEN_S)
977 #define MBMSGRDYINTEN_F    MBMSGRDYINTEN_V(1U)
978
979 #define CIM_PF_HOST_INT_CAUSE_A 0x28c
980
981 #define MBMSGRDYINT_S    19
982 #define MBMSGRDYINT_V(x) ((x) << MBMSGRDYINT_S)
983 #define MBMSGRDYINT_F    MBMSGRDYINT_V(1U)
984
985 #define CIM_HOST_INT_CAUSE_A 0x7b2c
986
987 #define TIEQOUTPARERRINT_S    20
988 #define TIEQOUTPARERRINT_V(x) ((x) << TIEQOUTPARERRINT_S)
989 #define TIEQOUTPARERRINT_F    TIEQOUTPARERRINT_V(1U)
990
991 #define TIEQINPARERRINT_S    19
992 #define TIEQINPARERRINT_V(x) ((x) << TIEQINPARERRINT_S)
993 #define TIEQINPARERRINT_F    TIEQINPARERRINT_V(1U)
994
995 #define PREFDROPINT_S    1
996 #define PREFDROPINT_V(x) ((x) << PREFDROPINT_S)
997 #define PREFDROPINT_F    PREFDROPINT_V(1U)
998
999 #define UPACCNONZERO_S    0
1000 #define UPACCNONZERO_V(x) ((x) << UPACCNONZERO_S)
1001 #define UPACCNONZERO_F    UPACCNONZERO_V(1U)
1002
1003 #define MBHOSTPARERR_S    18
1004 #define MBHOSTPARERR_V(x) ((x) << MBHOSTPARERR_S)
1005 #define MBHOSTPARERR_F    MBHOSTPARERR_V(1U)
1006
1007 #define MBUPPARERR_S    17
1008 #define MBUPPARERR_V(x) ((x) << MBUPPARERR_S)
1009 #define MBUPPARERR_F    MBUPPARERR_V(1U)
1010
1011 #define IBQTP0PARERR_S    16
1012 #define IBQTP0PARERR_V(x) ((x) << IBQTP0PARERR_S)
1013 #define IBQTP0PARERR_F    IBQTP0PARERR_V(1U)
1014
1015 #define IBQTP1PARERR_S    15
1016 #define IBQTP1PARERR_V(x) ((x) << IBQTP1PARERR_S)
1017 #define IBQTP1PARERR_F    IBQTP1PARERR_V(1U)
1018
1019 #define IBQULPPARERR_S    14
1020 #define IBQULPPARERR_V(x) ((x) << IBQULPPARERR_S)
1021 #define IBQULPPARERR_F    IBQULPPARERR_V(1U)
1022
1023 #define IBQSGELOPARERR_S    13
1024 #define IBQSGELOPARERR_V(x) ((x) << IBQSGELOPARERR_S)
1025 #define IBQSGELOPARERR_F    IBQSGELOPARERR_V(1U)
1026
1027 #define IBQSGEHIPARERR_S    12
1028 #define IBQSGEHIPARERR_V(x) ((x) << IBQSGEHIPARERR_S)
1029 #define IBQSGEHIPARERR_F    IBQSGEHIPARERR_V(1U)
1030
1031 #define IBQNCSIPARERR_S    11
1032 #define IBQNCSIPARERR_V(x) ((x) << IBQNCSIPARERR_S)
1033 #define IBQNCSIPARERR_F    IBQNCSIPARERR_V(1U)
1034
1035 #define OBQULP0PARERR_S    10
1036 #define OBQULP0PARERR_V(x) ((x) << OBQULP0PARERR_S)
1037 #define OBQULP0PARERR_F    OBQULP0PARERR_V(1U)
1038
1039 #define OBQULP1PARERR_S    9
1040 #define OBQULP1PARERR_V(x) ((x) << OBQULP1PARERR_S)
1041 #define OBQULP1PARERR_F    OBQULP1PARERR_V(1U)
1042
1043 #define OBQULP2PARERR_S    8
1044 #define OBQULP2PARERR_V(x) ((x) << OBQULP2PARERR_S)
1045 #define OBQULP2PARERR_F    OBQULP2PARERR_V(1U)
1046
1047 #define OBQULP3PARERR_S    7
1048 #define OBQULP3PARERR_V(x) ((x) << OBQULP3PARERR_S)
1049 #define OBQULP3PARERR_F    OBQULP3PARERR_V(1U)
1050
1051 #define OBQSGEPARERR_S    6
1052 #define OBQSGEPARERR_V(x) ((x) << OBQSGEPARERR_S)
1053 #define OBQSGEPARERR_F    OBQSGEPARERR_V(1U)
1054
1055 #define OBQNCSIPARERR_S    5
1056 #define OBQNCSIPARERR_V(x) ((x) << OBQNCSIPARERR_S)
1057 #define OBQNCSIPARERR_F    OBQNCSIPARERR_V(1U)
1058
1059 #define CIM_HOST_UPACC_INT_CAUSE_A 0x7b34
1060
1061 #define EEPROMWRINT_S    30
1062 #define EEPROMWRINT_V(x) ((x) << EEPROMWRINT_S)
1063 #define EEPROMWRINT_F    EEPROMWRINT_V(1U)
1064
1065 #define TIMEOUTMAINT_S    29
1066 #define TIMEOUTMAINT_V(x) ((x) << TIMEOUTMAINT_S)
1067 #define TIMEOUTMAINT_F    TIMEOUTMAINT_V(1U)
1068
1069 #define TIMEOUTINT_S    28
1070 #define TIMEOUTINT_V(x) ((x) << TIMEOUTINT_S)
1071 #define TIMEOUTINT_F    TIMEOUTINT_V(1U)
1072
1073 #define RSPOVRLOOKUPINT_S    27
1074 #define RSPOVRLOOKUPINT_V(x) ((x) << RSPOVRLOOKUPINT_S)
1075 #define RSPOVRLOOKUPINT_F    RSPOVRLOOKUPINT_V(1U)
1076
1077 #define REQOVRLOOKUPINT_S    26
1078 #define REQOVRLOOKUPINT_V(x) ((x) << REQOVRLOOKUPINT_S)
1079 #define REQOVRLOOKUPINT_F    REQOVRLOOKUPINT_V(1U)
1080
1081 #define BLKWRPLINT_S    25
1082 #define BLKWRPLINT_V(x) ((x) << BLKWRPLINT_S)
1083 #define BLKWRPLINT_F    BLKWRPLINT_V(1U)
1084
1085 #define BLKRDPLINT_S    24
1086 #define BLKRDPLINT_V(x) ((x) << BLKRDPLINT_S)
1087 #define BLKRDPLINT_F    BLKRDPLINT_V(1U)
1088
1089 #define SGLWRPLINT_S    23
1090 #define SGLWRPLINT_V(x) ((x) << SGLWRPLINT_S)
1091 #define SGLWRPLINT_F    SGLWRPLINT_V(1U)
1092
1093 #define SGLRDPLINT_S    22
1094 #define SGLRDPLINT_V(x) ((x) << SGLRDPLINT_S)
1095 #define SGLRDPLINT_F    SGLRDPLINT_V(1U)
1096
1097 #define BLKWRCTLINT_S    21
1098 #define BLKWRCTLINT_V(x) ((x) << BLKWRCTLINT_S)
1099 #define BLKWRCTLINT_F    BLKWRCTLINT_V(1U)
1100
1101 #define BLKRDCTLINT_S    20
1102 #define BLKRDCTLINT_V(x) ((x) << BLKRDCTLINT_S)
1103 #define BLKRDCTLINT_F    BLKRDCTLINT_V(1U)
1104
1105 #define SGLWRCTLINT_S    19
1106 #define SGLWRCTLINT_V(x) ((x) << SGLWRCTLINT_S)
1107 #define SGLWRCTLINT_F    SGLWRCTLINT_V(1U)
1108
1109 #define SGLRDCTLINT_S    18
1110 #define SGLRDCTLINT_V(x) ((x) << SGLRDCTLINT_S)
1111 #define SGLRDCTLINT_F    SGLRDCTLINT_V(1U)
1112
1113 #define BLKWREEPROMINT_S    17
1114 #define BLKWREEPROMINT_V(x) ((x) << BLKWREEPROMINT_S)
1115 #define BLKWREEPROMINT_F    BLKWREEPROMINT_V(1U)
1116
1117 #define BLKRDEEPROMINT_S    16
1118 #define BLKRDEEPROMINT_V(x) ((x) << BLKRDEEPROMINT_S)
1119 #define BLKRDEEPROMINT_F    BLKRDEEPROMINT_V(1U)
1120
1121 #define SGLWREEPROMINT_S    15
1122 #define SGLWREEPROMINT_V(x) ((x) << SGLWREEPROMINT_S)
1123 #define SGLWREEPROMINT_F    SGLWREEPROMINT_V(1U)
1124
1125 #define SGLRDEEPROMINT_S    14
1126 #define SGLRDEEPROMINT_V(x) ((x) << SGLRDEEPROMINT_S)
1127 #define SGLRDEEPROMINT_F    SGLRDEEPROMINT_V(1U)
1128
1129 #define BLKWRFLASHINT_S    13
1130 #define BLKWRFLASHINT_V(x) ((x) << BLKWRFLASHINT_S)
1131 #define BLKWRFLASHINT_F    BLKWRFLASHINT_V(1U)
1132
1133 #define BLKRDFLASHINT_S    12
1134 #define BLKRDFLASHINT_V(x) ((x) << BLKRDFLASHINT_S)
1135 #define BLKRDFLASHINT_F    BLKRDFLASHINT_V(1U)
1136
1137 #define SGLWRFLASHINT_S    11
1138 #define SGLWRFLASHINT_V(x) ((x) << SGLWRFLASHINT_S)
1139 #define SGLWRFLASHINT_F    SGLWRFLASHINT_V(1U)
1140
1141 #define SGLRDFLASHINT_S    10
1142 #define SGLRDFLASHINT_V(x) ((x) << SGLRDFLASHINT_S)
1143 #define SGLRDFLASHINT_F    SGLRDFLASHINT_V(1U)
1144
1145 #define BLKWRBOOTINT_S    9
1146 #define BLKWRBOOTINT_V(x) ((x) << BLKWRBOOTINT_S)
1147 #define BLKWRBOOTINT_F    BLKWRBOOTINT_V(1U)
1148
1149 #define BLKRDBOOTINT_S    8
1150 #define BLKRDBOOTINT_V(x) ((x) << BLKRDBOOTINT_S)
1151 #define BLKRDBOOTINT_F    BLKRDBOOTINT_V(1U)
1152
1153 #define SGLWRBOOTINT_S    7
1154 #define SGLWRBOOTINT_V(x) ((x) << SGLWRBOOTINT_S)
1155 #define SGLWRBOOTINT_F    SGLWRBOOTINT_V(1U)
1156
1157 #define SGLRDBOOTINT_S    6
1158 #define SGLRDBOOTINT_V(x) ((x) << SGLRDBOOTINT_S)
1159 #define SGLRDBOOTINT_F    SGLRDBOOTINT_V(1U)
1160
1161 #define ILLWRBEINT_S    5
1162 #define ILLWRBEINT_V(x) ((x) << ILLWRBEINT_S)
1163 #define ILLWRBEINT_F    ILLWRBEINT_V(1U)
1164
1165 #define ILLRDBEINT_S    4
1166 #define ILLRDBEINT_V(x) ((x) << ILLRDBEINT_S)
1167 #define ILLRDBEINT_F    ILLRDBEINT_V(1U)
1168
1169 #define ILLRDINT_S    3
1170 #define ILLRDINT_V(x) ((x) << ILLRDINT_S)
1171 #define ILLRDINT_F    ILLRDINT_V(1U)
1172
1173 #define ILLWRINT_S    2
1174 #define ILLWRINT_V(x) ((x) << ILLWRINT_S)
1175 #define ILLWRINT_F    ILLWRINT_V(1U)
1176
1177 #define ILLTRANSINT_S    1
1178 #define ILLTRANSINT_V(x) ((x) << ILLTRANSINT_S)
1179 #define ILLTRANSINT_F    ILLTRANSINT_V(1U)
1180
1181 #define RSVDSPACEINT_S    0
1182 #define RSVDSPACEINT_V(x) ((x) << RSVDSPACEINT_S)
1183 #define RSVDSPACEINT_F    RSVDSPACEINT_V(1U)
1184
1185 /* registers for module TP */
1186 #define TP_OUT_CONFIG_A         0x7d04
1187 #define TP_GLOBAL_CONFIG_A      0x7d08
1188
1189 #define FIVETUPLELOOKUP_S    17
1190 #define FIVETUPLELOOKUP_M    0x3U
1191 #define FIVETUPLELOOKUP_V(x) ((x) << FIVETUPLELOOKUP_S)
1192 #define FIVETUPLELOOKUP_G(x) (((x) >> FIVETUPLELOOKUP_S) & FIVETUPLELOOKUP_M)
1193
1194 #define TP_PARA_REG2_A 0x7d68
1195
1196 #define MAXRXDATA_S    16
1197 #define MAXRXDATA_M    0xffffU
1198 #define MAXRXDATA_G(x) (((x) >> MAXRXDATA_S) & MAXRXDATA_M)
1199
1200 #define TP_TIMER_RESOLUTION_A 0x7d90
1201
1202 #define TIMERRESOLUTION_S    16
1203 #define TIMERRESOLUTION_M    0xffU
1204 #define TIMERRESOLUTION_G(x) (((x) >> TIMERRESOLUTION_S) & TIMERRESOLUTION_M)
1205
1206 #define DELAYEDACKRESOLUTION_S    0
1207 #define DELAYEDACKRESOLUTION_M    0xffU
1208 #define DELAYEDACKRESOLUTION_G(x) \
1209         (((x) >> DELAYEDACKRESOLUTION_S) & DELAYEDACKRESOLUTION_M)
1210
1211 #define TP_SHIFT_CNT_A 0x7dc0
1212
1213 #define SYNSHIFTMAX_S    24
1214 #define SYNSHIFTMAX_M    0xffU
1215 #define SYNSHIFTMAX_V(x) ((x) << SYNSHIFTMAX_S)
1216 #define SYNSHIFTMAX_G(x) (((x) >> SYNSHIFTMAX_S) & SYNSHIFTMAX_M)
1217
1218 #define RXTSHIFTMAXR1_S    20
1219 #define RXTSHIFTMAXR1_M    0xfU
1220 #define RXTSHIFTMAXR1_V(x) ((x) << RXTSHIFTMAXR1_S)
1221 #define RXTSHIFTMAXR1_G(x) (((x) >> RXTSHIFTMAXR1_S) & RXTSHIFTMAXR1_M)
1222
1223 #define RXTSHIFTMAXR2_S    16
1224 #define RXTSHIFTMAXR2_M    0xfU
1225 #define RXTSHIFTMAXR2_V(x) ((x) << RXTSHIFTMAXR2_S)
1226 #define RXTSHIFTMAXR2_G(x) (((x) >> RXTSHIFTMAXR2_S) & RXTSHIFTMAXR2_M)
1227
1228 #define PERSHIFTBACKOFFMAX_S    12
1229 #define PERSHIFTBACKOFFMAX_M    0xfU
1230 #define PERSHIFTBACKOFFMAX_V(x) ((x) << PERSHIFTBACKOFFMAX_S)
1231 #define PERSHIFTBACKOFFMAX_G(x) \
1232         (((x) >> PERSHIFTBACKOFFMAX_S) & PERSHIFTBACKOFFMAX_M)
1233
1234 #define PERSHIFTMAX_S    8
1235 #define PERSHIFTMAX_M    0xfU
1236 #define PERSHIFTMAX_V(x) ((x) << PERSHIFTMAX_S)
1237 #define PERSHIFTMAX_G(x) (((x) >> PERSHIFTMAX_S) & PERSHIFTMAX_M)
1238
1239 #define KEEPALIVEMAXR1_S    4
1240 #define KEEPALIVEMAXR1_M    0xfU
1241 #define KEEPALIVEMAXR1_V(x) ((x) << KEEPALIVEMAXR1_S)
1242 #define KEEPALIVEMAXR1_G(x) (((x) >> KEEPALIVEMAXR1_S) & KEEPALIVEMAXR1_M)
1243
1244 #define KEEPALIVEMAXR2_S    0
1245 #define KEEPALIVEMAXR2_M    0xfU
1246 #define KEEPALIVEMAXR2_V(x) ((x) << KEEPALIVEMAXR2_S)
1247 #define KEEPALIVEMAXR2_G(x) (((x) >> KEEPALIVEMAXR2_S) & KEEPALIVEMAXR2_M)
1248
1249 #define TP_CCTRL_TABLE_A        0x7ddc
1250 #define TP_MTU_TABLE_A          0x7de4
1251
1252 #define MTUINDEX_S    24
1253 #define MTUINDEX_V(x) ((x) << MTUINDEX_S)
1254
1255 #define MTUWIDTH_S    16
1256 #define MTUWIDTH_M    0xfU
1257 #define MTUWIDTH_V(x) ((x) << MTUWIDTH_S)
1258 #define MTUWIDTH_G(x) (((x) >> MTUWIDTH_S) & MTUWIDTH_M)
1259
1260 #define MTUVALUE_S    0
1261 #define MTUVALUE_M    0x3fffU
1262 #define MTUVALUE_V(x) ((x) << MTUVALUE_S)
1263 #define MTUVALUE_G(x) (((x) >> MTUVALUE_S) & MTUVALUE_M)
1264
1265 #define TP_RSS_LKP_TABLE_A      0x7dec
1266
1267 #define LKPTBLROWVLD_S    31
1268 #define LKPTBLROWVLD_V(x) ((x) << LKPTBLROWVLD_S)
1269 #define LKPTBLROWVLD_F    LKPTBLROWVLD_V(1U)
1270
1271 #define LKPTBLQUEUE1_S    10
1272 #define LKPTBLQUEUE1_M    0x3ffU
1273 #define LKPTBLQUEUE1_G(x) (((x) >> LKPTBLQUEUE1_S) & LKPTBLQUEUE1_M)
1274
1275 #define LKPTBLQUEUE0_S    0
1276 #define LKPTBLQUEUE0_M    0x3ffU
1277 #define LKPTBLQUEUE0_G(x) (((x) >> LKPTBLQUEUE0_S) & LKPTBLQUEUE0_M)
1278
1279 #define TP_PIO_ADDR_A   0x7e40
1280 #define TP_PIO_DATA_A   0x7e44
1281 #define TP_MIB_INDEX_A  0x7e50
1282 #define TP_MIB_DATA_A   0x7e54
1283 #define TP_INT_CAUSE_A  0x7e74
1284
1285 #define FLMTXFLSTEMPTY_S    30
1286 #define FLMTXFLSTEMPTY_V(x) ((x) << FLMTXFLSTEMPTY_S)
1287 #define FLMTXFLSTEMPTY_F    FLMTXFLSTEMPTY_V(1U)
1288
1289 #define TP_VLAN_PRI_MAP_A 0x140
1290
1291 #define FRAGMENTATION_S    9
1292 #define FRAGMENTATION_V(x) ((x) << FRAGMENTATION_S)
1293 #define FRAGMENTATION_F    FRAGMENTATION_V(1U)
1294
1295 #define MPSHITTYPE_S    8
1296 #define MPSHITTYPE_V(x) ((x) << MPSHITTYPE_S)
1297 #define MPSHITTYPE_F    MPSHITTYPE_V(1U)
1298
1299 #define MACMATCH_S    7
1300 #define MACMATCH_V(x) ((x) << MACMATCH_S)
1301 #define MACMATCH_F    MACMATCH_V(1U)
1302
1303 #define ETHERTYPE_S    6
1304 #define ETHERTYPE_V(x) ((x) << ETHERTYPE_S)
1305 #define ETHERTYPE_F    ETHERTYPE_V(1U)
1306
1307 #define PROTOCOL_S    5
1308 #define PROTOCOL_V(x) ((x) << PROTOCOL_S)
1309 #define PROTOCOL_F    PROTOCOL_V(1U)
1310
1311 #define TOS_S    4
1312 #define TOS_V(x) ((x) << TOS_S)
1313 #define TOS_F    TOS_V(1U)
1314
1315 #define VLAN_S    3
1316 #define VLAN_V(x) ((x) << VLAN_S)
1317 #define VLAN_F    VLAN_V(1U)
1318
1319 #define VNIC_ID_S    2
1320 #define VNIC_ID_V(x) ((x) << VNIC_ID_S)
1321 #define VNIC_ID_F    VNIC_ID_V(1U)
1322
1323 #define PORT_S    1
1324 #define PORT_V(x) ((x) << PORT_S)
1325 #define PORT_F    PORT_V(1U)
1326
1327 #define FCOE_S    0
1328 #define FCOE_V(x) ((x) << FCOE_S)
1329 #define FCOE_F    FCOE_V(1U)
1330
1331 #define FILTERMODE_S    15
1332 #define FILTERMODE_V(x) ((x) << FILTERMODE_S)
1333 #define FILTERMODE_F    FILTERMODE_V(1U)
1334
1335 #define FCOEMASK_S    14
1336 #define FCOEMASK_V(x) ((x) << FCOEMASK_S)
1337 #define FCOEMASK_F    FCOEMASK_V(1U)
1338
1339 #define TP_INGRESS_CONFIG_A     0x141
1340
1341 #define VNIC_S    11
1342 #define VNIC_V(x) ((x) << VNIC_S)
1343 #define VNIC_F    VNIC_V(1U)
1344
1345 #define CSUM_HAS_PSEUDO_HDR_S    10
1346 #define CSUM_HAS_PSEUDO_HDR_V(x) ((x) << CSUM_HAS_PSEUDO_HDR_S)
1347 #define CSUM_HAS_PSEUDO_HDR_F    CSUM_HAS_PSEUDO_HDR_V(1U)
1348
1349 #define TP_MIB_MAC_IN_ERR_0_A   0x0
1350 #define TP_MIB_TCP_OUT_RST_A    0xc
1351 #define TP_MIB_TCP_IN_SEG_HI_A  0x10
1352 #define TP_MIB_TCP_IN_SEG_LO_A  0x11
1353 #define TP_MIB_TCP_OUT_SEG_HI_A 0x12
1354 #define TP_MIB_TCP_OUT_SEG_LO_A 0x13
1355 #define TP_MIB_TCP_RXT_SEG_HI_A 0x14
1356 #define TP_MIB_TCP_RXT_SEG_LO_A 0x15
1357 #define TP_MIB_TNL_CNG_DROP_0_A 0x18
1358 #define TP_MIB_TCP_V6IN_ERR_0_A 0x28
1359 #define TP_MIB_TCP_V6OUT_RST_A  0x2c
1360 #define TP_MIB_OFD_ARP_DROP_A   0x36
1361 #define TP_MIB_TNL_DROP_0_A     0x44
1362 #define TP_MIB_OFD_VLN_DROP_0_A 0x58
1363
1364 #define ULP_TX_INT_CAUSE_A      0x8dcc
1365
1366 #define PBL_BOUND_ERR_CH3_S    31
1367 #define PBL_BOUND_ERR_CH3_V(x) ((x) << PBL_BOUND_ERR_CH3_S)
1368 #define PBL_BOUND_ERR_CH3_F    PBL_BOUND_ERR_CH3_V(1U)
1369
1370 #define PBL_BOUND_ERR_CH2_S    30
1371 #define PBL_BOUND_ERR_CH2_V(x) ((x) << PBL_BOUND_ERR_CH2_S)
1372 #define PBL_BOUND_ERR_CH2_F    PBL_BOUND_ERR_CH2_V(1U)
1373
1374 #define PBL_BOUND_ERR_CH1_S    29
1375 #define PBL_BOUND_ERR_CH1_V(x) ((x) << PBL_BOUND_ERR_CH1_S)
1376 #define PBL_BOUND_ERR_CH1_F    PBL_BOUND_ERR_CH1_V(1U)
1377
1378 #define PBL_BOUND_ERR_CH0_S    28
1379 #define PBL_BOUND_ERR_CH0_V(x) ((x) << PBL_BOUND_ERR_CH0_S)
1380 #define PBL_BOUND_ERR_CH0_F    PBL_BOUND_ERR_CH0_V(1U)
1381
1382 #define PM_RX_INT_CAUSE_A       0x8fdc
1383
1384 #define PMRX_FRAMING_ERROR_F    0x003ffff0U
1385
1386 #define ZERO_E_CMD_ERROR_S    22
1387 #define ZERO_E_CMD_ERROR_V(x) ((x) << ZERO_E_CMD_ERROR_S)
1388 #define ZERO_E_CMD_ERROR_F    ZERO_E_CMD_ERROR_V(1U)
1389
1390 #define OCSPI_PAR_ERROR_S    3
1391 #define OCSPI_PAR_ERROR_V(x) ((x) << OCSPI_PAR_ERROR_S)
1392 #define OCSPI_PAR_ERROR_F    OCSPI_PAR_ERROR_V(1U)
1393
1394 #define DB_OPTIONS_PAR_ERROR_S    2
1395 #define DB_OPTIONS_PAR_ERROR_V(x) ((x) << DB_OPTIONS_PAR_ERROR_S)
1396 #define DB_OPTIONS_PAR_ERROR_F    DB_OPTIONS_PAR_ERROR_V(1U)
1397
1398 #define IESPI_PAR_ERROR_S    1
1399 #define IESPI_PAR_ERROR_V(x) ((x) << IESPI_PAR_ERROR_S)
1400 #define IESPI_PAR_ERROR_F    IESPI_PAR_ERROR_V(1U)
1401
1402 #define PMRX_E_PCMD_PAR_ERROR_S    0
1403 #define PMRX_E_PCMD_PAR_ERROR_V(x) ((x) << PMRX_E_PCMD_PAR_ERROR_S)
1404 #define PMRX_E_PCMD_PAR_ERROR_F    PMRX_E_PCMD_PAR_ERROR_V(1U)
1405
1406 #define PM_TX_INT_CAUSE_A       0x8ffc
1407
1408 #define PCMD_LEN_OVFL0_S    31
1409 #define PCMD_LEN_OVFL0_V(x) ((x) << PCMD_LEN_OVFL0_S)
1410 #define PCMD_LEN_OVFL0_F    PCMD_LEN_OVFL0_V(1U)
1411
1412 #define PCMD_LEN_OVFL1_S    30
1413 #define PCMD_LEN_OVFL1_V(x) ((x) << PCMD_LEN_OVFL1_S)
1414 #define PCMD_LEN_OVFL1_F    PCMD_LEN_OVFL1_V(1U)
1415
1416 #define PCMD_LEN_OVFL2_S    29
1417 #define PCMD_LEN_OVFL2_V(x) ((x) << PCMD_LEN_OVFL2_S)
1418 #define PCMD_LEN_OVFL2_F    PCMD_LEN_OVFL2_V(1U)
1419
1420 #define ZERO_C_CMD_ERROR_S    28
1421 #define ZERO_C_CMD_ERROR_V(x) ((x) << ZERO_C_CMD_ERROR_S)
1422 #define ZERO_C_CMD_ERROR_F    ZERO_C_CMD_ERROR_V(1U)
1423
1424 #define  PMTX_FRAMING_ERROR_F 0x0ffffff0U
1425
1426 #define OESPI_PAR_ERROR_S    3
1427 #define OESPI_PAR_ERROR_V(x) ((x) << OESPI_PAR_ERROR_S)
1428 #define OESPI_PAR_ERROR_F    OESPI_PAR_ERROR_V(1U)
1429
1430 #define ICSPI_PAR_ERROR_S    1
1431 #define ICSPI_PAR_ERROR_V(x) ((x) << ICSPI_PAR_ERROR_S)
1432 #define ICSPI_PAR_ERROR_F    ICSPI_PAR_ERROR_V(1U)
1433
1434 #define PMTX_C_PCMD_PAR_ERROR_S    0
1435 #define PMTX_C_PCMD_PAR_ERROR_V(x) ((x) << PMTX_C_PCMD_PAR_ERROR_S)
1436 #define PMTX_C_PCMD_PAR_ERROR_F    PMTX_C_PCMD_PAR_ERROR_V(1U)
1437
1438 #define MPS_PORT_STAT_TX_PORT_BYTES_L 0x400
1439 #define MPS_PORT_STAT_TX_PORT_BYTES_H 0x404
1440 #define MPS_PORT_STAT_TX_PORT_FRAMES_L 0x408
1441 #define MPS_PORT_STAT_TX_PORT_FRAMES_H 0x40c
1442 #define MPS_PORT_STAT_TX_PORT_BCAST_L 0x410
1443 #define MPS_PORT_STAT_TX_PORT_BCAST_H 0x414
1444 #define MPS_PORT_STAT_TX_PORT_MCAST_L 0x418
1445 #define MPS_PORT_STAT_TX_PORT_MCAST_H 0x41c
1446 #define MPS_PORT_STAT_TX_PORT_UCAST_L 0x420
1447 #define MPS_PORT_STAT_TX_PORT_UCAST_H 0x424
1448 #define MPS_PORT_STAT_TX_PORT_ERROR_L 0x428
1449 #define MPS_PORT_STAT_TX_PORT_ERROR_H 0x42c
1450 #define MPS_PORT_STAT_TX_PORT_64B_L 0x430
1451 #define MPS_PORT_STAT_TX_PORT_64B_H 0x434
1452 #define MPS_PORT_STAT_TX_PORT_65B_127B_L 0x438
1453 #define MPS_PORT_STAT_TX_PORT_65B_127B_H 0x43c
1454 #define MPS_PORT_STAT_TX_PORT_128B_255B_L 0x440
1455 #define MPS_PORT_STAT_TX_PORT_128B_255B_H 0x444
1456 #define MPS_PORT_STAT_TX_PORT_256B_511B_L 0x448
1457 #define MPS_PORT_STAT_TX_PORT_256B_511B_H 0x44c
1458 #define MPS_PORT_STAT_TX_PORT_512B_1023B_L 0x450
1459 #define MPS_PORT_STAT_TX_PORT_512B_1023B_H 0x454
1460 #define MPS_PORT_STAT_TX_PORT_1024B_1518B_L 0x458
1461 #define MPS_PORT_STAT_TX_PORT_1024B_1518B_H 0x45c
1462 #define MPS_PORT_STAT_TX_PORT_1519B_MAX_L 0x460
1463 #define MPS_PORT_STAT_TX_PORT_1519B_MAX_H 0x464
1464 #define MPS_PORT_STAT_TX_PORT_DROP_L 0x468
1465 #define MPS_PORT_STAT_TX_PORT_DROP_H 0x46c
1466 #define MPS_PORT_STAT_TX_PORT_PAUSE_L 0x470
1467 #define MPS_PORT_STAT_TX_PORT_PAUSE_H 0x474
1468 #define MPS_PORT_STAT_TX_PORT_PPP0_L 0x478
1469 #define MPS_PORT_STAT_TX_PORT_PPP0_H 0x47c
1470 #define MPS_PORT_STAT_TX_PORT_PPP1_L 0x480
1471 #define MPS_PORT_STAT_TX_PORT_PPP1_H 0x484
1472 #define MPS_PORT_STAT_TX_PORT_PPP2_L 0x488
1473 #define MPS_PORT_STAT_TX_PORT_PPP2_H 0x48c
1474 #define MPS_PORT_STAT_TX_PORT_PPP3_L 0x490
1475 #define MPS_PORT_STAT_TX_PORT_PPP3_H 0x494
1476 #define MPS_PORT_STAT_TX_PORT_PPP4_L 0x498
1477 #define MPS_PORT_STAT_TX_PORT_PPP4_H 0x49c
1478 #define MPS_PORT_STAT_TX_PORT_PPP5_L 0x4a0
1479 #define MPS_PORT_STAT_TX_PORT_PPP5_H 0x4a4
1480 #define MPS_PORT_STAT_TX_PORT_PPP6_L 0x4a8
1481 #define MPS_PORT_STAT_TX_PORT_PPP6_H 0x4ac
1482 #define MPS_PORT_STAT_TX_PORT_PPP7_L 0x4b0
1483 #define MPS_PORT_STAT_TX_PORT_PPP7_H 0x4b4
1484 #define MPS_PORT_STAT_LB_PORT_BYTES_L 0x4c0
1485 #define MPS_PORT_STAT_LB_PORT_BYTES_H 0x4c4
1486 #define MPS_PORT_STAT_LB_PORT_FRAMES_L 0x4c8
1487 #define MPS_PORT_STAT_LB_PORT_FRAMES_H 0x4cc
1488 #define MPS_PORT_STAT_LB_PORT_BCAST_L 0x4d0
1489 #define MPS_PORT_STAT_LB_PORT_BCAST_H 0x4d4
1490 #define MPS_PORT_STAT_LB_PORT_MCAST_L 0x4d8
1491 #define MPS_PORT_STAT_LB_PORT_MCAST_H 0x4dc
1492 #define MPS_PORT_STAT_LB_PORT_UCAST_L 0x4e0
1493 #define MPS_PORT_STAT_LB_PORT_UCAST_H 0x4e4
1494 #define MPS_PORT_STAT_LB_PORT_ERROR_L 0x4e8
1495 #define MPS_PORT_STAT_LB_PORT_ERROR_H 0x4ec
1496 #define MPS_PORT_STAT_LB_PORT_64B_L 0x4f0
1497 #define MPS_PORT_STAT_LB_PORT_64B_H 0x4f4
1498 #define MPS_PORT_STAT_LB_PORT_65B_127B_L 0x4f8
1499 #define MPS_PORT_STAT_LB_PORT_65B_127B_H 0x4fc
1500 #define MPS_PORT_STAT_LB_PORT_128B_255B_L 0x500
1501 #define MPS_PORT_STAT_LB_PORT_128B_255B_H 0x504
1502 #define MPS_PORT_STAT_LB_PORT_256B_511B_L 0x508
1503 #define MPS_PORT_STAT_LB_PORT_256B_511B_H 0x50c
1504 #define MPS_PORT_STAT_LB_PORT_512B_1023B_L 0x510
1505 #define MPS_PORT_STAT_LB_PORT_512B_1023B_H 0x514
1506 #define MPS_PORT_STAT_LB_PORT_1024B_1518B_L 0x518
1507 #define MPS_PORT_STAT_LB_PORT_1024B_1518B_H 0x51c
1508 #define MPS_PORT_STAT_LB_PORT_1519B_MAX_L 0x520
1509 #define MPS_PORT_STAT_LB_PORT_1519B_MAX_H 0x524
1510 #define MPS_PORT_STAT_LB_PORT_DROP_FRAMES 0x528
1511 #define MPS_PORT_STAT_RX_PORT_BYTES_L 0x540
1512 #define MPS_PORT_STAT_RX_PORT_BYTES_H 0x544
1513 #define MPS_PORT_STAT_RX_PORT_FRAMES_L 0x548
1514 #define MPS_PORT_STAT_RX_PORT_FRAMES_H 0x54c
1515 #define MPS_PORT_STAT_RX_PORT_BCAST_L 0x550
1516 #define MPS_PORT_STAT_RX_PORT_BCAST_H 0x554
1517 #define MPS_PORT_STAT_RX_PORT_MCAST_L 0x558
1518 #define MPS_PORT_STAT_RX_PORT_MCAST_H 0x55c
1519 #define MPS_PORT_STAT_RX_PORT_UCAST_L 0x560
1520 #define MPS_PORT_STAT_RX_PORT_UCAST_H 0x564
1521 #define MPS_PORT_STAT_RX_PORT_MTU_ERROR_L 0x568
1522 #define MPS_PORT_STAT_RX_PORT_MTU_ERROR_H 0x56c
1523 #define MPS_PORT_STAT_RX_PORT_MTU_CRC_ERROR_L 0x570
1524 #define MPS_PORT_STAT_RX_PORT_MTU_CRC_ERROR_H 0x574
1525 #define MPS_PORT_STAT_RX_PORT_CRC_ERROR_L 0x578
1526 #define MPS_PORT_STAT_RX_PORT_CRC_ERROR_H 0x57c
1527 #define MPS_PORT_STAT_RX_PORT_LEN_ERROR_L 0x580
1528 #define MPS_PORT_STAT_RX_PORT_LEN_ERROR_H 0x584
1529 #define MPS_PORT_STAT_RX_PORT_SYM_ERROR_L 0x588
1530 #define MPS_PORT_STAT_RX_PORT_SYM_ERROR_H 0x58c
1531 #define MPS_PORT_STAT_RX_PORT_64B_L 0x590
1532 #define MPS_PORT_STAT_RX_PORT_64B_H 0x594
1533 #define MPS_PORT_STAT_RX_PORT_65B_127B_L 0x598
1534 #define MPS_PORT_STAT_RX_PORT_65B_127B_H 0x59c
1535 #define MPS_PORT_STAT_RX_PORT_128B_255B_L 0x5a0
1536 #define MPS_PORT_STAT_RX_PORT_128B_255B_H 0x5a4
1537 #define MPS_PORT_STAT_RX_PORT_256B_511B_L 0x5a8
1538 #define MPS_PORT_STAT_RX_PORT_256B_511B_H 0x5ac
1539 #define MPS_PORT_STAT_RX_PORT_512B_1023B_L 0x5b0
1540 #define MPS_PORT_STAT_RX_PORT_512B_1023B_H 0x5b4
1541 #define MPS_PORT_STAT_RX_PORT_1024B_1518B_L 0x5b8
1542 #define MPS_PORT_STAT_RX_PORT_1024B_1518B_H 0x5bc
1543 #define MPS_PORT_STAT_RX_PORT_1519B_MAX_L 0x5c0
1544 #define MPS_PORT_STAT_RX_PORT_1519B_MAX_H 0x5c4
1545 #define MPS_PORT_STAT_RX_PORT_PAUSE_L 0x5c8
1546 #define MPS_PORT_STAT_RX_PORT_PAUSE_H 0x5cc
1547 #define MPS_PORT_STAT_RX_PORT_PPP0_L 0x5d0
1548 #define MPS_PORT_STAT_RX_PORT_PPP0_H 0x5d4
1549 #define MPS_PORT_STAT_RX_PORT_PPP1_L 0x5d8
1550 #define MPS_PORT_STAT_RX_PORT_PPP1_H 0x5dc
1551 #define MPS_PORT_STAT_RX_PORT_PPP2_L 0x5e0
1552 #define MPS_PORT_STAT_RX_PORT_PPP2_H 0x5e4
1553 #define MPS_PORT_STAT_RX_PORT_PPP3_L 0x5e8
1554 #define MPS_PORT_STAT_RX_PORT_PPP3_H 0x5ec
1555 #define MPS_PORT_STAT_RX_PORT_PPP4_L 0x5f0
1556 #define MPS_PORT_STAT_RX_PORT_PPP4_H 0x5f4
1557 #define MPS_PORT_STAT_RX_PORT_PPP5_L 0x5f8
1558 #define MPS_PORT_STAT_RX_PORT_PPP5_H 0x5fc
1559 #define MPS_PORT_STAT_RX_PORT_PPP6_L 0x600
1560 #define MPS_PORT_STAT_RX_PORT_PPP6_H 0x604
1561 #define MPS_PORT_STAT_RX_PORT_PPP7_L 0x608
1562 #define MPS_PORT_STAT_RX_PORT_PPP7_H 0x60c
1563 #define MPS_PORT_STAT_RX_PORT_LESS_64B_L 0x610
1564 #define MPS_PORT_STAT_RX_PORT_LESS_64B_H 0x614
1565 #define MAC_PORT_MAGIC_MACID_LO 0x824
1566 #define MAC_PORT_MAGIC_MACID_HI 0x828
1567
1568 #define MAC_PORT_EPIO_DATA0_A 0x8c0
1569 #define MAC_PORT_EPIO_DATA1_A 0x8c4
1570 #define MAC_PORT_EPIO_DATA2_A 0x8c8
1571 #define MAC_PORT_EPIO_DATA3_A 0x8cc
1572 #define MAC_PORT_EPIO_OP_A 0x8d0
1573
1574 #define MAC_PORT_CFG2_A 0x818
1575
1576 #define MPS_CMN_CTL_A   0x9000
1577
1578 #define NUMPORTS_S    0
1579 #define NUMPORTS_M    0x3U
1580 #define NUMPORTS_G(x) (((x) >> NUMPORTS_S) & NUMPORTS_M)
1581
1582 #define MPS_INT_CAUSE_A 0x9008
1583 #define MPS_TX_INT_CAUSE_A 0x9408
1584
1585 #define FRMERR_S    15
1586 #define FRMERR_V(x) ((x) << FRMERR_S)
1587 #define FRMERR_F    FRMERR_V(1U)
1588
1589 #define SECNTERR_S    14
1590 #define SECNTERR_V(x) ((x) << SECNTERR_S)
1591 #define SECNTERR_F    SECNTERR_V(1U)
1592
1593 #define BUBBLE_S    13
1594 #define BUBBLE_V(x) ((x) << BUBBLE_S)
1595 #define BUBBLE_F    BUBBLE_V(1U)
1596
1597 #define TXDESCFIFO_S    9
1598 #define TXDESCFIFO_M    0xfU
1599 #define TXDESCFIFO_V(x) ((x) << TXDESCFIFO_S)
1600
1601 #define TXDATAFIFO_S    5
1602 #define TXDATAFIFO_M    0xfU
1603 #define TXDATAFIFO_V(x) ((x) << TXDATAFIFO_S)
1604
1605 #define NCSIFIFO_S    4
1606 #define NCSIFIFO_V(x) ((x) << NCSIFIFO_S)
1607 #define NCSIFIFO_F    NCSIFIFO_V(1U)
1608
1609 #define TPFIFO_S    0
1610 #define TPFIFO_M    0xfU
1611 #define TPFIFO_V(x) ((x) << TPFIFO_S)
1612
1613 #define MPS_STAT_PERR_INT_CAUSE_SRAM_A          0x9614
1614 #define MPS_STAT_PERR_INT_CAUSE_TX_FIFO_A       0x9620
1615 #define MPS_STAT_PERR_INT_CAUSE_RX_FIFO_A       0x962c
1616
1617 #define MPS_STAT_RX_BG_0_MAC_DROP_FRAME_L 0x9640
1618 #define MPS_STAT_RX_BG_0_MAC_DROP_FRAME_H 0x9644
1619 #define MPS_STAT_RX_BG_1_MAC_DROP_FRAME_L 0x9648
1620 #define MPS_STAT_RX_BG_1_MAC_DROP_FRAME_H 0x964c
1621 #define MPS_STAT_RX_BG_2_MAC_DROP_FRAME_L 0x9650
1622 #define MPS_STAT_RX_BG_2_MAC_DROP_FRAME_H 0x9654
1623 #define MPS_STAT_RX_BG_3_MAC_DROP_FRAME_L 0x9658
1624 #define MPS_STAT_RX_BG_3_MAC_DROP_FRAME_H 0x965c
1625 #define MPS_STAT_RX_BG_0_LB_DROP_FRAME_L 0x9660
1626 #define MPS_STAT_RX_BG_0_LB_DROP_FRAME_H 0x9664
1627 #define MPS_STAT_RX_BG_1_LB_DROP_FRAME_L 0x9668
1628 #define MPS_STAT_RX_BG_1_LB_DROP_FRAME_H 0x966c
1629 #define MPS_STAT_RX_BG_2_LB_DROP_FRAME_L 0x9670
1630 #define MPS_STAT_RX_BG_2_LB_DROP_FRAME_H 0x9674
1631 #define MPS_STAT_RX_BG_3_LB_DROP_FRAME_L 0x9678
1632 #define MPS_STAT_RX_BG_3_LB_DROP_FRAME_H 0x967c
1633 #define MPS_STAT_RX_BG_0_MAC_TRUNC_FRAME_L 0x9680
1634 #define MPS_STAT_RX_BG_0_MAC_TRUNC_FRAME_H 0x9684
1635 #define MPS_STAT_RX_BG_1_MAC_TRUNC_FRAME_L 0x9688
1636 #define MPS_STAT_RX_BG_1_MAC_TRUNC_FRAME_H 0x968c
1637 #define MPS_STAT_RX_BG_2_MAC_TRUNC_FRAME_L 0x9690
1638 #define MPS_STAT_RX_BG_2_MAC_TRUNC_FRAME_H 0x9694
1639 #define MPS_STAT_RX_BG_3_MAC_TRUNC_FRAME_L 0x9698
1640 #define MPS_STAT_RX_BG_3_MAC_TRUNC_FRAME_H 0x969c
1641 #define MPS_STAT_RX_BG_0_LB_TRUNC_FRAME_L 0x96a0
1642 #define MPS_STAT_RX_BG_0_LB_TRUNC_FRAME_H 0x96a4
1643 #define MPS_STAT_RX_BG_1_LB_TRUNC_FRAME_L 0x96a8
1644 #define MPS_STAT_RX_BG_1_LB_TRUNC_FRAME_H 0x96ac
1645 #define MPS_STAT_RX_BG_2_LB_TRUNC_FRAME_L 0x96b0
1646 #define MPS_STAT_RX_BG_2_LB_TRUNC_FRAME_H 0x96b4
1647 #define MPS_STAT_RX_BG_3_LB_TRUNC_FRAME_L 0x96b8
1648 #define MPS_STAT_RX_BG_3_LB_TRUNC_FRAME_H 0x96bc
1649
1650 #define MPS_TRC_CFG_A 0x9800
1651
1652 #define TRCFIFOEMPTY_S    4
1653 #define TRCFIFOEMPTY_V(x) ((x) << TRCFIFOEMPTY_S)
1654 #define TRCFIFOEMPTY_F    TRCFIFOEMPTY_V(1U)
1655
1656 #define TRCIGNOREDROPINPUT_S    3
1657 #define TRCIGNOREDROPINPUT_V(x) ((x) << TRCIGNOREDROPINPUT_S)
1658 #define TRCIGNOREDROPINPUT_F    TRCIGNOREDROPINPUT_V(1U)
1659
1660 #define TRCKEEPDUPLICATES_S    2
1661 #define TRCKEEPDUPLICATES_V(x) ((x) << TRCKEEPDUPLICATES_S)
1662 #define TRCKEEPDUPLICATES_F    TRCKEEPDUPLICATES_V(1U)
1663
1664 #define TRCEN_S    1
1665 #define TRCEN_V(x) ((x) << TRCEN_S)
1666 #define TRCEN_F    TRCEN_V(1U)
1667
1668 #define TRCMULTIFILTER_S    0
1669 #define TRCMULTIFILTER_V(x) ((x) << TRCMULTIFILTER_S)
1670 #define TRCMULTIFILTER_F    TRCMULTIFILTER_V(1U)
1671
1672 #define MPS_TRC_RSS_CONTROL_A           0x9808
1673 #define MPS_T5_TRC_RSS_CONTROL_A        0xa00c
1674
1675 #define RSSCONTROL_S    16
1676 #define RSSCONTROL_V(x) ((x) << RSSCONTROL_S)
1677
1678 #define QUEUENUMBER_S    0
1679 #define QUEUENUMBER_V(x) ((x) << QUEUENUMBER_S)
1680
1681 #define MPS_TRC_INT_CAUSE_A     0x985c
1682
1683 #define MISCPERR_S    8
1684 #define MISCPERR_V(x) ((x) << MISCPERR_S)
1685 #define MISCPERR_F    MISCPERR_V(1U)
1686
1687 #define PKTFIFO_S    4
1688 #define PKTFIFO_M    0xfU
1689 #define PKTFIFO_V(x) ((x) << PKTFIFO_S)
1690
1691 #define FILTMEM_S    0
1692 #define FILTMEM_M    0xfU
1693 #define FILTMEM_V(x) ((x) << FILTMEM_S)
1694
1695 #define MPS_CLS_INT_CAUSE_A 0xd028
1696
1697 #define HASHSRAM_S    2
1698 #define HASHSRAM_V(x) ((x) << HASHSRAM_S)
1699 #define HASHSRAM_F    HASHSRAM_V(1U)
1700
1701 #define MATCHTCAM_S    1
1702 #define MATCHTCAM_V(x) ((x) << MATCHTCAM_S)
1703 #define MATCHTCAM_F    MATCHTCAM_V(1U)
1704
1705 #define MATCHSRAM_S    0
1706 #define MATCHSRAM_V(x) ((x) << MATCHSRAM_S)
1707 #define MATCHSRAM_F    MATCHSRAM_V(1U)
1708
1709 #define MPS_RX_PERR_INT_CAUSE_A 0x11074
1710
1711 #define CPL_INTR_CAUSE_A 0x19054
1712
1713 #define CIM_OP_MAP_PERR_S    5
1714 #define CIM_OP_MAP_PERR_V(x) ((x) << CIM_OP_MAP_PERR_S)
1715 #define CIM_OP_MAP_PERR_F    CIM_OP_MAP_PERR_V(1U)
1716
1717 #define CIM_OVFL_ERROR_S    4
1718 #define CIM_OVFL_ERROR_V(x) ((x) << CIM_OVFL_ERROR_S)
1719 #define CIM_OVFL_ERROR_F    CIM_OVFL_ERROR_V(1U)
1720
1721 #define TP_FRAMING_ERROR_S    3
1722 #define TP_FRAMING_ERROR_V(x) ((x) << TP_FRAMING_ERROR_S)
1723 #define TP_FRAMING_ERROR_F    TP_FRAMING_ERROR_V(1U)
1724
1725 #define SGE_FRAMING_ERROR_S    2
1726 #define SGE_FRAMING_ERROR_V(x) ((x) << SGE_FRAMING_ERROR_S)
1727 #define SGE_FRAMING_ERROR_F    SGE_FRAMING_ERROR_V(1U)
1728
1729 #define CIM_FRAMING_ERROR_S    1
1730 #define CIM_FRAMING_ERROR_V(x) ((x) << CIM_FRAMING_ERROR_S)
1731 #define CIM_FRAMING_ERROR_F    CIM_FRAMING_ERROR_V(1U)
1732
1733 #define ZERO_SWITCH_ERROR_S    0
1734 #define ZERO_SWITCH_ERROR_V(x) ((x) << ZERO_SWITCH_ERROR_S)
1735 #define ZERO_SWITCH_ERROR_F    ZERO_SWITCH_ERROR_V(1U)
1736
1737 #define SMB_INT_CAUSE_A 0x19090
1738
1739 #define MSTTXFIFOPARINT_S    21
1740 #define MSTTXFIFOPARINT_V(x) ((x) << MSTTXFIFOPARINT_S)
1741 #define MSTTXFIFOPARINT_F    MSTTXFIFOPARINT_V(1U)
1742
1743 #define MSTRXFIFOPARINT_S    20
1744 #define MSTRXFIFOPARINT_V(x) ((x) << MSTRXFIFOPARINT_S)
1745 #define MSTRXFIFOPARINT_F    MSTRXFIFOPARINT_V(1U)
1746
1747 #define SLVFIFOPARINT_S    19
1748 #define SLVFIFOPARINT_V(x) ((x) << SLVFIFOPARINT_S)
1749 #define SLVFIFOPARINT_F    SLVFIFOPARINT_V(1U)
1750
1751 #define ULP_RX_INT_CAUSE_A 0x19158
1752 #define ULP_RX_ISCSI_TAGMASK_A 0x19164
1753 #define ULP_RX_ISCSI_PSZ_A 0x19168
1754
1755 #define HPZ3_S    24
1756 #define HPZ3_V(x) ((x) << HPZ3_S)
1757
1758 #define HPZ2_S    16
1759 #define HPZ2_V(x) ((x) << HPZ2_S)
1760
1761 #define HPZ1_S    8
1762 #define HPZ1_V(x) ((x) << HPZ1_S)
1763
1764 #define HPZ0_S    0
1765 #define HPZ0_V(x) ((x) << HPZ0_S)
1766
1767 #define ULP_RX_TDDP_PSZ_A 0x19178
1768
1769 /* registers for module SF */
1770 #define SF_DATA_A 0x193f8
1771 #define SF_OP_A 0x193fc
1772
1773 #define SF_BUSY_S    31
1774 #define SF_BUSY_V(x) ((x) << SF_BUSY_S)
1775 #define SF_BUSY_F    SF_BUSY_V(1U)
1776
1777 #define SF_LOCK_S    4
1778 #define SF_LOCK_V(x) ((x) << SF_LOCK_S)
1779 #define SF_LOCK_F    SF_LOCK_V(1U)
1780
1781 #define SF_CONT_S    3
1782 #define SF_CONT_V(x) ((x) << SF_CONT_S)
1783 #define SF_CONT_F    SF_CONT_V(1U)
1784
1785 #define BYTECNT_S    1
1786 #define BYTECNT_V(x) ((x) << BYTECNT_S)
1787
1788 #define OP_S    0
1789 #define OP_V(x) ((x) << OP_S)
1790 #define OP_F    OP_V(1U)
1791
1792 #define PL_PF_INT_CAUSE_A 0x3c0
1793
1794 #define PFSW_S    3
1795 #define PFSW_V(x) ((x) << PFSW_S)
1796 #define PFSW_F    PFSW_V(1U)
1797
1798 #define PFCIM_S    1
1799 #define PFCIM_V(x) ((x) << PFCIM_S)
1800 #define PFCIM_F    PFCIM_V(1U)
1801
1802 #define PL_PF_INT_ENABLE_A 0x3c4
1803 #define PL_PF_CTL_A 0x3c8
1804
1805 #define PL_WHOAMI_A 0x19400
1806
1807 #define SOURCEPF_S    8
1808 #define SOURCEPF_M    0x7U
1809 #define SOURCEPF_G(x) (((x) >> SOURCEPF_S) & SOURCEPF_M)
1810
1811 #define PL_INT_CAUSE_A 0x1940c
1812
1813 #define ULP_TX_S    27
1814 #define ULP_TX_V(x) ((x) << ULP_TX_S)
1815 #define ULP_TX_F    ULP_TX_V(1U)
1816
1817 #define SGE_S    26
1818 #define SGE_V(x) ((x) << SGE_S)
1819 #define SGE_F    SGE_V(1U)
1820
1821 #define CPL_SWITCH_S    24
1822 #define CPL_SWITCH_V(x) ((x) << CPL_SWITCH_S)
1823 #define CPL_SWITCH_F    CPL_SWITCH_V(1U)
1824
1825 #define ULP_RX_S    23
1826 #define ULP_RX_V(x) ((x) << ULP_RX_S)
1827 #define ULP_RX_F    ULP_RX_V(1U)
1828
1829 #define PM_RX_S    22
1830 #define PM_RX_V(x) ((x) << PM_RX_S)
1831 #define PM_RX_F    PM_RX_V(1U)
1832
1833 #define PM_TX_S    21
1834 #define PM_TX_V(x) ((x) << PM_TX_S)
1835 #define PM_TX_F    PM_TX_V(1U)
1836
1837 #define MA_S    20
1838 #define MA_V(x) ((x) << MA_S)
1839 #define MA_F    MA_V(1U)
1840
1841 #define TP_S    19
1842 #define TP_V(x) ((x) << TP_S)
1843 #define TP_F    TP_V(1U)
1844
1845 #define LE_S    18
1846 #define LE_V(x) ((x) << LE_S)
1847 #define LE_F    LE_V(1U)
1848
1849 #define EDC1_S    17
1850 #define EDC1_V(x) ((x) << EDC1_S)
1851 #define EDC1_F    EDC1_V(1U)
1852
1853 #define EDC0_S    16
1854 #define EDC0_V(x) ((x) << EDC0_S)
1855 #define EDC0_F    EDC0_V(1U)
1856
1857 #define MC_S    15
1858 #define MC_V(x) ((x) << MC_S)
1859 #define MC_F    MC_V(1U)
1860
1861 #define PCIE_S    14
1862 #define PCIE_V(x) ((x) << PCIE_S)
1863 #define PCIE_F    PCIE_V(1U)
1864
1865 #define XGMAC_KR1_S    12
1866 #define XGMAC_KR1_V(x) ((x) << XGMAC_KR1_S)
1867 #define XGMAC_KR1_F    XGMAC_KR1_V(1U)
1868
1869 #define XGMAC_KR0_S    11
1870 #define XGMAC_KR0_V(x) ((x) << XGMAC_KR0_S)
1871 #define XGMAC_KR0_F    XGMAC_KR0_V(1U)
1872
1873 #define XGMAC1_S    10
1874 #define XGMAC1_V(x) ((x) << XGMAC1_S)
1875 #define XGMAC1_F    XGMAC1_V(1U)
1876
1877 #define XGMAC0_S    9
1878 #define XGMAC0_V(x) ((x) << XGMAC0_S)
1879 #define XGMAC0_F    XGMAC0_V(1U)
1880
1881 #define SMB_S    8
1882 #define SMB_V(x) ((x) << SMB_S)
1883 #define SMB_F    SMB_V(1U)
1884
1885 #define SF_S    7
1886 #define SF_V(x) ((x) << SF_S)
1887 #define SF_F    SF_V(1U)
1888
1889 #define PL_S    6
1890 #define PL_V(x) ((x) << PL_S)
1891 #define PL_F    PL_V(1U)
1892
1893 #define NCSI_S    5
1894 #define NCSI_V(x) ((x) << NCSI_S)
1895 #define NCSI_F    NCSI_V(1U)
1896
1897 #define MPS_S    4
1898 #define MPS_V(x) ((x) << MPS_S)
1899 #define MPS_F    MPS_V(1U)
1900
1901 #define CIM_S    0
1902 #define CIM_V(x) ((x) << CIM_S)
1903 #define CIM_F    CIM_V(1U)
1904
1905 #define MC1_S    31
1906
1907 #define PL_INT_ENABLE_A 0x19410
1908 #define PL_INT_MAP0_A 0x19414
1909 #define PL_RST_A 0x19428
1910
1911 #define PIORST_S    1
1912 #define PIORST_V(x) ((x) << PIORST_S)
1913 #define PIORST_F    PIORST_V(1U)
1914
1915 #define PIORSTMODE_S    0
1916 #define PIORSTMODE_V(x) ((x) << PIORSTMODE_S)
1917 #define PIORSTMODE_F    PIORSTMODE_V(1U)
1918
1919 #define PL_PL_INT_CAUSE_A 0x19430
1920
1921 #define FATALPERR_S    4
1922 #define FATALPERR_V(x) ((x) << FATALPERR_S)
1923 #define FATALPERR_F    FATALPERR_V(1U)
1924
1925 #define PERRVFID_S    0
1926 #define PERRVFID_V(x) ((x) << PERRVFID_S)
1927 #define PERRVFID_F    PERRVFID_V(1U)
1928
1929 #define PL_REV_A 0x1943c
1930
1931 #define REV_S    0
1932 #define REV_M    0xfU
1933 #define REV_V(x) ((x) << REV_S)
1934 #define REV_G(x) (((x) >> REV_S) & REV_M)
1935
1936 #define LE_DB_INT_CAUSE_A 0x19c3c
1937
1938 #define REQQPARERR_S    16
1939 #define REQQPARERR_V(x) ((x) << REQQPARERR_S)
1940 #define REQQPARERR_F    REQQPARERR_V(1U)
1941
1942 #define UNKNOWNCMD_S    15
1943 #define UNKNOWNCMD_V(x) ((x) << UNKNOWNCMD_S)
1944 #define UNKNOWNCMD_F    UNKNOWNCMD_V(1U)
1945
1946 #define PARITYERR_S    6
1947 #define PARITYERR_V(x) ((x) << PARITYERR_S)
1948 #define PARITYERR_F    PARITYERR_V(1U)
1949
1950 #define LIPMISS_S    5
1951 #define LIPMISS_V(x) ((x) << LIPMISS_S)
1952 #define LIPMISS_F    LIPMISS_V(1U)
1953
1954 #define LIP0_S    4
1955 #define LIP0_V(x) ((x) << LIP0_S)
1956 #define LIP0_F    LIP0_V(1U)
1957
1958 #define NCSI_INT_CAUSE_A 0x1a0d8
1959
1960 #define CIM_DM_PRTY_ERR_S    8
1961 #define CIM_DM_PRTY_ERR_V(x) ((x) << CIM_DM_PRTY_ERR_S)
1962 #define CIM_DM_PRTY_ERR_F    CIM_DM_PRTY_ERR_V(1U)
1963
1964 #define MPS_DM_PRTY_ERR_S    7
1965 #define MPS_DM_PRTY_ERR_V(x) ((x) << MPS_DM_PRTY_ERR_S)
1966 #define MPS_DM_PRTY_ERR_F    MPS_DM_PRTY_ERR_V(1U)
1967
1968 #define TXFIFO_PRTY_ERR_S    1
1969 #define TXFIFO_PRTY_ERR_V(x) ((x) << TXFIFO_PRTY_ERR_S)
1970 #define TXFIFO_PRTY_ERR_F    TXFIFO_PRTY_ERR_V(1U)
1971
1972 #define RXFIFO_PRTY_ERR_S    0
1973 #define RXFIFO_PRTY_ERR_V(x) ((x) << RXFIFO_PRTY_ERR_S)
1974 #define RXFIFO_PRTY_ERR_F    RXFIFO_PRTY_ERR_V(1U)
1975
1976 #define XGMAC_PORT_CFG2_A 0x1018
1977
1978 #define PATEN_S    18
1979 #define PATEN_V(x) ((x) << PATEN_S)
1980 #define PATEN_F    PATEN_V(1U)
1981
1982 #define MAGICEN_S    17
1983 #define MAGICEN_V(x) ((x) << MAGICEN_S)
1984 #define MAGICEN_F    MAGICEN_V(1U)
1985
1986 #define XGMAC_PORT_MAGIC_MACID_LO 0x1024
1987 #define XGMAC_PORT_MAGIC_MACID_HI 0x1028
1988
1989 #define XGMAC_PORT_EPIO_DATA0_A 0x10c0
1990 #define XGMAC_PORT_EPIO_DATA1_A 0x10c4
1991 #define XGMAC_PORT_EPIO_DATA2_A 0x10c8
1992 #define XGMAC_PORT_EPIO_DATA3_A 0x10cc
1993 #define XGMAC_PORT_EPIO_OP_A 0x10d0
1994
1995 #define EPIOWR_S    8
1996 #define EPIOWR_V(x) ((x) << EPIOWR_S)
1997 #define EPIOWR_F    EPIOWR_V(1U)
1998
1999 #define ADDRESS_S    0
2000 #define ADDRESS_V(x) ((x) << ADDRESS_S)
2001
2002 #define MAC_PORT_INT_CAUSE_A 0x8dc
2003 #define XGMAC_PORT_INT_CAUSE_A 0x10dc
2004
2005 #define TP_TX_MOD_QUEUE_REQ_MAP_A 0x7e28
2006
2007 #define TP_TX_MOD_QUEUE_WEIGHT0_A 0x7e30
2008 #define TP_TX_MOD_CHANNEL_WEIGHT_A 0x7e34
2009
2010 #define TX_MOD_QUEUE_REQ_MAP_S    0
2011 #define TX_MOD_QUEUE_REQ_MAP_V(x) ((x) << TX_MOD_QUEUE_REQ_MAP_S)
2012
2013 #define TX_MODQ_WEIGHT3_S    24
2014 #define TX_MODQ_WEIGHT3_V(x) ((x) << TX_MODQ_WEIGHT3_S)
2015
2016 #define TX_MODQ_WEIGHT2_S    16
2017 #define TX_MODQ_WEIGHT2_V(x) ((x) << TX_MODQ_WEIGHT2_S)
2018
2019 #define TX_MODQ_WEIGHT1_S    8
2020 #define TX_MODQ_WEIGHT1_V(x) ((x) << TX_MODQ_WEIGHT1_S)
2021
2022 #define TX_MODQ_WEIGHT0_S    0
2023 #define TX_MODQ_WEIGHT0_V(x) ((x) << TX_MODQ_WEIGHT0_S)
2024
2025 #define TP_TX_SCHED_HDR_A 0x23
2026 #define TP_TX_SCHED_FIFO_A 0x24
2027 #define TP_TX_SCHED_PCMD_A 0x25
2028
2029 #define NUM_MPS_CLS_SRAM_L_INSTANCES 336
2030 #define NUM_MPS_T5_CLS_SRAM_L_INSTANCES 512
2031
2032 #define T5_PORT0_BASE 0x30000
2033 #define T5_PORT_STRIDE 0x4000
2034 #define T5_PORT_BASE(idx) (T5_PORT0_BASE + (idx) * T5_PORT_STRIDE)
2035 #define T5_PORT_REG(idx, reg) (T5_PORT_BASE(idx) + (reg))
2036
2037 #define MC_0_BASE_ADDR 0x40000
2038 #define MC_1_BASE_ADDR 0x48000
2039 #define MC_STRIDE (MC_1_BASE_ADDR - MC_0_BASE_ADDR)
2040 #define MC_REG(reg, idx) (reg + MC_STRIDE * idx)
2041
2042 #define MC_P_BIST_CMD_A                 0x41400
2043 #define MC_P_BIST_CMD_ADDR_A            0x41404
2044 #define MC_P_BIST_CMD_LEN_A             0x41408
2045 #define MC_P_BIST_DATA_PATTERN_A        0x4140c
2046 #define MC_P_BIST_STATUS_RDATA_A        0x41488
2047
2048 #define EDC_T50_BASE_ADDR               0x50000
2049
2050 #define EDC_H_BIST_CMD_A                0x50004
2051 #define EDC_H_BIST_CMD_ADDR_A           0x50008
2052 #define EDC_H_BIST_CMD_LEN_A            0x5000c
2053 #define EDC_H_BIST_DATA_PATTERN_A       0x50010
2054 #define EDC_H_BIST_STATUS_RDATA_A       0x50028
2055
2056 #define EDC_T51_BASE_ADDR               0x50800
2057
2058 #define EDC_STRIDE_T5 (EDC_T51_BASE_ADDR - EDC_T50_BASE_ADDR)
2059 #define EDC_REG_T5(reg, idx) (reg + EDC_STRIDE_T5 * idx)
2060
2061 #define PL_VF_REV_A 0x4
2062 #define PL_VF_WHOAMI_A 0x0
2063 #define PL_VF_REVISION_A 0x8
2064
2065 #endif /* __T4_REGS_H */