Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
cvmx-pci-defs.h
Go to the documentation of this file.
1 /***********************license start***************
2  * Author: Cavium Networks
3  *
4  * Contact: [email protected]
5  * This file is part of the OCTEON SDK
6  *
7  * Copyright (c) 2003-2012 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 
120 #ifdef __BIG_ENDIAN_BITFIELD
122  uint32_t addr_idx:14;
123  uint32_t ca:1;
124  uint32_t end_swp:2;
125  uint32_t addr_v:1;
126 #else
132 #endif
133  } s;
141 };
142 
146 #ifdef __BIG_ENDIAN_BITFIELD
148  uint64_t rsp_bs:1;
149  uint64_t dma0_bs:1;
150  uint64_t cmd0_bs:1;
151  uint64_t cmd_bs:1;
152  uint64_t csr2p_bs:1;
153  uint64_t csrr_bs:1;
154  uint64_t rsp2p_bs:1;
155  uint64_t csr2n_bs:1;
156  uint64_t dat2n_bs:1;
157  uint64_t dbg2n_bs:1;
158 #else
170 #endif
171  } s;
173 };
174 
178 #ifdef __BIG_ENDIAN_BITFIELD
179  uint32_t devid:16;
180  uint32_t vendid:16;
181 #else
184 #endif
185  } s;
193 };
194 
198 #ifdef __BIG_ENDIAN_BITFIELD
199  uint32_t dpe:1;
200  uint32_t sse:1;
201  uint32_t rma:1;
202  uint32_t rta:1;
203  uint32_t sta:1;
204  uint32_t devt:2;
205  uint32_t mdpe:1;
206  uint32_t fbb:1;
208  uint32_t m66:1;
209  uint32_t cle:1;
210  uint32_t i_stat:1;
212  uint32_t i_dis:1;
213  uint32_t fbbe:1;
214  uint32_t see:1;
215  uint32_t ads:1;
216  uint32_t pee:1;
217  uint32_t vps:1;
218  uint32_t mwice:1;
219  uint32_t scse:1;
220  uint32_t me:1;
221  uint32_t msae:1;
222  uint32_t isae:1;
223 #else
248 #endif
249  } s;
257 };
258 
262 #ifdef __BIG_ENDIAN_BITFIELD
263  uint32_t cc:24;
264  uint32_t rid:8;
265 #else
268 #endif
269  } s;
277 };
278 
282 #ifdef __BIG_ENDIAN_BITFIELD
283  uint32_t bcap:1;
284  uint32_t brb:1;
286  uint32_t bcod:4;
287  uint32_t ht:8;
288  uint32_t lt:8;
289  uint32_t cls:8;
290 #else
298 #endif
299  } s;
307 };
308 
312 #ifdef __BIG_ENDIAN_BITFIELD
313  uint32_t lbase:20;
314  uint32_t lbasez:8;
315  uint32_t pf:1;
316  uint32_t typ:2;
317  uint32_t mspc:1;
318 #else
324 #endif
325  } s;
333 };
334 
338 #ifdef __BIG_ENDIAN_BITFIELD
339  uint32_t hbase:32;
340 #else
342 #endif
343  } s;
351 };
352 
356 #ifdef __BIG_ENDIAN_BITFIELD
357  uint32_t lbase:5;
358  uint32_t lbasez:23;
359  uint32_t pf:1;
360  uint32_t typ:2;
361  uint32_t mspc:1;
362 #else
368 #endif
369  } s;
377 };
378 
382 #ifdef __BIG_ENDIAN_BITFIELD
383  uint32_t hbase:32;
384 #else
386 #endif
387  } s;
395 };
396 
400 #ifdef __BIG_ENDIAN_BITFIELD
401  uint32_t lbasez:28;
402  uint32_t pf:1;
403  uint32_t typ:2;
404  uint32_t mspc:1;
405 #else
410 #endif
411  } s;
419 };
420 
424 #ifdef __BIG_ENDIAN_BITFIELD
425  uint32_t hbase:25;
426  uint32_t hbasez:7;
427 #else
430 #endif
431  } s;
439 };
440 
444 #ifdef __BIG_ENDIAN_BITFIELD
445  uint32_t cisp:32;
446 #else
448 #endif
449  } s;
457 };
458 
462 #ifdef __BIG_ENDIAN_BITFIELD
463  uint32_t ssid:16;
464  uint32_t ssvid:16;
465 #else
468 #endif
469  } s;
477 };
478 
482 #ifdef __BIG_ENDIAN_BITFIELD
483  uint32_t erbar:16;
484  uint32_t erbarz:5;
486  uint32_t erbar_en:1;
487 #else
492 #endif
493  } s;
501 };
502 
506 #ifdef __BIG_ENDIAN_BITFIELD
508  uint32_t cp:8;
509 #else
512 #endif
513  } s;
521 };
522 
526 #ifdef __BIG_ENDIAN_BITFIELD
527  uint32_t ml:8;
528  uint32_t mg:8;
529  uint32_t inta:8;
530  uint32_t il:8;
531 #else
536 #endif
537  } s;
545 };
546 
550 #ifdef __BIG_ENDIAN_BITFIELD
551  uint32_t trdnpr:1;
552  uint32_t trdard:1;
553  uint32_t rdsati:1;
554  uint32_t trdrs:1;
555  uint32_t trtae:1;
556  uint32_t twsei:1;
557  uint32_t twsen:1;
558  uint32_t twtae:1;
559  uint32_t tmae:1;
560  uint32_t tslte:3;
561  uint32_t tilt:4;
562  uint32_t pbe:12;
563  uint32_t dppmr:1;
565  uint32_t tswc:1;
566  uint32_t mltd:1;
567 #else
584 #endif
585  } s;
593 };
594 
598 #ifdef __BIG_ENDIAN_BITFIELD
599  uint32_t tscme:32;
600 #else
602 #endif
603  } s;
611 };
612 
616 #ifdef __BIG_ENDIAN_BITFIELD
617  uint32_t tdsrps:32;
618 #else
620 #endif
621  } s;
629 };
630 
634 #ifdef __BIG_ENDIAN_BITFIELD
635  uint32_t mrbcm:1;
636  uint32_t mrbci:1;
637  uint32_t mdwe:1;
638  uint32_t mdre:1;
639  uint32_t mdrimc:1;
640  uint32_t mdrrmc:3;
641  uint32_t tmes:8;
642  uint32_t teci:1;
643  uint32_t tmei:1;
644  uint32_t tmse:1;
645  uint32_t tmdpes:1;
646  uint32_t tmapes:1;
648  uint32_t tibcd:1;
649  uint32_t tibde:1;
651  uint32_t tidomc:1;
652  uint32_t tdomc:5;
653 #else
672 #endif
673  } s;
681 };
682 
686 #ifdef __BIG_ENDIAN_BITFIELD
687  uint32_t mdsp:32;
688 #else
690 #endif
691  } s;
699 };
700 
704 #ifdef __BIG_ENDIAN_BITFIELD
705  uint32_t scmre:32;
706 #else
708 #endif
709  } s;
717 };
718 
722 #ifdef __BIG_ENDIAN_BITFIELD
723  uint32_t mac:7;
725  uint32_t flush:1;
726  uint32_t mra:1;
727  uint32_t mtta:1;
728  uint32_t mrv:8;
729  uint32_t mttv:8;
730 #else
738 #endif
739  } s;
747 };
748 
752 #ifdef __BIG_ENDIAN_BITFIELD
754  uint32_t most:3;
755  uint32_t mmbc:2;
756  uint32_t roe:1;
757  uint32_t dpere:1;
758  uint32_t ncp:8;
759  uint32_t pxcid:8;
760 #else
768 #endif
769  } s;
777 };
778 
782 #ifdef __BIG_ENDIAN_BITFIELD
784  uint32_t scemr:1;
785  uint32_t mcrsd:3;
786  uint32_t mostd:3;
787  uint32_t mmrbcd:2;
788  uint32_t dc:1;
789  uint32_t usc:1;
790  uint32_t scd:1;
791  uint32_t m133:1;
792  uint32_t w64:1;
793  uint32_t bn:8;
794  uint32_t dn:5;
795  uint32_t fn:3;
796 #else
810 #endif
811  } s;
819 };
820 
824 #ifdef __BIG_ENDIAN_BITFIELD
825  uint32_t pmes:5;
826  uint32_t d2s:1;
827  uint32_t d1s:1;
828  uint32_t auxc:3;
829  uint32_t dsi:1;
831  uint32_t pmec:1;
832  uint32_t pcimiv:3;
833  uint32_t ncp:8;
834  uint32_t pmcid:8;
835 #else
846 #endif
847  } s;
855 };
856 
860 #ifdef __BIG_ENDIAN_BITFIELD
861  uint32_t pmdia:8;
862  uint32_t bpccen:1;
863  uint32_t bd3h:1;
865  uint32_t pmess:1;
866  uint32_t pmedsia:2;
867  uint32_t pmds:4;
868  uint32_t pmeens:1;
870  uint32_t ps:2;
871 #else
882 #endif
883  } s;
891 };
892 
896 #ifdef __BIG_ENDIAN_BITFIELD
898  uint32_t m64:1;
899  uint32_t mme:3;
900  uint32_t mmc:3;
901  uint32_t msien:1;
902  uint32_t ncp:8;
903  uint32_t msicid:8;
904 #else
912 #endif
913  } s;
921 };
922 
926 #ifdef __BIG_ENDIAN_BITFIELD
927  uint32_t msi31t2:30;
929 #else
932 #endif
933  } s;
941 };
942 
946 #ifdef __BIG_ENDIAN_BITFIELD
947  uint32_t msi:32;
948 #else
950 #endif
951  } s;
959 };
960 
964 #ifdef __BIG_ENDIAN_BITFIELD
966  uint32_t msimd:16;
967 #else
970 #endif
971  } s;
979 };
980 
984 #ifdef __BIG_ENDIAN_BITFIELD
986  uint64_t hm_pcix:1;
987  uint64_t hm_speed:2;
988  uint64_t ap_pcix:1;
989  uint64_t ap_speed:2;
990  uint64_t pcicnt:32;
991 #else
998 #endif
999  } s;
1003 };
1004 
1008 #ifdef __BIG_ENDIAN_BITFIELD
1010  uint32_t bb1_hole:3;
1011  uint32_t bb1_siz:1;
1012  uint32_t bb_ca:1;
1013  uint32_t bb_es:2;
1014  uint32_t bb1:1;
1015  uint32_t bb0:1;
1016  uint32_t erst_n:1;
1017  uint32_t bar2pres:1;
1018  uint32_t scmtyp:1;
1019  uint32_t scm:1;
1020  uint32_t en_wfilt:1;
1022  uint32_t ap_pcix:1;
1023  uint32_t ap_64ad:1;
1024  uint32_t b12_bist:1;
1025  uint32_t pmo_amod:1;
1026  uint32_t pmo_fpc:3;
1027  uint32_t tsr_hwm:3;
1028  uint32_t bar2_enb:1;
1029  uint32_t bar2_esx:2;
1030  uint32_t bar2_cax:1;
1031 #else
1054 #endif
1055  } s;
1058 #ifdef __BIG_ENDIAN_BITFIELD
1060  uint32_t erst_n:1;
1061  uint32_t bar2pres:1;
1062  uint32_t scmtyp:1;
1063  uint32_t scm:1;
1064  uint32_t en_wfilt:1;
1066  uint32_t ap_pcix:1;
1067  uint32_t ap_64ad:1;
1068  uint32_t b12_bist:1;
1069  uint32_t pmo_amod:1;
1070  uint32_t pmo_fpc:3;
1071  uint32_t tsr_hwm:3;
1072  uint32_t bar2_enb:1;
1073  uint32_t bar2_esx:2;
1074  uint32_t bar2_cax:1;
1075 #else
1092 #endif
1093  } cn31xx;
1099 };
1100 
1104 #ifdef __BIG_ENDIAN_BITFIELD
1106  uint32_t inc_val:16;
1107 #else
1110 #endif
1111  } s;
1119 };
1120 
1124 #ifdef __BIG_ENDIAN_BITFIELD
1125  uint32_t dma_cnt:32;
1126 #else
1128 #endif
1129  } s;
1137 };
1138 
1142 #ifdef __BIG_ENDIAN_BITFIELD
1143  uint32_t pkt_cnt:32;
1144 #else
1146 #endif
1147  } s;
1155 };
1156 
1160 #ifdef __BIG_ENDIAN_BITFIELD
1161  uint32_t dma_time:32;
1162 #else
1164 #endif
1165  } s;
1173 };
1174 
1178 #ifdef __BIG_ENDIAN_BITFIELD
1179  uint32_t icnt:32;
1180 #else
1182 #endif
1183  } s;
1191 };
1192 
1196 #ifdef __BIG_ENDIAN_BITFIELD
1198  uint64_t ill_rd:1;
1199  uint64_t ill_wr:1;
1200  uint64_t win_wr:1;
1201  uint64_t dma1_fi:1;
1202  uint64_t dma0_fi:1;
1203  uint64_t idtime1:1;
1204  uint64_t idtime0:1;
1205  uint64_t idcnt1:1;
1206  uint64_t idcnt0:1;
1207  uint64_t iptime3:1;
1208  uint64_t iptime2:1;
1209  uint64_t iptime1:1;
1210  uint64_t iptime0:1;
1211  uint64_t ipcnt3:1;
1212  uint64_t ipcnt2:1;
1213  uint64_t ipcnt1:1;
1214  uint64_t ipcnt0:1;
1215  uint64_t irsl_int:1;
1216  uint64_t ill_rrd:1;
1217  uint64_t ill_rwr:1;
1218  uint64_t idperr:1;
1219  uint64_t iaperr:1;
1220  uint64_t iserr:1;
1221  uint64_t itsr_abt:1;
1222  uint64_t imsc_msg:1;
1223  uint64_t imsi_mabt:1;
1224  uint64_t imsi_tabt:1;
1225  uint64_t imsi_per:1;
1226  uint64_t imr_tto:1;
1227  uint64_t imr_abt:1;
1228  uint64_t itr_abt:1;
1229  uint64_t imr_wtto:1;
1230  uint64_t imr_wabt:1;
1231  uint64_t itr_wabt:1;
1232 #else
1268 #endif
1269  } s;
1271 #ifdef __BIG_ENDIAN_BITFIELD
1273  uint64_t ill_rd:1;
1274  uint64_t ill_wr:1;
1275  uint64_t win_wr:1;
1276  uint64_t dma1_fi:1;
1277  uint64_t dma0_fi:1;
1278  uint64_t idtime1:1;
1279  uint64_t idtime0:1;
1280  uint64_t idcnt1:1;
1281  uint64_t idcnt0:1;
1283  uint64_t iptime0:1;
1285  uint64_t ipcnt0:1;
1286  uint64_t irsl_int:1;
1287  uint64_t ill_rrd:1;
1288  uint64_t ill_rwr:1;
1289  uint64_t idperr:1;
1290  uint64_t iaperr:1;
1291  uint64_t iserr:1;
1292  uint64_t itsr_abt:1;
1293  uint64_t imsc_msg:1;
1294  uint64_t imsi_mabt:1;
1295  uint64_t imsi_tabt:1;
1296  uint64_t imsi_per:1;
1297  uint64_t imr_tto:1;
1298  uint64_t imr_abt:1;
1299  uint64_t itr_abt:1;
1300  uint64_t imr_wtto:1;
1301  uint64_t imr_wabt:1;
1302  uint64_t itr_wabt:1;
1303 #else
1335 #endif
1336  } cn30xx;
1338 #ifdef __BIG_ENDIAN_BITFIELD
1340  uint64_t ill_rd:1;
1341  uint64_t ill_wr:1;
1342  uint64_t win_wr:1;
1343  uint64_t dma1_fi:1;
1344  uint64_t dma0_fi:1;
1345  uint64_t idtime1:1;
1346  uint64_t idtime0:1;
1347  uint64_t idcnt1:1;
1348  uint64_t idcnt0:1;
1350  uint64_t iptime1:1;
1351  uint64_t iptime0:1;
1353  uint64_t ipcnt1:1;
1354  uint64_t ipcnt0:1;
1355  uint64_t irsl_int:1;
1356  uint64_t ill_rrd:1;
1357  uint64_t ill_rwr:1;
1358  uint64_t idperr:1;
1359  uint64_t iaperr:1;
1360  uint64_t iserr:1;
1361  uint64_t itsr_abt:1;
1362  uint64_t imsc_msg:1;
1363  uint64_t imsi_mabt:1;
1364  uint64_t imsi_tabt:1;
1365  uint64_t imsi_per:1;
1366  uint64_t imr_tto:1;
1367  uint64_t imr_abt:1;
1368  uint64_t itr_abt:1;
1369  uint64_t imr_wtto:1;
1370  uint64_t imr_wabt:1;
1371  uint64_t itr_wabt:1;
1372 #else
1406 #endif
1407  } cn31xx;
1413 };
1414 
1418 #ifdef __BIG_ENDIAN_BITFIELD
1420  uint64_t ill_rd:1;
1421  uint64_t ill_wr:1;
1422  uint64_t win_wr:1;
1423  uint64_t dma1_fi:1;
1424  uint64_t dma0_fi:1;
1425  uint64_t rdtime1:1;
1426  uint64_t rdtime0:1;
1427  uint64_t rdcnt1:1;
1428  uint64_t rdcnt0:1;
1429  uint64_t rptime3:1;
1430  uint64_t rptime2:1;
1431  uint64_t rptime1:1;
1432  uint64_t rptime0:1;
1433  uint64_t rpcnt3:1;
1434  uint64_t rpcnt2:1;
1435  uint64_t rpcnt1:1;
1436  uint64_t rpcnt0:1;
1437  uint64_t rrsl_int:1;
1438  uint64_t ill_rrd:1;
1439  uint64_t ill_rwr:1;
1440  uint64_t rdperr:1;
1441  uint64_t raperr:1;
1442  uint64_t rserr:1;
1443  uint64_t rtsr_abt:1;
1444  uint64_t rmsc_msg:1;
1445  uint64_t rmsi_mabt:1;
1446  uint64_t rmsi_tabt:1;
1447  uint64_t rmsi_per:1;
1448  uint64_t rmr_tto:1;
1449  uint64_t rmr_abt:1;
1450  uint64_t rtr_abt:1;
1451  uint64_t rmr_wtto:1;
1452  uint64_t rmr_wabt:1;
1453  uint64_t rtr_wabt:1;
1454 #else
1490 #endif
1491  } s;
1493 #ifdef __BIG_ENDIAN_BITFIELD
1495  uint64_t ill_rd:1;
1496  uint64_t ill_wr:1;
1497  uint64_t win_wr:1;
1498  uint64_t dma1_fi:1;
1499  uint64_t dma0_fi:1;
1500  uint64_t rdtime1:1;
1501  uint64_t rdtime0:1;
1502  uint64_t rdcnt1:1;
1503  uint64_t rdcnt0:1;
1505  uint64_t rptime0:1;
1507  uint64_t rpcnt0:1;
1508  uint64_t rrsl_int:1;
1509  uint64_t ill_rrd:1;
1510  uint64_t ill_rwr:1;
1511  uint64_t rdperr:1;
1512  uint64_t raperr:1;
1513  uint64_t rserr:1;
1514  uint64_t rtsr_abt:1;
1515  uint64_t rmsc_msg:1;
1516  uint64_t rmsi_mabt:1;
1517  uint64_t rmsi_tabt:1;
1518  uint64_t rmsi_per:1;
1519  uint64_t rmr_tto:1;
1520  uint64_t rmr_abt:1;
1521  uint64_t rtr_abt:1;
1522  uint64_t rmr_wtto:1;
1523  uint64_t rmr_wabt:1;
1524  uint64_t rtr_wabt:1;
1525 #else
1557 #endif
1558  } cn30xx;
1560 #ifdef __BIG_ENDIAN_BITFIELD
1562  uint64_t ill_rd:1;
1563  uint64_t ill_wr:1;
1564  uint64_t win_wr:1;
1565  uint64_t dma1_fi:1;
1566  uint64_t dma0_fi:1;
1567  uint64_t rdtime1:1;
1568  uint64_t rdtime0:1;
1569  uint64_t rdcnt1:1;
1570  uint64_t rdcnt0:1;
1572  uint64_t rptime1:1;
1573  uint64_t rptime0:1;
1575  uint64_t rpcnt1:1;
1576  uint64_t rpcnt0:1;
1577  uint64_t rrsl_int:1;
1578  uint64_t ill_rrd:1;
1579  uint64_t ill_rwr:1;
1580  uint64_t rdperr:1;
1581  uint64_t raperr:1;
1582  uint64_t rserr:1;
1583  uint64_t rtsr_abt:1;
1584  uint64_t rmsc_msg:1;
1585  uint64_t rmsi_mabt:1;
1586  uint64_t rmsi_tabt:1;
1587  uint64_t rmsi_per:1;
1588  uint64_t rmr_tto:1;
1589  uint64_t rmr_abt:1;
1590  uint64_t rtr_abt:1;
1591  uint64_t rmr_wtto:1;
1592  uint64_t rmr_wabt:1;
1593  uint64_t rtr_wabt:1;
1594 #else
1628 #endif
1629  } cn31xx;
1635 };
1636 
1640 #ifdef __BIG_ENDIAN_BITFIELD
1642  uint64_t ill_rd:1;
1643  uint64_t ill_wr:1;
1644  uint64_t win_wr:1;
1645  uint64_t dma1_fi:1;
1646  uint64_t dma0_fi:1;
1647  uint64_t dtime1:1;
1648  uint64_t dtime0:1;
1649  uint64_t dcnt1:1;
1650  uint64_t dcnt0:1;
1651  uint64_t ptime3:1;
1652  uint64_t ptime2:1;
1653  uint64_t ptime1:1;
1654  uint64_t ptime0:1;
1655  uint64_t pcnt3:1;
1656  uint64_t pcnt2:1;
1657  uint64_t pcnt1:1;
1658  uint64_t pcnt0:1;
1659  uint64_t rsl_int:1;
1660  uint64_t ill_rrd:1;
1661  uint64_t ill_rwr:1;
1662  uint64_t dperr:1;
1663  uint64_t aperr:1;
1664  uint64_t serr:1;
1665  uint64_t tsr_abt:1;
1666  uint64_t msc_msg:1;
1667  uint64_t msi_mabt:1;
1668  uint64_t msi_tabt:1;
1669  uint64_t msi_per:1;
1670  uint64_t mr_tto:1;
1671  uint64_t mr_abt:1;
1672  uint64_t tr_abt:1;
1673  uint64_t mr_wtto:1;
1674  uint64_t mr_wabt:1;
1675  uint64_t tr_wabt:1;
1676 #else
1712 #endif
1713  } s;
1715 #ifdef __BIG_ENDIAN_BITFIELD
1717  uint64_t ill_rd:1;
1718  uint64_t ill_wr:1;
1719  uint64_t win_wr:1;
1720  uint64_t dma1_fi:1;
1721  uint64_t dma0_fi:1;
1722  uint64_t dtime1:1;
1723  uint64_t dtime0:1;
1724  uint64_t dcnt1:1;
1725  uint64_t dcnt0:1;
1727  uint64_t ptime0:1;
1729  uint64_t pcnt0:1;
1730  uint64_t rsl_int:1;
1731  uint64_t ill_rrd:1;
1732  uint64_t ill_rwr:1;
1733  uint64_t dperr:1;
1734  uint64_t aperr:1;
1735  uint64_t serr:1;
1736  uint64_t tsr_abt:1;
1737  uint64_t msc_msg:1;
1738  uint64_t msi_mabt:1;
1739  uint64_t msi_tabt:1;
1740  uint64_t msi_per:1;
1741  uint64_t mr_tto:1;
1742  uint64_t mr_abt:1;
1743  uint64_t tr_abt:1;
1744  uint64_t mr_wtto:1;
1745  uint64_t mr_wabt:1;
1746  uint64_t tr_wabt:1;
1747 #else
1779 #endif
1780  } cn30xx;
1782 #ifdef __BIG_ENDIAN_BITFIELD
1784  uint64_t ill_rd:1;
1785  uint64_t ill_wr:1;
1786  uint64_t win_wr:1;
1787  uint64_t dma1_fi:1;
1788  uint64_t dma0_fi:1;
1789  uint64_t dtime1:1;
1790  uint64_t dtime0:1;
1791  uint64_t dcnt1:1;
1792  uint64_t dcnt0:1;
1794  uint64_t ptime1:1;
1795  uint64_t ptime0:1;
1797  uint64_t pcnt1:1;
1798  uint64_t pcnt0:1;
1799  uint64_t rsl_int:1;
1800  uint64_t ill_rrd:1;
1801  uint64_t ill_rwr:1;
1802  uint64_t dperr:1;
1803  uint64_t aperr:1;
1804  uint64_t serr:1;
1805  uint64_t tsr_abt:1;
1806  uint64_t msc_msg:1;
1807  uint64_t msi_mabt:1;
1808  uint64_t msi_tabt:1;
1809  uint64_t msi_per:1;
1810  uint64_t mr_tto:1;
1811  uint64_t mr_abt:1;
1812  uint64_t tr_abt:1;
1813  uint64_t mr_wtto:1;
1814  uint64_t mr_wabt:1;
1815  uint64_t tr_wabt:1;
1816 #else
1850 #endif
1851  } cn31xx;
1857 };
1858 
1862 #ifdef __BIG_ENDIAN_BITFIELD
1864  uint64_t ill_rd:1;
1865  uint64_t ill_wr:1;
1866  uint64_t win_wr:1;
1867  uint64_t dma1_fi:1;
1868  uint64_t dma0_fi:1;
1869  uint64_t dtime1:1;
1870  uint64_t dtime0:1;
1871  uint64_t dcnt1:1;
1872  uint64_t dcnt0:1;
1873  uint64_t ptime3:1;
1874  uint64_t ptime2:1;
1875  uint64_t ptime1:1;
1876  uint64_t ptime0:1;
1877  uint64_t pcnt3:1;
1878  uint64_t pcnt2:1;
1879  uint64_t pcnt1:1;
1880  uint64_t pcnt0:1;
1881  uint64_t rsl_int:1;
1882  uint64_t ill_rrd:1;
1883  uint64_t ill_rwr:1;
1884  uint64_t dperr:1;
1885  uint64_t aperr:1;
1886  uint64_t serr:1;
1887  uint64_t tsr_abt:1;
1888  uint64_t msc_msg:1;
1889  uint64_t msi_mabt:1;
1890  uint64_t msi_tabt:1;
1891  uint64_t msi_per:1;
1892  uint64_t mr_tto:1;
1893  uint64_t mr_abt:1;
1894  uint64_t tr_abt:1;
1895  uint64_t mr_wtto:1;
1896  uint64_t mr_wabt:1;
1897  uint64_t tr_wabt:1;
1898 #else
1934 #endif
1935  } s;
1937 #ifdef __BIG_ENDIAN_BITFIELD
1939  uint64_t ill_rd:1;
1940  uint64_t ill_wr:1;
1941  uint64_t win_wr:1;
1942  uint64_t dma1_fi:1;
1943  uint64_t dma0_fi:1;
1944  uint64_t dtime1:1;
1945  uint64_t dtime0:1;
1946  uint64_t dcnt1:1;
1947  uint64_t dcnt0:1;
1949  uint64_t ptime0:1;
1951  uint64_t pcnt0:1;
1952  uint64_t rsl_int:1;
1953  uint64_t ill_rrd:1;
1954  uint64_t ill_rwr:1;
1955  uint64_t dperr:1;
1956  uint64_t aperr:1;
1957  uint64_t serr:1;
1958  uint64_t tsr_abt:1;
1959  uint64_t msc_msg:1;
1960  uint64_t msi_mabt:1;
1961  uint64_t msi_tabt:1;
1962  uint64_t msi_per:1;
1963  uint64_t mr_tto:1;
1964  uint64_t mr_abt:1;
1965  uint64_t tr_abt:1;
1966  uint64_t mr_wtto:1;
1967  uint64_t mr_wabt:1;
1968  uint64_t tr_wabt:1;
1969 #else
2001 #endif
2002  } cn30xx;
2004 #ifdef __BIG_ENDIAN_BITFIELD
2006  uint64_t ill_rd:1;
2007  uint64_t ill_wr:1;
2008  uint64_t win_wr:1;
2009  uint64_t dma1_fi:1;
2010  uint64_t dma0_fi:1;
2011  uint64_t dtime1:1;
2012  uint64_t dtime0:1;
2013  uint64_t dcnt1:1;
2014  uint64_t dcnt0:1;
2016  uint64_t ptime1:1;
2017  uint64_t ptime0:1;
2019  uint64_t pcnt1:1;
2020  uint64_t pcnt0:1;
2021  uint64_t rsl_int:1;
2022  uint64_t ill_rrd:1;
2023  uint64_t ill_rwr:1;
2024  uint64_t dperr:1;
2025  uint64_t aperr:1;
2026  uint64_t serr:1;
2027  uint64_t tsr_abt:1;
2028  uint64_t msc_msg:1;
2029  uint64_t msi_mabt:1;
2030  uint64_t msi_tabt:1;
2031  uint64_t msi_per:1;
2032  uint64_t mr_tto:1;
2033  uint64_t mr_abt:1;
2034  uint64_t tr_abt:1;
2035  uint64_t mr_wtto:1;
2036  uint64_t mr_wabt:1;
2037  uint64_t tr_wabt:1;
2038 #else
2072 #endif
2073  } cn31xx;
2079 };
2080 
2084 #ifdef __BIG_ENDIAN_BITFIELD
2086  uint32_t intr:6;
2087 #else
2090 #endif
2091  } s;
2099 };
2100 
2104 #ifdef __BIG_ENDIAN_BITFIELD
2105  uint32_t pkt_cnt:16;
2106  uint32_t ptr_cnt:16;
2107 #else
2110 #endif
2111  } s;
2119 };
2120 
2124 #ifdef __BIG_ENDIAN_BITFIELD
2125  uint32_t pkt_cnt:32;
2126 #else
2128 #endif
2129  } s;
2137 };
2138 
2142 #ifdef __BIG_ENDIAN_BITFIELD
2143  uint32_t pkt_cnt:32;
2144 #else
2146 #endif
2147  } s;
2155 };
2156 
2160 #ifdef __BIG_ENDIAN_BITFIELD
2161  uint32_t pkt_time:32;
2162 #else
2164 #endif
2165  } s;
2173 };
2174 
2178 #ifdef __BIG_ENDIAN_BITFIELD
2180  uint32_t min_data:6;
2181  uint32_t prefetch:3;
2182 #else
2186 #endif
2187  } s;
2195 };
2196 
2200 #ifdef __BIG_ENDIAN_BITFIELD
2202  uint32_t min_data:6;
2203  uint32_t prefetch:3;
2204 #else
2208 #endif
2209  } s;
2217 };
2218 
2222 #ifdef __BIG_ENDIAN_BITFIELD
2224  uint32_t min_data:6;
2225  uint32_t prefetch:3;
2226 #else
2230 #endif
2231  } s;
2239 };
2240 
2244 #ifdef __BIG_ENDIAN_BITFIELD
2246  uint64_t enb:1;
2247  uint64_t cnt:31;
2248 #else
2252 #endif
2253  } s;
2261 };
2262 
2266 #ifdef __BIG_ENDIAN_BITFIELD
2268  uint64_t scm:32;
2269 #else
2272 #endif
2273  } s;
2281 };
2282 
2286 #ifdef __BIG_ENDIAN_BITFIELD
2288  uint64_t tsr:36;
2289 #else
2292 #endif
2293  } s;
2301 };
2302 
2306 #ifdef __BIG_ENDIAN_BITFIELD
2308  uint64_t iobit:1;
2310 #else
2314 #endif
2315  } s;
2317 #ifdef __BIG_ENDIAN_BITFIELD
2319  uint64_t iobit:1;
2320  uint64_t rd_addr:46;
2322 #else
2327 #endif
2328  } cn30xx;
2331 #ifdef __BIG_ENDIAN_BITFIELD
2333  uint64_t iobit:1;
2334  uint64_t rd_addr:45;
2336 #else
2341 #endif
2342  } cn38xx;
2347 };
2348 
2352 #ifdef __BIG_ENDIAN_BITFIELD
2353  uint64_t rd_data:64;
2354 #else
2356 #endif
2357  } s;
2365 };
2366 
2370 #ifdef __BIG_ENDIAN_BITFIELD
2372  uint64_t iobit:1;
2373  uint64_t wr_addr:45;
2375 #else
2380 #endif
2381  } s;
2389 };
2390 
2394 #ifdef __BIG_ENDIAN_BITFIELD
2395  uint64_t wr_data:64;
2396 #else
2398 #endif
2399  } s;
2407 };
2408 
2412 #ifdef __BIG_ENDIAN_BITFIELD
2414  uint64_t wr_mask:8;
2415 #else
2418 #endif
2419  } s;
2427 };
2428 
2429 #endif