~ubuntu-branches/ubuntu/precise/linux-lowlatency/precise

« back to all changes in this revision

Viewing changes to arch/mips/include/asm/octeon/cvmx-pci-defs.h

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-tz023xykf0i6eosh
Tags: upstream-3.2.0
ImportĀ upstreamĀ versionĀ 3.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/***********************license start***************
 
2
 * Author: Cavium Networks
 
3
 *
 
4
 * Contact: support@caviumnetworks.com
 
5
 * This file is part of the OCTEON SDK
 
6
 *
 
7
 * Copyright (c) 2003-2010 Cavium Networks
 
8
 *
 
9
 * This file is free software; you can redistribute it and/or modify
 
10
 * it under the terms of the GNU General Public License, Version 2, as
 
11
 * published by the Free Software Foundation.
 
12
 *
 
13
 * This file is distributed in the hope that it will be useful, but
 
14
 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
 
15
 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
 
16
 * NONINFRINGEMENT.  See the GNU General Public License for more
 
17
 * details.
 
18
 *
 
19
 * You should have received a copy of the GNU General Public License
 
20
 * along with this file; if not, write to the Free Software
 
21
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 
22
 * or visit http://www.gnu.org/licenses/.
 
23
 *
 
24
 * This file may also be available under a different license from Cavium.
 
25
 * Contact Cavium Networks for more information
 
26
 ***********************license end**************************************/
 
27
 
 
28
#ifndef __CVMX_PCI_DEFS_H__
 
29
#define __CVMX_PCI_DEFS_H__
 
30
 
 
31
#define CVMX_PCI_BAR1_INDEXX(offset) (0x0000000000000100ull + ((offset) & 31) * 4)
 
32
#define CVMX_PCI_BIST_REG (0x00000000000001C0ull)
 
33
#define CVMX_PCI_CFG00 (0x0000000000000000ull)
 
34
#define CVMX_PCI_CFG01 (0x0000000000000004ull)
 
35
#define CVMX_PCI_CFG02 (0x0000000000000008ull)
 
36
#define CVMX_PCI_CFG03 (0x000000000000000Cull)
 
37
#define CVMX_PCI_CFG04 (0x0000000000000010ull)
 
38
#define CVMX_PCI_CFG05 (0x0000000000000014ull)
 
39
#define CVMX_PCI_CFG06 (0x0000000000000018ull)
 
40
#define CVMX_PCI_CFG07 (0x000000000000001Cull)
 
41
#define CVMX_PCI_CFG08 (0x0000000000000020ull)
 
42
#define CVMX_PCI_CFG09 (0x0000000000000024ull)
 
43
#define CVMX_PCI_CFG10 (0x0000000000000028ull)
 
44
#define CVMX_PCI_CFG11 (0x000000000000002Cull)
 
45
#define CVMX_PCI_CFG12 (0x0000000000000030ull)
 
46
#define CVMX_PCI_CFG13 (0x0000000000000034ull)
 
47
#define CVMX_PCI_CFG15 (0x000000000000003Cull)
 
48
#define CVMX_PCI_CFG16 (0x0000000000000040ull)
 
49
#define CVMX_PCI_CFG17 (0x0000000000000044ull)
 
50
#define CVMX_PCI_CFG18 (0x0000000000000048ull)
 
51
#define CVMX_PCI_CFG19 (0x000000000000004Cull)
 
52
#define CVMX_PCI_CFG20 (0x0000000000000050ull)
 
53
#define CVMX_PCI_CFG21 (0x0000000000000054ull)
 
54
#define CVMX_PCI_CFG22 (0x0000000000000058ull)
 
55
#define CVMX_PCI_CFG56 (0x00000000000000E0ull)
 
56
#define CVMX_PCI_CFG57 (0x00000000000000E4ull)
 
57
#define CVMX_PCI_CFG58 (0x00000000000000E8ull)
 
58
#define CVMX_PCI_CFG59 (0x00000000000000ECull)
 
59
#define CVMX_PCI_CFG60 (0x00000000000000F0ull)
 
60
#define CVMX_PCI_CFG61 (0x00000000000000F4ull)
 
61
#define CVMX_PCI_CFG62 (0x00000000000000F8ull)
 
62
#define CVMX_PCI_CFG63 (0x00000000000000FCull)
 
63
#define CVMX_PCI_CNT_REG (0x00000000000001B8ull)
 
64
#define CVMX_PCI_CTL_STATUS_2 (0x000000000000018Cull)
 
65
#define CVMX_PCI_DBELL_X(offset) (0x0000000000000080ull + ((offset) & 3) * 8)
 
66
#define CVMX_PCI_DMA_CNT0 CVMX_PCI_DMA_CNTX(0)
 
67
#define CVMX_PCI_DMA_CNT1 CVMX_PCI_DMA_CNTX(1)
 
68
#define CVMX_PCI_DMA_CNTX(offset) (0x00000000000000A0ull + ((offset) & 1) * 8)
 
69
#define CVMX_PCI_DMA_INT_LEV0 CVMX_PCI_DMA_INT_LEVX(0)
 
70
#define CVMX_PCI_DMA_INT_LEV1 CVMX_PCI_DMA_INT_LEVX(1)
 
71
#define CVMX_PCI_DMA_INT_LEVX(offset) (0x00000000000000A4ull + ((offset) & 1) * 8)
 
72
#define CVMX_PCI_DMA_TIME0 CVMX_PCI_DMA_TIMEX(0)
 
73
#define CVMX_PCI_DMA_TIME1 CVMX_PCI_DMA_TIMEX(1)
 
74
#define CVMX_PCI_DMA_TIMEX(offset) (0x00000000000000B0ull + ((offset) & 1) * 4)
 
75
#define CVMX_PCI_INSTR_COUNT0 CVMX_PCI_INSTR_COUNTX(0)
 
76
#define CVMX_PCI_INSTR_COUNT1 CVMX_PCI_INSTR_COUNTX(1)
 
77
#define CVMX_PCI_INSTR_COUNT2 CVMX_PCI_INSTR_COUNTX(2)
 
78
#define CVMX_PCI_INSTR_COUNT3 CVMX_PCI_INSTR_COUNTX(3)
 
79
#define CVMX_PCI_INSTR_COUNTX(offset) (0x0000000000000084ull + ((offset) & 3) * 8)
 
80
#define CVMX_PCI_INT_ENB (0x0000000000000038ull)
 
81
#define CVMX_PCI_INT_ENB2 (0x00000000000001A0ull)
 
82
#define CVMX_PCI_INT_SUM (0x0000000000000030ull)
 
83
#define CVMX_PCI_INT_SUM2 (0x0000000000000198ull)
 
84
#define CVMX_PCI_MSI_RCV (0x00000000000000F0ull)
 
85
#define CVMX_PCI_PKTS_SENT0 CVMX_PCI_PKTS_SENTX(0)
 
86
#define CVMX_PCI_PKTS_SENT1 CVMX_PCI_PKTS_SENTX(1)
 
87
#define CVMX_PCI_PKTS_SENT2 CVMX_PCI_PKTS_SENTX(2)
 
88
#define CVMX_PCI_PKTS_SENT3 CVMX_PCI_PKTS_SENTX(3)
 
89
#define CVMX_PCI_PKTS_SENTX(offset) (0x0000000000000040ull + ((offset) & 3) * 16)
 
90
#define CVMX_PCI_PKTS_SENT_INT_LEV0 CVMX_PCI_PKTS_SENT_INT_LEVX(0)
 
91
#define CVMX_PCI_PKTS_SENT_INT_LEV1 CVMX_PCI_PKTS_SENT_INT_LEVX(1)
 
92
#define CVMX_PCI_PKTS_SENT_INT_LEV2 CVMX_PCI_PKTS_SENT_INT_LEVX(2)
 
93
#define CVMX_PCI_PKTS_SENT_INT_LEV3 CVMX_PCI_PKTS_SENT_INT_LEVX(3)
 
94
#define CVMX_PCI_PKTS_SENT_INT_LEVX(offset) (0x0000000000000048ull + ((offset) & 3) * 16)
 
95
#define CVMX_PCI_PKTS_SENT_TIME0 CVMX_PCI_PKTS_SENT_TIMEX(0)
 
96
#define CVMX_PCI_PKTS_SENT_TIME1 CVMX_PCI_PKTS_SENT_TIMEX(1)
 
97
#define CVMX_PCI_PKTS_SENT_TIME2 CVMX_PCI_PKTS_SENT_TIMEX(2)
 
98
#define CVMX_PCI_PKTS_SENT_TIME3 CVMX_PCI_PKTS_SENT_TIMEX(3)
 
99
#define CVMX_PCI_PKTS_SENT_TIMEX(offset) (0x000000000000004Cull + ((offset) & 3) * 16)
 
100
#define CVMX_PCI_PKT_CREDITS0 CVMX_PCI_PKT_CREDITSX(0)
 
101
#define CVMX_PCI_PKT_CREDITS1 CVMX_PCI_PKT_CREDITSX(1)
 
102
#define CVMX_PCI_PKT_CREDITS2 CVMX_PCI_PKT_CREDITSX(2)
 
103
#define CVMX_PCI_PKT_CREDITS3 CVMX_PCI_PKT_CREDITSX(3)
 
104
#define CVMX_PCI_PKT_CREDITSX(offset) (0x0000000000000044ull + ((offset) & 3) * 16)
 
105
#define CVMX_PCI_READ_CMD_6 (0x0000000000000180ull)
 
106
#define CVMX_PCI_READ_CMD_C (0x0000000000000184ull)
 
107
#define CVMX_PCI_READ_CMD_E (0x0000000000000188ull)
 
108
#define CVMX_PCI_READ_TIMEOUT (CVMX_ADD_IO_SEG(0x00011F00000000B0ull))
 
109
#define CVMX_PCI_SCM_REG (0x00000000000001A8ull)
 
110
#define CVMX_PCI_TSR_REG (0x00000000000001B0ull)
 
111
#define CVMX_PCI_WIN_RD_ADDR (0x0000000000000008ull)
 
112
#define CVMX_PCI_WIN_RD_DATA (0x0000000000000020ull)
 
113
#define CVMX_PCI_WIN_WR_ADDR (0x0000000000000000ull)
 
114
#define CVMX_PCI_WIN_WR_DATA (0x0000000000000010ull)
 
115
#define CVMX_PCI_WIN_WR_MASK (0x0000000000000018ull)
 
116
 
 
117
union cvmx_pci_bar1_indexx {
 
118
        uint32_t u32;
 
119
        struct cvmx_pci_bar1_indexx_s {
 
120
                uint32_t reserved_18_31:14;
 
121
                uint32_t addr_idx:14;
 
122
                uint32_t ca:1;
 
123
                uint32_t end_swp:2;
 
124
                uint32_t addr_v:1;
 
125
        } s;
 
126
        struct cvmx_pci_bar1_indexx_s cn30xx;
 
127
        struct cvmx_pci_bar1_indexx_s cn31xx;
 
128
        struct cvmx_pci_bar1_indexx_s cn38xx;
 
129
        struct cvmx_pci_bar1_indexx_s cn38xxp2;
 
130
        struct cvmx_pci_bar1_indexx_s cn50xx;
 
131
        struct cvmx_pci_bar1_indexx_s cn58xx;
 
132
        struct cvmx_pci_bar1_indexx_s cn58xxp1;
 
133
};
 
134
 
 
135
union cvmx_pci_bist_reg {
 
136
        uint64_t u64;
 
137
        struct cvmx_pci_bist_reg_s {
 
138
                uint64_t reserved_10_63:54;
 
139
                uint64_t rsp_bs:1;
 
140
                uint64_t dma0_bs:1;
 
141
                uint64_t cmd0_bs:1;
 
142
                uint64_t cmd_bs:1;
 
143
                uint64_t csr2p_bs:1;
 
144
                uint64_t csrr_bs:1;
 
145
                uint64_t rsp2p_bs:1;
 
146
                uint64_t csr2n_bs:1;
 
147
                uint64_t dat2n_bs:1;
 
148
                uint64_t dbg2n_bs:1;
 
149
        } s;
 
150
        struct cvmx_pci_bist_reg_s cn50xx;
 
151
};
 
152
 
 
153
union cvmx_pci_cfg00 {
 
154
        uint32_t u32;
 
155
        struct cvmx_pci_cfg00_s {
 
156
                uint32_t devid:16;
 
157
                uint32_t vendid:16;
 
158
        } s;
 
159
        struct cvmx_pci_cfg00_s cn30xx;
 
160
        struct cvmx_pci_cfg00_s cn31xx;
 
161
        struct cvmx_pci_cfg00_s cn38xx;
 
162
        struct cvmx_pci_cfg00_s cn38xxp2;
 
163
        struct cvmx_pci_cfg00_s cn50xx;
 
164
        struct cvmx_pci_cfg00_s cn58xx;
 
165
        struct cvmx_pci_cfg00_s cn58xxp1;
 
166
};
 
167
 
 
168
union cvmx_pci_cfg01 {
 
169
        uint32_t u32;
 
170
        struct cvmx_pci_cfg01_s {
 
171
                uint32_t dpe:1;
 
172
                uint32_t sse:1;
 
173
                uint32_t rma:1;
 
174
                uint32_t rta:1;
 
175
                uint32_t sta:1;
 
176
                uint32_t devt:2;
 
177
                uint32_t mdpe:1;
 
178
                uint32_t fbb:1;
 
179
                uint32_t reserved_22_22:1;
 
180
                uint32_t m66:1;
 
181
                uint32_t cle:1;
 
182
                uint32_t i_stat:1;
 
183
                uint32_t reserved_11_18:8;
 
184
                uint32_t i_dis:1;
 
185
                uint32_t fbbe:1;
 
186
                uint32_t see:1;
 
187
                uint32_t ads:1;
 
188
                uint32_t pee:1;
 
189
                uint32_t vps:1;
 
190
                uint32_t mwice:1;
 
191
                uint32_t scse:1;
 
192
                uint32_t me:1;
 
193
                uint32_t msae:1;
 
194
                uint32_t isae:1;
 
195
        } s;
 
196
        struct cvmx_pci_cfg01_s cn30xx;
 
197
        struct cvmx_pci_cfg01_s cn31xx;
 
198
        struct cvmx_pci_cfg01_s cn38xx;
 
199
        struct cvmx_pci_cfg01_s cn38xxp2;
 
200
        struct cvmx_pci_cfg01_s cn50xx;
 
201
        struct cvmx_pci_cfg01_s cn58xx;
 
202
        struct cvmx_pci_cfg01_s cn58xxp1;
 
203
};
 
204
 
 
205
union cvmx_pci_cfg02 {
 
206
        uint32_t u32;
 
207
        struct cvmx_pci_cfg02_s {
 
208
                uint32_t cc:24;
 
209
                uint32_t rid:8;
 
210
        } s;
 
211
        struct cvmx_pci_cfg02_s cn30xx;
 
212
        struct cvmx_pci_cfg02_s cn31xx;
 
213
        struct cvmx_pci_cfg02_s cn38xx;
 
214
        struct cvmx_pci_cfg02_s cn38xxp2;
 
215
        struct cvmx_pci_cfg02_s cn50xx;
 
216
        struct cvmx_pci_cfg02_s cn58xx;
 
217
        struct cvmx_pci_cfg02_s cn58xxp1;
 
218
};
 
219
 
 
220
union cvmx_pci_cfg03 {
 
221
        uint32_t u32;
 
222
        struct cvmx_pci_cfg03_s {
 
223
                uint32_t bcap:1;
 
224
                uint32_t brb:1;
 
225
                uint32_t reserved_28_29:2;
 
226
                uint32_t bcod:4;
 
227
                uint32_t ht:8;
 
228
                uint32_t lt:8;
 
229
                uint32_t cls:8;
 
230
        } s;
 
231
        struct cvmx_pci_cfg03_s cn30xx;
 
232
        struct cvmx_pci_cfg03_s cn31xx;
 
233
        struct cvmx_pci_cfg03_s cn38xx;
 
234
        struct cvmx_pci_cfg03_s cn38xxp2;
 
235
        struct cvmx_pci_cfg03_s cn50xx;
 
236
        struct cvmx_pci_cfg03_s cn58xx;
 
237
        struct cvmx_pci_cfg03_s cn58xxp1;
 
238
};
 
239
 
 
240
union cvmx_pci_cfg04 {
 
241
        uint32_t u32;
 
242
        struct cvmx_pci_cfg04_s {
 
243
                uint32_t lbase:20;
 
244
                uint32_t lbasez:8;
 
245
                uint32_t pf:1;
 
246
                uint32_t typ:2;
 
247
                uint32_t mspc:1;
 
248
        } s;
 
249
        struct cvmx_pci_cfg04_s cn30xx;
 
250
        struct cvmx_pci_cfg04_s cn31xx;
 
251
        struct cvmx_pci_cfg04_s cn38xx;
 
252
        struct cvmx_pci_cfg04_s cn38xxp2;
 
253
        struct cvmx_pci_cfg04_s cn50xx;
 
254
        struct cvmx_pci_cfg04_s cn58xx;
 
255
        struct cvmx_pci_cfg04_s cn58xxp1;
 
256
};
 
257
 
 
258
union cvmx_pci_cfg05 {
 
259
        uint32_t u32;
 
260
        struct cvmx_pci_cfg05_s {
 
261
                uint32_t hbase:32;
 
262
        } s;
 
263
        struct cvmx_pci_cfg05_s cn30xx;
 
264
        struct cvmx_pci_cfg05_s cn31xx;
 
265
        struct cvmx_pci_cfg05_s cn38xx;
 
266
        struct cvmx_pci_cfg05_s cn38xxp2;
 
267
        struct cvmx_pci_cfg05_s cn50xx;
 
268
        struct cvmx_pci_cfg05_s cn58xx;
 
269
        struct cvmx_pci_cfg05_s cn58xxp1;
 
270
};
 
271
 
 
272
union cvmx_pci_cfg06 {
 
273
        uint32_t u32;
 
274
        struct cvmx_pci_cfg06_s {
 
275
                uint32_t lbase:5;
 
276
                uint32_t lbasez:23;
 
277
                uint32_t pf:1;
 
278
                uint32_t typ:2;
 
279
                uint32_t mspc:1;
 
280
        } s;
 
281
        struct cvmx_pci_cfg06_s cn30xx;
 
282
        struct cvmx_pci_cfg06_s cn31xx;
 
283
        struct cvmx_pci_cfg06_s cn38xx;
 
284
        struct cvmx_pci_cfg06_s cn38xxp2;
 
285
        struct cvmx_pci_cfg06_s cn50xx;
 
286
        struct cvmx_pci_cfg06_s cn58xx;
 
287
        struct cvmx_pci_cfg06_s cn58xxp1;
 
288
};
 
289
 
 
290
union cvmx_pci_cfg07 {
 
291
        uint32_t u32;
 
292
        struct cvmx_pci_cfg07_s {
 
293
                uint32_t hbase:32;
 
294
        } s;
 
295
        struct cvmx_pci_cfg07_s cn30xx;
 
296
        struct cvmx_pci_cfg07_s cn31xx;
 
297
        struct cvmx_pci_cfg07_s cn38xx;
 
298
        struct cvmx_pci_cfg07_s cn38xxp2;
 
299
        struct cvmx_pci_cfg07_s cn50xx;
 
300
        struct cvmx_pci_cfg07_s cn58xx;
 
301
        struct cvmx_pci_cfg07_s cn58xxp1;
 
302
};
 
303
 
 
304
union cvmx_pci_cfg08 {
 
305
        uint32_t u32;
 
306
        struct cvmx_pci_cfg08_s {
 
307
                uint32_t lbasez:28;
 
308
                uint32_t pf:1;
 
309
                uint32_t typ:2;
 
310
                uint32_t mspc:1;
 
311
        } s;
 
312
        struct cvmx_pci_cfg08_s cn30xx;
 
313
        struct cvmx_pci_cfg08_s cn31xx;
 
314
        struct cvmx_pci_cfg08_s cn38xx;
 
315
        struct cvmx_pci_cfg08_s cn38xxp2;
 
316
        struct cvmx_pci_cfg08_s cn50xx;
 
317
        struct cvmx_pci_cfg08_s cn58xx;
 
318
        struct cvmx_pci_cfg08_s cn58xxp1;
 
319
};
 
320
 
 
321
union cvmx_pci_cfg09 {
 
322
        uint32_t u32;
 
323
        struct cvmx_pci_cfg09_s {
 
324
                uint32_t hbase:25;
 
325
                uint32_t hbasez:7;
 
326
        } s;
 
327
        struct cvmx_pci_cfg09_s cn30xx;
 
328
        struct cvmx_pci_cfg09_s cn31xx;
 
329
        struct cvmx_pci_cfg09_s cn38xx;
 
330
        struct cvmx_pci_cfg09_s cn38xxp2;
 
331
        struct cvmx_pci_cfg09_s cn50xx;
 
332
        struct cvmx_pci_cfg09_s cn58xx;
 
333
        struct cvmx_pci_cfg09_s cn58xxp1;
 
334
};
 
335
 
 
336
union cvmx_pci_cfg10 {
 
337
        uint32_t u32;
 
338
        struct cvmx_pci_cfg10_s {
 
339
                uint32_t cisp:32;
 
340
        } s;
 
341
        struct cvmx_pci_cfg10_s cn30xx;
 
342
        struct cvmx_pci_cfg10_s cn31xx;
 
343
        struct cvmx_pci_cfg10_s cn38xx;
 
344
        struct cvmx_pci_cfg10_s cn38xxp2;
 
345
        struct cvmx_pci_cfg10_s cn50xx;
 
346
        struct cvmx_pci_cfg10_s cn58xx;
 
347
        struct cvmx_pci_cfg10_s cn58xxp1;
 
348
};
 
349
 
 
350
union cvmx_pci_cfg11 {
 
351
        uint32_t u32;
 
352
        struct cvmx_pci_cfg11_s {
 
353
                uint32_t ssid:16;
 
354
                uint32_t ssvid:16;
 
355
        } s;
 
356
        struct cvmx_pci_cfg11_s cn30xx;
 
357
        struct cvmx_pci_cfg11_s cn31xx;
 
358
        struct cvmx_pci_cfg11_s cn38xx;
 
359
        struct cvmx_pci_cfg11_s cn38xxp2;
 
360
        struct cvmx_pci_cfg11_s cn50xx;
 
361
        struct cvmx_pci_cfg11_s cn58xx;
 
362
        struct cvmx_pci_cfg11_s cn58xxp1;
 
363
};
 
364
 
 
365
union cvmx_pci_cfg12 {
 
366
        uint32_t u32;
 
367
        struct cvmx_pci_cfg12_s {
 
368
                uint32_t erbar:16;
 
369
                uint32_t erbarz:5;
 
370
                uint32_t reserved_1_10:10;
 
371
                uint32_t erbar_en:1;
 
372
        } s;
 
373
        struct cvmx_pci_cfg12_s cn30xx;
 
374
        struct cvmx_pci_cfg12_s cn31xx;
 
375
        struct cvmx_pci_cfg12_s cn38xx;
 
376
        struct cvmx_pci_cfg12_s cn38xxp2;
 
377
        struct cvmx_pci_cfg12_s cn50xx;
 
378
        struct cvmx_pci_cfg12_s cn58xx;
 
379
        struct cvmx_pci_cfg12_s cn58xxp1;
 
380
};
 
381
 
 
382
union cvmx_pci_cfg13 {
 
383
        uint32_t u32;
 
384
        struct cvmx_pci_cfg13_s {
 
385
                uint32_t reserved_8_31:24;
 
386
                uint32_t cp:8;
 
387
        } s;
 
388
        struct cvmx_pci_cfg13_s cn30xx;
 
389
        struct cvmx_pci_cfg13_s cn31xx;
 
390
        struct cvmx_pci_cfg13_s cn38xx;
 
391
        struct cvmx_pci_cfg13_s cn38xxp2;
 
392
        struct cvmx_pci_cfg13_s cn50xx;
 
393
        struct cvmx_pci_cfg13_s cn58xx;
 
394
        struct cvmx_pci_cfg13_s cn58xxp1;
 
395
};
 
396
 
 
397
union cvmx_pci_cfg15 {
 
398
        uint32_t u32;
 
399
        struct cvmx_pci_cfg15_s {
 
400
                uint32_t ml:8;
 
401
                uint32_t mg:8;
 
402
                uint32_t inta:8;
 
403
                uint32_t il:8;
 
404
        } s;
 
405
        struct cvmx_pci_cfg15_s cn30xx;
 
406
        struct cvmx_pci_cfg15_s cn31xx;
 
407
        struct cvmx_pci_cfg15_s cn38xx;
 
408
        struct cvmx_pci_cfg15_s cn38xxp2;
 
409
        struct cvmx_pci_cfg15_s cn50xx;
 
410
        struct cvmx_pci_cfg15_s cn58xx;
 
411
        struct cvmx_pci_cfg15_s cn58xxp1;
 
412
};
 
413
 
 
414
union cvmx_pci_cfg16 {
 
415
        uint32_t u32;
 
416
        struct cvmx_pci_cfg16_s {
 
417
                uint32_t trdnpr:1;
 
418
                uint32_t trdard:1;
 
419
                uint32_t rdsati:1;
 
420
                uint32_t trdrs:1;
 
421
                uint32_t trtae:1;
 
422
                uint32_t twsei:1;
 
423
                uint32_t twsen:1;
 
424
                uint32_t twtae:1;
 
425
                uint32_t tmae:1;
 
426
                uint32_t tslte:3;
 
427
                uint32_t tilt:4;
 
428
                uint32_t pbe:12;
 
429
                uint32_t dppmr:1;
 
430
                uint32_t reserved_2_2:1;
 
431
                uint32_t tswc:1;
 
432
                uint32_t mltd:1;
 
433
        } s;
 
434
        struct cvmx_pci_cfg16_s cn30xx;
 
435
        struct cvmx_pci_cfg16_s cn31xx;
 
436
        struct cvmx_pci_cfg16_s cn38xx;
 
437
        struct cvmx_pci_cfg16_s cn38xxp2;
 
438
        struct cvmx_pci_cfg16_s cn50xx;
 
439
        struct cvmx_pci_cfg16_s cn58xx;
 
440
        struct cvmx_pci_cfg16_s cn58xxp1;
 
441
};
 
442
 
 
443
union cvmx_pci_cfg17 {
 
444
        uint32_t u32;
 
445
        struct cvmx_pci_cfg17_s {
 
446
                uint32_t tscme:32;
 
447
        } s;
 
448
        struct cvmx_pci_cfg17_s cn30xx;
 
449
        struct cvmx_pci_cfg17_s cn31xx;
 
450
        struct cvmx_pci_cfg17_s cn38xx;
 
451
        struct cvmx_pci_cfg17_s cn38xxp2;
 
452
        struct cvmx_pci_cfg17_s cn50xx;
 
453
        struct cvmx_pci_cfg17_s cn58xx;
 
454
        struct cvmx_pci_cfg17_s cn58xxp1;
 
455
};
 
456
 
 
457
union cvmx_pci_cfg18 {
 
458
        uint32_t u32;
 
459
        struct cvmx_pci_cfg18_s {
 
460
                uint32_t tdsrps:32;
 
461
        } s;
 
462
        struct cvmx_pci_cfg18_s cn30xx;
 
463
        struct cvmx_pci_cfg18_s cn31xx;
 
464
        struct cvmx_pci_cfg18_s cn38xx;
 
465
        struct cvmx_pci_cfg18_s cn38xxp2;
 
466
        struct cvmx_pci_cfg18_s cn50xx;
 
467
        struct cvmx_pci_cfg18_s cn58xx;
 
468
        struct cvmx_pci_cfg18_s cn58xxp1;
 
469
};
 
470
 
 
471
union cvmx_pci_cfg19 {
 
472
        uint32_t u32;
 
473
        struct cvmx_pci_cfg19_s {
 
474
                uint32_t mrbcm:1;
 
475
                uint32_t mrbci:1;
 
476
                uint32_t mdwe:1;
 
477
                uint32_t mdre:1;
 
478
                uint32_t mdrimc:1;
 
479
                uint32_t mdrrmc:3;
 
480
                uint32_t tmes:8;
 
481
                uint32_t teci:1;
 
482
                uint32_t tmei:1;
 
483
                uint32_t tmse:1;
 
484
                uint32_t tmdpes:1;
 
485
                uint32_t tmapes:1;
 
486
                uint32_t reserved_9_10:2;
 
487
                uint32_t tibcd:1;
 
488
                uint32_t tibde:1;
 
489
                uint32_t reserved_6_6:1;
 
490
                uint32_t tidomc:1;
 
491
                uint32_t tdomc:5;
 
492
        } s;
 
493
        struct cvmx_pci_cfg19_s cn30xx;
 
494
        struct cvmx_pci_cfg19_s cn31xx;
 
495
        struct cvmx_pci_cfg19_s cn38xx;
 
496
        struct cvmx_pci_cfg19_s cn38xxp2;
 
497
        struct cvmx_pci_cfg19_s cn50xx;
 
498
        struct cvmx_pci_cfg19_s cn58xx;
 
499
        struct cvmx_pci_cfg19_s cn58xxp1;
 
500
};
 
501
 
 
502
union cvmx_pci_cfg20 {
 
503
        uint32_t u32;
 
504
        struct cvmx_pci_cfg20_s {
 
505
                uint32_t mdsp:32;
 
506
        } s;
 
507
        struct cvmx_pci_cfg20_s cn30xx;
 
508
        struct cvmx_pci_cfg20_s cn31xx;
 
509
        struct cvmx_pci_cfg20_s cn38xx;
 
510
        struct cvmx_pci_cfg20_s cn38xxp2;
 
511
        struct cvmx_pci_cfg20_s cn50xx;
 
512
        struct cvmx_pci_cfg20_s cn58xx;
 
513
        struct cvmx_pci_cfg20_s cn58xxp1;
 
514
};
 
515
 
 
516
union cvmx_pci_cfg21 {
 
517
        uint32_t u32;
 
518
        struct cvmx_pci_cfg21_s {
 
519
                uint32_t scmre:32;
 
520
        } s;
 
521
        struct cvmx_pci_cfg21_s cn30xx;
 
522
        struct cvmx_pci_cfg21_s cn31xx;
 
523
        struct cvmx_pci_cfg21_s cn38xx;
 
524
        struct cvmx_pci_cfg21_s cn38xxp2;
 
525
        struct cvmx_pci_cfg21_s cn50xx;
 
526
        struct cvmx_pci_cfg21_s cn58xx;
 
527
        struct cvmx_pci_cfg21_s cn58xxp1;
 
528
};
 
529
 
 
530
union cvmx_pci_cfg22 {
 
531
        uint32_t u32;
 
532
        struct cvmx_pci_cfg22_s {
 
533
                uint32_t mac:7;
 
534
                uint32_t reserved_19_24:6;
 
535
                uint32_t flush:1;
 
536
                uint32_t mra:1;
 
537
                uint32_t mtta:1;
 
538
                uint32_t mrv:8;
 
539
                uint32_t mttv:8;
 
540
        } s;
 
541
        struct cvmx_pci_cfg22_s cn30xx;
 
542
        struct cvmx_pci_cfg22_s cn31xx;
 
543
        struct cvmx_pci_cfg22_s cn38xx;
 
544
        struct cvmx_pci_cfg22_s cn38xxp2;
 
545
        struct cvmx_pci_cfg22_s cn50xx;
 
546
        struct cvmx_pci_cfg22_s cn58xx;
 
547
        struct cvmx_pci_cfg22_s cn58xxp1;
 
548
};
 
549
 
 
550
union cvmx_pci_cfg56 {
 
551
        uint32_t u32;
 
552
        struct cvmx_pci_cfg56_s {
 
553
                uint32_t reserved_23_31:9;
 
554
                uint32_t most:3;
 
555
                uint32_t mmbc:2;
 
556
                uint32_t roe:1;
 
557
                uint32_t dpere:1;
 
558
                uint32_t ncp:8;
 
559
                uint32_t pxcid:8;
 
560
        } s;
 
561
        struct cvmx_pci_cfg56_s cn30xx;
 
562
        struct cvmx_pci_cfg56_s cn31xx;
 
563
        struct cvmx_pci_cfg56_s cn38xx;
 
564
        struct cvmx_pci_cfg56_s cn38xxp2;
 
565
        struct cvmx_pci_cfg56_s cn50xx;
 
566
        struct cvmx_pci_cfg56_s cn58xx;
 
567
        struct cvmx_pci_cfg56_s cn58xxp1;
 
568
};
 
569
 
 
570
union cvmx_pci_cfg57 {
 
571
        uint32_t u32;
 
572
        struct cvmx_pci_cfg57_s {
 
573
                uint32_t reserved_30_31:2;
 
574
                uint32_t scemr:1;
 
575
                uint32_t mcrsd:3;
 
576
                uint32_t mostd:3;
 
577
                uint32_t mmrbcd:2;
 
578
                uint32_t dc:1;
 
579
                uint32_t usc:1;
 
580
                uint32_t scd:1;
 
581
                uint32_t m133:1;
 
582
                uint32_t w64:1;
 
583
                uint32_t bn:8;
 
584
                uint32_t dn:5;
 
585
                uint32_t fn:3;
 
586
        } s;
 
587
        struct cvmx_pci_cfg57_s cn30xx;
 
588
        struct cvmx_pci_cfg57_s cn31xx;
 
589
        struct cvmx_pci_cfg57_s cn38xx;
 
590
        struct cvmx_pci_cfg57_s cn38xxp2;
 
591
        struct cvmx_pci_cfg57_s cn50xx;
 
592
        struct cvmx_pci_cfg57_s cn58xx;
 
593
        struct cvmx_pci_cfg57_s cn58xxp1;
 
594
};
 
595
 
 
596
union cvmx_pci_cfg58 {
 
597
        uint32_t u32;
 
598
        struct cvmx_pci_cfg58_s {
 
599
                uint32_t pmes:5;
 
600
                uint32_t d2s:1;
 
601
                uint32_t d1s:1;
 
602
                uint32_t auxc:3;
 
603
                uint32_t dsi:1;
 
604
                uint32_t reserved_20_20:1;
 
605
                uint32_t pmec:1;
 
606
                uint32_t pcimiv:3;
 
607
                uint32_t ncp:8;
 
608
                uint32_t pmcid:8;
 
609
        } s;
 
610
        struct cvmx_pci_cfg58_s cn30xx;
 
611
        struct cvmx_pci_cfg58_s cn31xx;
 
612
        struct cvmx_pci_cfg58_s cn38xx;
 
613
        struct cvmx_pci_cfg58_s cn38xxp2;
 
614
        struct cvmx_pci_cfg58_s cn50xx;
 
615
        struct cvmx_pci_cfg58_s cn58xx;
 
616
        struct cvmx_pci_cfg58_s cn58xxp1;
 
617
};
 
618
 
 
619
union cvmx_pci_cfg59 {
 
620
        uint32_t u32;
 
621
        struct cvmx_pci_cfg59_s {
 
622
                uint32_t pmdia:8;
 
623
                uint32_t bpccen:1;
 
624
                uint32_t bd3h:1;
 
625
                uint32_t reserved_16_21:6;
 
626
                uint32_t pmess:1;
 
627
                uint32_t pmedsia:2;
 
628
                uint32_t pmds:4;
 
629
                uint32_t pmeens:1;
 
630
                uint32_t reserved_2_7:6;
 
631
                uint32_t ps:2;
 
632
        } s;
 
633
        struct cvmx_pci_cfg59_s cn30xx;
 
634
        struct cvmx_pci_cfg59_s cn31xx;
 
635
        struct cvmx_pci_cfg59_s cn38xx;
 
636
        struct cvmx_pci_cfg59_s cn38xxp2;
 
637
        struct cvmx_pci_cfg59_s cn50xx;
 
638
        struct cvmx_pci_cfg59_s cn58xx;
 
639
        struct cvmx_pci_cfg59_s cn58xxp1;
 
640
};
 
641
 
 
642
union cvmx_pci_cfg60 {
 
643
        uint32_t u32;
 
644
        struct cvmx_pci_cfg60_s {
 
645
                uint32_t reserved_24_31:8;
 
646
                uint32_t m64:1;
 
647
                uint32_t mme:3;
 
648
                uint32_t mmc:3;
 
649
                uint32_t msien:1;
 
650
                uint32_t ncp:8;
 
651
                uint32_t msicid:8;
 
652
        } s;
 
653
        struct cvmx_pci_cfg60_s cn30xx;
 
654
        struct cvmx_pci_cfg60_s cn31xx;
 
655
        struct cvmx_pci_cfg60_s cn38xx;
 
656
        struct cvmx_pci_cfg60_s cn38xxp2;
 
657
        struct cvmx_pci_cfg60_s cn50xx;
 
658
        struct cvmx_pci_cfg60_s cn58xx;
 
659
        struct cvmx_pci_cfg60_s cn58xxp1;
 
660
};
 
661
 
 
662
union cvmx_pci_cfg61 {
 
663
        uint32_t u32;
 
664
        struct cvmx_pci_cfg61_s {
 
665
                uint32_t msi31t2:30;
 
666
                uint32_t reserved_0_1:2;
 
667
        } s;
 
668
        struct cvmx_pci_cfg61_s cn30xx;
 
669
        struct cvmx_pci_cfg61_s cn31xx;
 
670
        struct cvmx_pci_cfg61_s cn38xx;
 
671
        struct cvmx_pci_cfg61_s cn38xxp2;
 
672
        struct cvmx_pci_cfg61_s cn50xx;
 
673
        struct cvmx_pci_cfg61_s cn58xx;
 
674
        struct cvmx_pci_cfg61_s cn58xxp1;
 
675
};
 
676
 
 
677
union cvmx_pci_cfg62 {
 
678
        uint32_t u32;
 
679
        struct cvmx_pci_cfg62_s {
 
680
                uint32_t msi:32;
 
681
        } s;
 
682
        struct cvmx_pci_cfg62_s cn30xx;
 
683
        struct cvmx_pci_cfg62_s cn31xx;
 
684
        struct cvmx_pci_cfg62_s cn38xx;
 
685
        struct cvmx_pci_cfg62_s cn38xxp2;
 
686
        struct cvmx_pci_cfg62_s cn50xx;
 
687
        struct cvmx_pci_cfg62_s cn58xx;
 
688
        struct cvmx_pci_cfg62_s cn58xxp1;
 
689
};
 
690
 
 
691
union cvmx_pci_cfg63 {
 
692
        uint32_t u32;
 
693
        struct cvmx_pci_cfg63_s {
 
694
                uint32_t reserved_16_31:16;
 
695
                uint32_t msimd:16;
 
696
        } s;
 
697
        struct cvmx_pci_cfg63_s cn30xx;
 
698
        struct cvmx_pci_cfg63_s cn31xx;
 
699
        struct cvmx_pci_cfg63_s cn38xx;
 
700
        struct cvmx_pci_cfg63_s cn38xxp2;
 
701
        struct cvmx_pci_cfg63_s cn50xx;
 
702
        struct cvmx_pci_cfg63_s cn58xx;
 
703
        struct cvmx_pci_cfg63_s cn58xxp1;
 
704
};
 
705
 
 
706
union cvmx_pci_cnt_reg {
 
707
        uint64_t u64;
 
708
        struct cvmx_pci_cnt_reg_s {
 
709
                uint64_t reserved_38_63:26;
 
710
                uint64_t hm_pcix:1;
 
711
                uint64_t hm_speed:2;
 
712
                uint64_t ap_pcix:1;
 
713
                uint64_t ap_speed:2;
 
714
                uint64_t pcicnt:32;
 
715
        } s;
 
716
        struct cvmx_pci_cnt_reg_s cn50xx;
 
717
        struct cvmx_pci_cnt_reg_s cn58xx;
 
718
        struct cvmx_pci_cnt_reg_s cn58xxp1;
 
719
};
 
720
 
 
721
union cvmx_pci_ctl_status_2 {
 
722
        uint32_t u32;
 
723
        struct cvmx_pci_ctl_status_2_s {
 
724
                uint32_t reserved_29_31:3;
 
725
                uint32_t bb1_hole:3;
 
726
                uint32_t bb1_siz:1;
 
727
                uint32_t bb_ca:1;
 
728
                uint32_t bb_es:2;
 
729
                uint32_t bb1:1;
 
730
                uint32_t bb0:1;
 
731
                uint32_t erst_n:1;
 
732
                uint32_t bar2pres:1;
 
733
                uint32_t scmtyp:1;
 
734
                uint32_t scm:1;
 
735
                uint32_t en_wfilt:1;
 
736
                uint32_t reserved_14_14:1;
 
737
                uint32_t ap_pcix:1;
 
738
                uint32_t ap_64ad:1;
 
739
                uint32_t b12_bist:1;
 
740
                uint32_t pmo_amod:1;
 
741
                uint32_t pmo_fpc:3;
 
742
                uint32_t tsr_hwm:3;
 
743
                uint32_t bar2_enb:1;
 
744
                uint32_t bar2_esx:2;
 
745
                uint32_t bar2_cax:1;
 
746
        } s;
 
747
        struct cvmx_pci_ctl_status_2_s cn30xx;
 
748
        struct cvmx_pci_ctl_status_2_cn31xx {
 
749
                uint32_t reserved_20_31:12;
 
750
                uint32_t erst_n:1;
 
751
                uint32_t bar2pres:1;
 
752
                uint32_t scmtyp:1;
 
753
                uint32_t scm:1;
 
754
                uint32_t en_wfilt:1;
 
755
                uint32_t reserved_14_14:1;
 
756
                uint32_t ap_pcix:1;
 
757
                uint32_t ap_64ad:1;
 
758
                uint32_t b12_bist:1;
 
759
                uint32_t pmo_amod:1;
 
760
                uint32_t pmo_fpc:3;
 
761
                uint32_t tsr_hwm:3;
 
762
                uint32_t bar2_enb:1;
 
763
                uint32_t bar2_esx:2;
 
764
                uint32_t bar2_cax:1;
 
765
        } cn31xx;
 
766
        struct cvmx_pci_ctl_status_2_s cn38xx;
 
767
        struct cvmx_pci_ctl_status_2_cn31xx cn38xxp2;
 
768
        struct cvmx_pci_ctl_status_2_s cn50xx;
 
769
        struct cvmx_pci_ctl_status_2_s cn58xx;
 
770
        struct cvmx_pci_ctl_status_2_s cn58xxp1;
 
771
};
 
772
 
 
773
union cvmx_pci_dbellx {
 
774
        uint32_t u32;
 
775
        struct cvmx_pci_dbellx_s {
 
776
                uint32_t reserved_16_31:16;
 
777
                uint32_t inc_val:16;
 
778
        } s;
 
779
        struct cvmx_pci_dbellx_s cn30xx;
 
780
        struct cvmx_pci_dbellx_s cn31xx;
 
781
        struct cvmx_pci_dbellx_s cn38xx;
 
782
        struct cvmx_pci_dbellx_s cn38xxp2;
 
783
        struct cvmx_pci_dbellx_s cn50xx;
 
784
        struct cvmx_pci_dbellx_s cn58xx;
 
785
        struct cvmx_pci_dbellx_s cn58xxp1;
 
786
};
 
787
 
 
788
union cvmx_pci_dma_cntx {
 
789
        uint32_t u32;
 
790
        struct cvmx_pci_dma_cntx_s {
 
791
                uint32_t dma_cnt:32;
 
792
        } s;
 
793
        struct cvmx_pci_dma_cntx_s cn30xx;
 
794
        struct cvmx_pci_dma_cntx_s cn31xx;
 
795
        struct cvmx_pci_dma_cntx_s cn38xx;
 
796
        struct cvmx_pci_dma_cntx_s cn38xxp2;
 
797
        struct cvmx_pci_dma_cntx_s cn50xx;
 
798
        struct cvmx_pci_dma_cntx_s cn58xx;
 
799
        struct cvmx_pci_dma_cntx_s cn58xxp1;
 
800
};
 
801
 
 
802
union cvmx_pci_dma_int_levx {
 
803
        uint32_t u32;
 
804
        struct cvmx_pci_dma_int_levx_s {
 
805
                uint32_t pkt_cnt:32;
 
806
        } s;
 
807
        struct cvmx_pci_dma_int_levx_s cn30xx;
 
808
        struct cvmx_pci_dma_int_levx_s cn31xx;
 
809
        struct cvmx_pci_dma_int_levx_s cn38xx;
 
810
        struct cvmx_pci_dma_int_levx_s cn38xxp2;
 
811
        struct cvmx_pci_dma_int_levx_s cn50xx;
 
812
        struct cvmx_pci_dma_int_levx_s cn58xx;
 
813
        struct cvmx_pci_dma_int_levx_s cn58xxp1;
 
814
};
 
815
 
 
816
union cvmx_pci_dma_timex {
 
817
        uint32_t u32;
 
818
        struct cvmx_pci_dma_timex_s {
 
819
                uint32_t dma_time:32;
 
820
        } s;
 
821
        struct cvmx_pci_dma_timex_s cn30xx;
 
822
        struct cvmx_pci_dma_timex_s cn31xx;
 
823
        struct cvmx_pci_dma_timex_s cn38xx;
 
824
        struct cvmx_pci_dma_timex_s cn38xxp2;
 
825
        struct cvmx_pci_dma_timex_s cn50xx;
 
826
        struct cvmx_pci_dma_timex_s cn58xx;
 
827
        struct cvmx_pci_dma_timex_s cn58xxp1;
 
828
};
 
829
 
 
830
union cvmx_pci_instr_countx {
 
831
        uint32_t u32;
 
832
        struct cvmx_pci_instr_countx_s {
 
833
                uint32_t icnt:32;
 
834
        } s;
 
835
        struct cvmx_pci_instr_countx_s cn30xx;
 
836
        struct cvmx_pci_instr_countx_s cn31xx;
 
837
        struct cvmx_pci_instr_countx_s cn38xx;
 
838
        struct cvmx_pci_instr_countx_s cn38xxp2;
 
839
        struct cvmx_pci_instr_countx_s cn50xx;
 
840
        struct cvmx_pci_instr_countx_s cn58xx;
 
841
        struct cvmx_pci_instr_countx_s cn58xxp1;
 
842
};
 
843
 
 
844
union cvmx_pci_int_enb {
 
845
        uint64_t u64;
 
846
        struct cvmx_pci_int_enb_s {
 
847
                uint64_t reserved_34_63:30;
 
848
                uint64_t ill_rd:1;
 
849
                uint64_t ill_wr:1;
 
850
                uint64_t win_wr:1;
 
851
                uint64_t dma1_fi:1;
 
852
                uint64_t dma0_fi:1;
 
853
                uint64_t idtime1:1;
 
854
                uint64_t idtime0:1;
 
855
                uint64_t idcnt1:1;
 
856
                uint64_t idcnt0:1;
 
857
                uint64_t iptime3:1;
 
858
                uint64_t iptime2:1;
 
859
                uint64_t iptime1:1;
 
860
                uint64_t iptime0:1;
 
861
                uint64_t ipcnt3:1;
 
862
                uint64_t ipcnt2:1;
 
863
                uint64_t ipcnt1:1;
 
864
                uint64_t ipcnt0:1;
 
865
                uint64_t irsl_int:1;
 
866
                uint64_t ill_rrd:1;
 
867
                uint64_t ill_rwr:1;
 
868
                uint64_t idperr:1;
 
869
                uint64_t iaperr:1;
 
870
                uint64_t iserr:1;
 
871
                uint64_t itsr_abt:1;
 
872
                uint64_t imsc_msg:1;
 
873
                uint64_t imsi_mabt:1;
 
874
                uint64_t imsi_tabt:1;
 
875
                uint64_t imsi_per:1;
 
876
                uint64_t imr_tto:1;
 
877
                uint64_t imr_abt:1;
 
878
                uint64_t itr_abt:1;
 
879
                uint64_t imr_wtto:1;
 
880
                uint64_t imr_wabt:1;
 
881
                uint64_t itr_wabt:1;
 
882
        } s;
 
883
        struct cvmx_pci_int_enb_cn30xx {
 
884
                uint64_t reserved_34_63:30;
 
885
                uint64_t ill_rd:1;
 
886
                uint64_t ill_wr:1;
 
887
                uint64_t win_wr:1;
 
888
                uint64_t dma1_fi:1;
 
889
                uint64_t dma0_fi:1;
 
890
                uint64_t idtime1:1;
 
891
                uint64_t idtime0:1;
 
892
                uint64_t idcnt1:1;
 
893
                uint64_t idcnt0:1;
 
894
                uint64_t reserved_22_24:3;
 
895
                uint64_t iptime0:1;
 
896
                uint64_t reserved_18_20:3;
 
897
                uint64_t ipcnt0:1;
 
898
                uint64_t irsl_int:1;
 
899
                uint64_t ill_rrd:1;
 
900
                uint64_t ill_rwr:1;
 
901
                uint64_t idperr:1;
 
902
                uint64_t iaperr:1;
 
903
                uint64_t iserr:1;
 
904
                uint64_t itsr_abt:1;
 
905
                uint64_t imsc_msg:1;
 
906
                uint64_t imsi_mabt:1;
 
907
                uint64_t imsi_tabt:1;
 
908
                uint64_t imsi_per:1;
 
909
                uint64_t imr_tto:1;
 
910
                uint64_t imr_abt:1;
 
911
                uint64_t itr_abt:1;
 
912
                uint64_t imr_wtto:1;
 
913
                uint64_t imr_wabt:1;
 
914
                uint64_t itr_wabt:1;
 
915
        } cn30xx;
 
916
        struct cvmx_pci_int_enb_cn31xx {
 
917
                uint64_t reserved_34_63:30;
 
918
                uint64_t ill_rd:1;
 
919
                uint64_t ill_wr:1;
 
920
                uint64_t win_wr:1;
 
921
                uint64_t dma1_fi:1;
 
922
                uint64_t dma0_fi:1;
 
923
                uint64_t idtime1:1;
 
924
                uint64_t idtime0:1;
 
925
                uint64_t idcnt1:1;
 
926
                uint64_t idcnt0:1;
 
927
                uint64_t reserved_23_24:2;
 
928
                uint64_t iptime1:1;
 
929
                uint64_t iptime0:1;
 
930
                uint64_t reserved_19_20:2;
 
931
                uint64_t ipcnt1:1;
 
932
                uint64_t ipcnt0:1;
 
933
                uint64_t irsl_int:1;
 
934
                uint64_t ill_rrd:1;
 
935
                uint64_t ill_rwr:1;
 
936
                uint64_t idperr:1;
 
937
                uint64_t iaperr:1;
 
938
                uint64_t iserr:1;
 
939
                uint64_t itsr_abt:1;
 
940
                uint64_t imsc_msg:1;
 
941
                uint64_t imsi_mabt:1;
 
942
                uint64_t imsi_tabt:1;
 
943
                uint64_t imsi_per:1;
 
944
                uint64_t imr_tto:1;
 
945
                uint64_t imr_abt:1;
 
946
                uint64_t itr_abt:1;
 
947
                uint64_t imr_wtto:1;
 
948
                uint64_t imr_wabt:1;
 
949
                uint64_t itr_wabt:1;
 
950
        } cn31xx;
 
951
        struct cvmx_pci_int_enb_s cn38xx;
 
952
        struct cvmx_pci_int_enb_s cn38xxp2;
 
953
        struct cvmx_pci_int_enb_cn31xx cn50xx;
 
954
        struct cvmx_pci_int_enb_s cn58xx;
 
955
        struct cvmx_pci_int_enb_s cn58xxp1;
 
956
};
 
957
 
 
958
union cvmx_pci_int_enb2 {
 
959
        uint64_t u64;
 
960
        struct cvmx_pci_int_enb2_s {
 
961
                uint64_t reserved_34_63:30;
 
962
                uint64_t ill_rd:1;
 
963
                uint64_t ill_wr:1;
 
964
                uint64_t win_wr:1;
 
965
                uint64_t dma1_fi:1;
 
966
                uint64_t dma0_fi:1;
 
967
                uint64_t rdtime1:1;
 
968
                uint64_t rdtime0:1;
 
969
                uint64_t rdcnt1:1;
 
970
                uint64_t rdcnt0:1;
 
971
                uint64_t rptime3:1;
 
972
                uint64_t rptime2:1;
 
973
                uint64_t rptime1:1;
 
974
                uint64_t rptime0:1;
 
975
                uint64_t rpcnt3:1;
 
976
                uint64_t rpcnt2:1;
 
977
                uint64_t rpcnt1:1;
 
978
                uint64_t rpcnt0:1;
 
979
                uint64_t rrsl_int:1;
 
980
                uint64_t ill_rrd:1;
 
981
                uint64_t ill_rwr:1;
 
982
                uint64_t rdperr:1;
 
983
                uint64_t raperr:1;
 
984
                uint64_t rserr:1;
 
985
                uint64_t rtsr_abt:1;
 
986
                uint64_t rmsc_msg:1;
 
987
                uint64_t rmsi_mabt:1;
 
988
                uint64_t rmsi_tabt:1;
 
989
                uint64_t rmsi_per:1;
 
990
                uint64_t rmr_tto:1;
 
991
                uint64_t rmr_abt:1;
 
992
                uint64_t rtr_abt:1;
 
993
                uint64_t rmr_wtto:1;
 
994
                uint64_t rmr_wabt:1;
 
995
                uint64_t rtr_wabt:1;
 
996
        } s;
 
997
        struct cvmx_pci_int_enb2_cn30xx {
 
998
                uint64_t reserved_34_63:30;
 
999
                uint64_t ill_rd:1;
 
1000
                uint64_t ill_wr:1;
 
1001
                uint64_t win_wr:1;
 
1002
                uint64_t dma1_fi:1;
 
1003
                uint64_t dma0_fi:1;
 
1004
                uint64_t rdtime1:1;
 
1005
                uint64_t rdtime0:1;
 
1006
                uint64_t rdcnt1:1;
 
1007
                uint64_t rdcnt0:1;
 
1008
                uint64_t reserved_22_24:3;
 
1009
                uint64_t rptime0:1;
 
1010
                uint64_t reserved_18_20:3;
 
1011
                uint64_t rpcnt0:1;
 
1012
                uint64_t rrsl_int:1;
 
1013
                uint64_t ill_rrd:1;
 
1014
                uint64_t ill_rwr:1;
 
1015
                uint64_t rdperr:1;
 
1016
                uint64_t raperr:1;
 
1017
                uint64_t rserr:1;
 
1018
                uint64_t rtsr_abt:1;
 
1019
                uint64_t rmsc_msg:1;
 
1020
                uint64_t rmsi_mabt:1;
 
1021
                uint64_t rmsi_tabt:1;
 
1022
                uint64_t rmsi_per:1;
 
1023
                uint64_t rmr_tto:1;
 
1024
                uint64_t rmr_abt:1;
 
1025
                uint64_t rtr_abt:1;
 
1026
                uint64_t rmr_wtto:1;
 
1027
                uint64_t rmr_wabt:1;
 
1028
                uint64_t rtr_wabt:1;
 
1029
        } cn30xx;
 
1030
        struct cvmx_pci_int_enb2_cn31xx {
 
1031
                uint64_t reserved_34_63:30;
 
1032
                uint64_t ill_rd:1;
 
1033
                uint64_t ill_wr:1;
 
1034
                uint64_t win_wr:1;
 
1035
                uint64_t dma1_fi:1;
 
1036
                uint64_t dma0_fi:1;
 
1037
                uint64_t rdtime1:1;
 
1038
                uint64_t rdtime0:1;
 
1039
                uint64_t rdcnt1:1;
 
1040
                uint64_t rdcnt0:1;
 
1041
                uint64_t reserved_23_24:2;
 
1042
                uint64_t rptime1:1;
 
1043
                uint64_t rptime0:1;
 
1044
                uint64_t reserved_19_20:2;
 
1045
                uint64_t rpcnt1:1;
 
1046
                uint64_t rpcnt0:1;
 
1047
                uint64_t rrsl_int:1;
 
1048
                uint64_t ill_rrd:1;
 
1049
                uint64_t ill_rwr:1;
 
1050
                uint64_t rdperr:1;
 
1051
                uint64_t raperr:1;
 
1052
                uint64_t rserr:1;
 
1053
                uint64_t rtsr_abt:1;
 
1054
                uint64_t rmsc_msg:1;
 
1055
                uint64_t rmsi_mabt:1;
 
1056
                uint64_t rmsi_tabt:1;
 
1057
                uint64_t rmsi_per:1;
 
1058
                uint64_t rmr_tto:1;
 
1059
                uint64_t rmr_abt:1;
 
1060
                uint64_t rtr_abt:1;
 
1061
                uint64_t rmr_wtto:1;
 
1062
                uint64_t rmr_wabt:1;
 
1063
                uint64_t rtr_wabt:1;
 
1064
        } cn31xx;
 
1065
        struct cvmx_pci_int_enb2_s cn38xx;
 
1066
        struct cvmx_pci_int_enb2_s cn38xxp2;
 
1067
        struct cvmx_pci_int_enb2_cn31xx cn50xx;
 
1068
        struct cvmx_pci_int_enb2_s cn58xx;
 
1069
        struct cvmx_pci_int_enb2_s cn58xxp1;
 
1070
};
 
1071
 
 
1072
union cvmx_pci_int_sum {
 
1073
        uint64_t u64;
 
1074
        struct cvmx_pci_int_sum_s {
 
1075
                uint64_t reserved_34_63:30;
 
1076
                uint64_t ill_rd:1;
 
1077
                uint64_t ill_wr:1;
 
1078
                uint64_t win_wr:1;
 
1079
                uint64_t dma1_fi:1;
 
1080
                uint64_t dma0_fi:1;
 
1081
                uint64_t dtime1:1;
 
1082
                uint64_t dtime0:1;
 
1083
                uint64_t dcnt1:1;
 
1084
                uint64_t dcnt0:1;
 
1085
                uint64_t ptime3:1;
 
1086
                uint64_t ptime2:1;
 
1087
                uint64_t ptime1:1;
 
1088
                uint64_t ptime0:1;
 
1089
                uint64_t pcnt3:1;
 
1090
                uint64_t pcnt2:1;
 
1091
                uint64_t pcnt1:1;
 
1092
                uint64_t pcnt0:1;
 
1093
                uint64_t rsl_int:1;
 
1094
                uint64_t ill_rrd:1;
 
1095
                uint64_t ill_rwr:1;
 
1096
                uint64_t dperr:1;
 
1097
                uint64_t aperr:1;
 
1098
                uint64_t serr:1;
 
1099
                uint64_t tsr_abt:1;
 
1100
                uint64_t msc_msg:1;
 
1101
                uint64_t msi_mabt:1;
 
1102
                uint64_t msi_tabt:1;
 
1103
                uint64_t msi_per:1;
 
1104
                uint64_t mr_tto:1;
 
1105
                uint64_t mr_abt:1;
 
1106
                uint64_t tr_abt:1;
 
1107
                uint64_t mr_wtto:1;
 
1108
                uint64_t mr_wabt:1;
 
1109
                uint64_t tr_wabt:1;
 
1110
        } s;
 
1111
        struct cvmx_pci_int_sum_cn30xx {
 
1112
                uint64_t reserved_34_63:30;
 
1113
                uint64_t ill_rd:1;
 
1114
                uint64_t ill_wr:1;
 
1115
                uint64_t win_wr:1;
 
1116
                uint64_t dma1_fi:1;
 
1117
                uint64_t dma0_fi:1;
 
1118
                uint64_t dtime1:1;
 
1119
                uint64_t dtime0:1;
 
1120
                uint64_t dcnt1:1;
 
1121
                uint64_t dcnt0:1;
 
1122
                uint64_t reserved_22_24:3;
 
1123
                uint64_t ptime0:1;
 
1124
                uint64_t reserved_18_20:3;
 
1125
                uint64_t pcnt0:1;
 
1126
                uint64_t rsl_int:1;
 
1127
                uint64_t ill_rrd:1;
 
1128
                uint64_t ill_rwr:1;
 
1129
                uint64_t dperr:1;
 
1130
                uint64_t aperr:1;
 
1131
                uint64_t serr:1;
 
1132
                uint64_t tsr_abt:1;
 
1133
                uint64_t msc_msg:1;
 
1134
                uint64_t msi_mabt:1;
 
1135
                uint64_t msi_tabt:1;
 
1136
                uint64_t msi_per:1;
 
1137
                uint64_t mr_tto:1;
 
1138
                uint64_t mr_abt:1;
 
1139
                uint64_t tr_abt:1;
 
1140
                uint64_t mr_wtto:1;
 
1141
                uint64_t mr_wabt:1;
 
1142
                uint64_t tr_wabt:1;
 
1143
        } cn30xx;
 
1144
        struct cvmx_pci_int_sum_cn31xx {
 
1145
                uint64_t reserved_34_63:30;
 
1146
                uint64_t ill_rd:1;
 
1147
                uint64_t ill_wr:1;
 
1148
                uint64_t win_wr:1;
 
1149
                uint64_t dma1_fi:1;
 
1150
                uint64_t dma0_fi:1;
 
1151
                uint64_t dtime1:1;
 
1152
                uint64_t dtime0:1;
 
1153
                uint64_t dcnt1:1;
 
1154
                uint64_t dcnt0:1;
 
1155
                uint64_t reserved_23_24:2;
 
1156
                uint64_t ptime1:1;
 
1157
                uint64_t ptime0:1;
 
1158
                uint64_t reserved_19_20:2;
 
1159
                uint64_t pcnt1:1;
 
1160
                uint64_t pcnt0:1;
 
1161
                uint64_t rsl_int:1;
 
1162
                uint64_t ill_rrd:1;
 
1163
                uint64_t ill_rwr:1;
 
1164
                uint64_t dperr:1;
 
1165
                uint64_t aperr:1;
 
1166
                uint64_t serr:1;
 
1167
                uint64_t tsr_abt:1;
 
1168
                uint64_t msc_msg:1;
 
1169
                uint64_t msi_mabt:1;
 
1170
                uint64_t msi_tabt:1;
 
1171
                uint64_t msi_per:1;
 
1172
                uint64_t mr_tto:1;
 
1173
                uint64_t mr_abt:1;
 
1174
                uint64_t tr_abt:1;
 
1175
                uint64_t mr_wtto:1;
 
1176
                uint64_t mr_wabt:1;
 
1177
                uint64_t tr_wabt:1;
 
1178
        } cn31xx;
 
1179
        struct cvmx_pci_int_sum_s cn38xx;
 
1180
        struct cvmx_pci_int_sum_s cn38xxp2;
 
1181
        struct cvmx_pci_int_sum_cn31xx cn50xx;
 
1182
        struct cvmx_pci_int_sum_s cn58xx;
 
1183
        struct cvmx_pci_int_sum_s cn58xxp1;
 
1184
};
 
1185
 
 
1186
union cvmx_pci_int_sum2 {
 
1187
        uint64_t u64;
 
1188
        struct cvmx_pci_int_sum2_s {
 
1189
                uint64_t reserved_34_63:30;
 
1190
                uint64_t ill_rd:1;
 
1191
                uint64_t ill_wr:1;
 
1192
                uint64_t win_wr:1;
 
1193
                uint64_t dma1_fi:1;
 
1194
                uint64_t dma0_fi:1;
 
1195
                uint64_t dtime1:1;
 
1196
                uint64_t dtime0:1;
 
1197
                uint64_t dcnt1:1;
 
1198
                uint64_t dcnt0:1;
 
1199
                uint64_t ptime3:1;
 
1200
                uint64_t ptime2:1;
 
1201
                uint64_t ptime1:1;
 
1202
                uint64_t ptime0:1;
 
1203
                uint64_t pcnt3:1;
 
1204
                uint64_t pcnt2:1;
 
1205
                uint64_t pcnt1:1;
 
1206
                uint64_t pcnt0:1;
 
1207
                uint64_t rsl_int:1;
 
1208
                uint64_t ill_rrd:1;
 
1209
                uint64_t ill_rwr:1;
 
1210
                uint64_t dperr:1;
 
1211
                uint64_t aperr:1;
 
1212
                uint64_t serr:1;
 
1213
                uint64_t tsr_abt:1;
 
1214
                uint64_t msc_msg:1;
 
1215
                uint64_t msi_mabt:1;
 
1216
                uint64_t msi_tabt:1;
 
1217
                uint64_t msi_per:1;
 
1218
                uint64_t mr_tto:1;
 
1219
                uint64_t mr_abt:1;
 
1220
                uint64_t tr_abt:1;
 
1221
                uint64_t mr_wtto:1;
 
1222
                uint64_t mr_wabt:1;
 
1223
                uint64_t tr_wabt:1;
 
1224
        } s;
 
1225
        struct cvmx_pci_int_sum2_cn30xx {
 
1226
                uint64_t reserved_34_63:30;
 
1227
                uint64_t ill_rd:1;
 
1228
                uint64_t ill_wr:1;
 
1229
                uint64_t win_wr:1;
 
1230
                uint64_t dma1_fi:1;
 
1231
                uint64_t dma0_fi:1;
 
1232
                uint64_t dtime1:1;
 
1233
                uint64_t dtime0:1;
 
1234
                uint64_t dcnt1:1;
 
1235
                uint64_t dcnt0:1;
 
1236
                uint64_t reserved_22_24:3;
 
1237
                uint64_t ptime0:1;
 
1238
                uint64_t reserved_18_20:3;
 
1239
                uint64_t pcnt0:1;
 
1240
                uint64_t rsl_int:1;
 
1241
                uint64_t ill_rrd:1;
 
1242
                uint64_t ill_rwr:1;
 
1243
                uint64_t dperr:1;
 
1244
                uint64_t aperr:1;
 
1245
                uint64_t serr:1;
 
1246
                uint64_t tsr_abt:1;
 
1247
                uint64_t msc_msg:1;
 
1248
                uint64_t msi_mabt:1;
 
1249
                uint64_t msi_tabt:1;
 
1250
                uint64_t msi_per:1;
 
1251
                uint64_t mr_tto:1;
 
1252
                uint64_t mr_abt:1;
 
1253
                uint64_t tr_abt:1;
 
1254
                uint64_t mr_wtto:1;
 
1255
                uint64_t mr_wabt:1;
 
1256
                uint64_t tr_wabt:1;
 
1257
        } cn30xx;
 
1258
        struct cvmx_pci_int_sum2_cn31xx {
 
1259
                uint64_t reserved_34_63:30;
 
1260
                uint64_t ill_rd:1;
 
1261
                uint64_t ill_wr:1;
 
1262
                uint64_t win_wr:1;
 
1263
                uint64_t dma1_fi:1;
 
1264
                uint64_t dma0_fi:1;
 
1265
                uint64_t dtime1:1;
 
1266
                uint64_t dtime0:1;
 
1267
                uint64_t dcnt1:1;
 
1268
                uint64_t dcnt0:1;
 
1269
                uint64_t reserved_23_24:2;
 
1270
                uint64_t ptime1:1;
 
1271
                uint64_t ptime0:1;
 
1272
                uint64_t reserved_19_20:2;
 
1273
                uint64_t pcnt1:1;
 
1274
                uint64_t pcnt0:1;
 
1275
                uint64_t rsl_int:1;
 
1276
                uint64_t ill_rrd:1;
 
1277
                uint64_t ill_rwr:1;
 
1278
                uint64_t dperr:1;
 
1279
                uint64_t aperr:1;
 
1280
                uint64_t serr:1;
 
1281
                uint64_t tsr_abt:1;
 
1282
                uint64_t msc_msg:1;
 
1283
                uint64_t msi_mabt:1;
 
1284
                uint64_t msi_tabt:1;
 
1285
                uint64_t msi_per:1;
 
1286
                uint64_t mr_tto:1;
 
1287
                uint64_t mr_abt:1;
 
1288
                uint64_t tr_abt:1;
 
1289
                uint64_t mr_wtto:1;
 
1290
                uint64_t mr_wabt:1;
 
1291
                uint64_t tr_wabt:1;
 
1292
        } cn31xx;
 
1293
        struct cvmx_pci_int_sum2_s cn38xx;
 
1294
        struct cvmx_pci_int_sum2_s cn38xxp2;
 
1295
        struct cvmx_pci_int_sum2_cn31xx cn50xx;
 
1296
        struct cvmx_pci_int_sum2_s cn58xx;
 
1297
        struct cvmx_pci_int_sum2_s cn58xxp1;
 
1298
};
 
1299
 
 
1300
union cvmx_pci_msi_rcv {
 
1301
        uint32_t u32;
 
1302
        struct cvmx_pci_msi_rcv_s {
 
1303
                uint32_t reserved_6_31:26;
 
1304
                uint32_t intr:6;
 
1305
        } s;
 
1306
        struct cvmx_pci_msi_rcv_s cn30xx;
 
1307
        struct cvmx_pci_msi_rcv_s cn31xx;
 
1308
        struct cvmx_pci_msi_rcv_s cn38xx;
 
1309
        struct cvmx_pci_msi_rcv_s cn38xxp2;
 
1310
        struct cvmx_pci_msi_rcv_s cn50xx;
 
1311
        struct cvmx_pci_msi_rcv_s cn58xx;
 
1312
        struct cvmx_pci_msi_rcv_s cn58xxp1;
 
1313
};
 
1314
 
 
1315
union cvmx_pci_pkt_creditsx {
 
1316
        uint32_t u32;
 
1317
        struct cvmx_pci_pkt_creditsx_s {
 
1318
                uint32_t pkt_cnt:16;
 
1319
                uint32_t ptr_cnt:16;
 
1320
        } s;
 
1321
        struct cvmx_pci_pkt_creditsx_s cn30xx;
 
1322
        struct cvmx_pci_pkt_creditsx_s cn31xx;
 
1323
        struct cvmx_pci_pkt_creditsx_s cn38xx;
 
1324
        struct cvmx_pci_pkt_creditsx_s cn38xxp2;
 
1325
        struct cvmx_pci_pkt_creditsx_s cn50xx;
 
1326
        struct cvmx_pci_pkt_creditsx_s cn58xx;
 
1327
        struct cvmx_pci_pkt_creditsx_s cn58xxp1;
 
1328
};
 
1329
 
 
1330
union cvmx_pci_pkts_sentx {
 
1331
        uint32_t u32;
 
1332
        struct cvmx_pci_pkts_sentx_s {
 
1333
                uint32_t pkt_cnt:32;
 
1334
        } s;
 
1335
        struct cvmx_pci_pkts_sentx_s cn30xx;
 
1336
        struct cvmx_pci_pkts_sentx_s cn31xx;
 
1337
        struct cvmx_pci_pkts_sentx_s cn38xx;
 
1338
        struct cvmx_pci_pkts_sentx_s cn38xxp2;
 
1339
        struct cvmx_pci_pkts_sentx_s cn50xx;
 
1340
        struct cvmx_pci_pkts_sentx_s cn58xx;
 
1341
        struct cvmx_pci_pkts_sentx_s cn58xxp1;
 
1342
};
 
1343
 
 
1344
union cvmx_pci_pkts_sent_int_levx {
 
1345
        uint32_t u32;
 
1346
        struct cvmx_pci_pkts_sent_int_levx_s {
 
1347
                uint32_t pkt_cnt:32;
 
1348
        } s;
 
1349
        struct cvmx_pci_pkts_sent_int_levx_s cn30xx;
 
1350
        struct cvmx_pci_pkts_sent_int_levx_s cn31xx;
 
1351
        struct cvmx_pci_pkts_sent_int_levx_s cn38xx;
 
1352
        struct cvmx_pci_pkts_sent_int_levx_s cn38xxp2;
 
1353
        struct cvmx_pci_pkts_sent_int_levx_s cn50xx;
 
1354
        struct cvmx_pci_pkts_sent_int_levx_s cn58xx;
 
1355
        struct cvmx_pci_pkts_sent_int_levx_s cn58xxp1;
 
1356
};
 
1357
 
 
1358
union cvmx_pci_pkts_sent_timex {
 
1359
        uint32_t u32;
 
1360
        struct cvmx_pci_pkts_sent_timex_s {
 
1361
                uint32_t pkt_time:32;
 
1362
        } s;
 
1363
        struct cvmx_pci_pkts_sent_timex_s cn30xx;
 
1364
        struct cvmx_pci_pkts_sent_timex_s cn31xx;
 
1365
        struct cvmx_pci_pkts_sent_timex_s cn38xx;
 
1366
        struct cvmx_pci_pkts_sent_timex_s cn38xxp2;
 
1367
        struct cvmx_pci_pkts_sent_timex_s cn50xx;
 
1368
        struct cvmx_pci_pkts_sent_timex_s cn58xx;
 
1369
        struct cvmx_pci_pkts_sent_timex_s cn58xxp1;
 
1370
};
 
1371
 
 
1372
union cvmx_pci_read_cmd_6 {
 
1373
        uint32_t u32;
 
1374
        struct cvmx_pci_read_cmd_6_s {
 
1375
                uint32_t reserved_9_31:23;
 
1376
                uint32_t min_data:6;
 
1377
                uint32_t prefetch:3;
 
1378
        } s;
 
1379
        struct cvmx_pci_read_cmd_6_s cn30xx;
 
1380
        struct cvmx_pci_read_cmd_6_s cn31xx;
 
1381
        struct cvmx_pci_read_cmd_6_s cn38xx;
 
1382
        struct cvmx_pci_read_cmd_6_s cn38xxp2;
 
1383
        struct cvmx_pci_read_cmd_6_s cn50xx;
 
1384
        struct cvmx_pci_read_cmd_6_s cn58xx;
 
1385
        struct cvmx_pci_read_cmd_6_s cn58xxp1;
 
1386
};
 
1387
 
 
1388
union cvmx_pci_read_cmd_c {
 
1389
        uint32_t u32;
 
1390
        struct cvmx_pci_read_cmd_c_s {
 
1391
                uint32_t reserved_9_31:23;
 
1392
                uint32_t min_data:6;
 
1393
                uint32_t prefetch:3;
 
1394
        } s;
 
1395
        struct cvmx_pci_read_cmd_c_s cn30xx;
 
1396
        struct cvmx_pci_read_cmd_c_s cn31xx;
 
1397
        struct cvmx_pci_read_cmd_c_s cn38xx;
 
1398
        struct cvmx_pci_read_cmd_c_s cn38xxp2;
 
1399
        struct cvmx_pci_read_cmd_c_s cn50xx;
 
1400
        struct cvmx_pci_read_cmd_c_s cn58xx;
 
1401
        struct cvmx_pci_read_cmd_c_s cn58xxp1;
 
1402
};
 
1403
 
 
1404
union cvmx_pci_read_cmd_e {
 
1405
        uint32_t u32;
 
1406
        struct cvmx_pci_read_cmd_e_s {
 
1407
                uint32_t reserved_9_31:23;
 
1408
                uint32_t min_data:6;
 
1409
                uint32_t prefetch:3;
 
1410
        } s;
 
1411
        struct cvmx_pci_read_cmd_e_s cn30xx;
 
1412
        struct cvmx_pci_read_cmd_e_s cn31xx;
 
1413
        struct cvmx_pci_read_cmd_e_s cn38xx;
 
1414
        struct cvmx_pci_read_cmd_e_s cn38xxp2;
 
1415
        struct cvmx_pci_read_cmd_e_s cn50xx;
 
1416
        struct cvmx_pci_read_cmd_e_s cn58xx;
 
1417
        struct cvmx_pci_read_cmd_e_s cn58xxp1;
 
1418
};
 
1419
 
 
1420
union cvmx_pci_read_timeout {
 
1421
        uint64_t u64;
 
1422
        struct cvmx_pci_read_timeout_s {
 
1423
                uint64_t reserved_32_63:32;
 
1424
                uint64_t enb:1;
 
1425
                uint64_t cnt:31;
 
1426
        } s;
 
1427
        struct cvmx_pci_read_timeout_s cn30xx;
 
1428
        struct cvmx_pci_read_timeout_s cn31xx;
 
1429
        struct cvmx_pci_read_timeout_s cn38xx;
 
1430
        struct cvmx_pci_read_timeout_s cn38xxp2;
 
1431
        struct cvmx_pci_read_timeout_s cn50xx;
 
1432
        struct cvmx_pci_read_timeout_s cn58xx;
 
1433
        struct cvmx_pci_read_timeout_s cn58xxp1;
 
1434
};
 
1435
 
 
1436
union cvmx_pci_scm_reg {
 
1437
        uint64_t u64;
 
1438
        struct cvmx_pci_scm_reg_s {
 
1439
                uint64_t reserved_32_63:32;
 
1440
                uint64_t scm:32;
 
1441
        } s;
 
1442
        struct cvmx_pci_scm_reg_s cn30xx;
 
1443
        struct cvmx_pci_scm_reg_s cn31xx;
 
1444
        struct cvmx_pci_scm_reg_s cn38xx;
 
1445
        struct cvmx_pci_scm_reg_s cn38xxp2;
 
1446
        struct cvmx_pci_scm_reg_s cn50xx;
 
1447
        struct cvmx_pci_scm_reg_s cn58xx;
 
1448
        struct cvmx_pci_scm_reg_s cn58xxp1;
 
1449
};
 
1450
 
 
1451
union cvmx_pci_tsr_reg {
 
1452
        uint64_t u64;
 
1453
        struct cvmx_pci_tsr_reg_s {
 
1454
                uint64_t reserved_36_63:28;
 
1455
                uint64_t tsr:36;
 
1456
        } s;
 
1457
        struct cvmx_pci_tsr_reg_s cn30xx;
 
1458
        struct cvmx_pci_tsr_reg_s cn31xx;
 
1459
        struct cvmx_pci_tsr_reg_s cn38xx;
 
1460
        struct cvmx_pci_tsr_reg_s cn38xxp2;
 
1461
        struct cvmx_pci_tsr_reg_s cn50xx;
 
1462
        struct cvmx_pci_tsr_reg_s cn58xx;
 
1463
        struct cvmx_pci_tsr_reg_s cn58xxp1;
 
1464
};
 
1465
 
 
1466
union cvmx_pci_win_rd_addr {
 
1467
        uint64_t u64;
 
1468
        struct cvmx_pci_win_rd_addr_s {
 
1469
                uint64_t reserved_49_63:15;
 
1470
                uint64_t iobit:1;
 
1471
                uint64_t reserved_0_47:48;
 
1472
        } s;
 
1473
        struct cvmx_pci_win_rd_addr_cn30xx {
 
1474
                uint64_t reserved_49_63:15;
 
1475
                uint64_t iobit:1;
 
1476
                uint64_t rd_addr:46;
 
1477
                uint64_t reserved_0_1:2;
 
1478
        } cn30xx;
 
1479
        struct cvmx_pci_win_rd_addr_cn30xx cn31xx;
 
1480
        struct cvmx_pci_win_rd_addr_cn38xx {
 
1481
                uint64_t reserved_49_63:15;
 
1482
                uint64_t iobit:1;
 
1483
                uint64_t rd_addr:45;
 
1484
                uint64_t reserved_0_2:3;
 
1485
        } cn38xx;
 
1486
        struct cvmx_pci_win_rd_addr_cn38xx cn38xxp2;
 
1487
        struct cvmx_pci_win_rd_addr_cn30xx cn50xx;
 
1488
        struct cvmx_pci_win_rd_addr_cn38xx cn58xx;
 
1489
        struct cvmx_pci_win_rd_addr_cn38xx cn58xxp1;
 
1490
};
 
1491
 
 
1492
union cvmx_pci_win_rd_data {
 
1493
        uint64_t u64;
 
1494
        struct cvmx_pci_win_rd_data_s {
 
1495
                uint64_t rd_data:64;
 
1496
        } s;
 
1497
        struct cvmx_pci_win_rd_data_s cn30xx;
 
1498
        struct cvmx_pci_win_rd_data_s cn31xx;
 
1499
        struct cvmx_pci_win_rd_data_s cn38xx;
 
1500
        struct cvmx_pci_win_rd_data_s cn38xxp2;
 
1501
        struct cvmx_pci_win_rd_data_s cn50xx;
 
1502
        struct cvmx_pci_win_rd_data_s cn58xx;
 
1503
        struct cvmx_pci_win_rd_data_s cn58xxp1;
 
1504
};
 
1505
 
 
1506
union cvmx_pci_win_wr_addr {
 
1507
        uint64_t u64;
 
1508
        struct cvmx_pci_win_wr_addr_s {
 
1509
                uint64_t reserved_49_63:15;
 
1510
                uint64_t iobit:1;
 
1511
                uint64_t wr_addr:45;
 
1512
                uint64_t reserved_0_2:3;
 
1513
        } s;
 
1514
        struct cvmx_pci_win_wr_addr_s cn30xx;
 
1515
        struct cvmx_pci_win_wr_addr_s cn31xx;
 
1516
        struct cvmx_pci_win_wr_addr_s cn38xx;
 
1517
        struct cvmx_pci_win_wr_addr_s cn38xxp2;
 
1518
        struct cvmx_pci_win_wr_addr_s cn50xx;
 
1519
        struct cvmx_pci_win_wr_addr_s cn58xx;
 
1520
        struct cvmx_pci_win_wr_addr_s cn58xxp1;
 
1521
};
 
1522
 
 
1523
union cvmx_pci_win_wr_data {
 
1524
        uint64_t u64;
 
1525
        struct cvmx_pci_win_wr_data_s {
 
1526
                uint64_t wr_data:64;
 
1527
        } s;
 
1528
        struct cvmx_pci_win_wr_data_s cn30xx;
 
1529
        struct cvmx_pci_win_wr_data_s cn31xx;
 
1530
        struct cvmx_pci_win_wr_data_s cn38xx;
 
1531
        struct cvmx_pci_win_wr_data_s cn38xxp2;
 
1532
        struct cvmx_pci_win_wr_data_s cn50xx;
 
1533
        struct cvmx_pci_win_wr_data_s cn58xx;
 
1534
        struct cvmx_pci_win_wr_data_s cn58xxp1;
 
1535
};
 
1536
 
 
1537
union cvmx_pci_win_wr_mask {
 
1538
        uint64_t u64;
 
1539
        struct cvmx_pci_win_wr_mask_s {
 
1540
                uint64_t reserved_8_63:56;
 
1541
                uint64_t wr_mask:8;
 
1542
        } s;
 
1543
        struct cvmx_pci_win_wr_mask_s cn30xx;
 
1544
        struct cvmx_pci_win_wr_mask_s cn31xx;
 
1545
        struct cvmx_pci_win_wr_mask_s cn38xx;
 
1546
        struct cvmx_pci_win_wr_mask_s cn38xxp2;
 
1547
        struct cvmx_pci_win_wr_mask_s cn50xx;
 
1548
        struct cvmx_pci_win_wr_mask_s cn58xx;
 
1549
        struct cvmx_pci_win_wr_mask_s cn58xxp1;
 
1550
};
 
1551
 
 
1552
#endif