de0629c5efc5b5a987f4b608c86eaa86ada66681
[dpdk.git] / drivers / net / iavf / base / iavf_register.h
1 /*******************************************************************************
2
3 Copyright (c) 2013 - 2015, Intel Corporation
4 All rights reserved.
5
6 Redistribution and use in source and binary forms, with or without
7 modification, are permitted provided that the following conditions are met:
8
9  1. Redistributions of source code must retain the above copyright notice,
10     this list of conditions and the following disclaimer.
11
12  2. Redistributions in binary form must reproduce the above copyright
13     notice, this list of conditions and the following disclaimer in the
14     documentation and/or other materials provided with the distribution.
15
16  3. Neither the name of the Intel Corporation nor the names of its
17     contributors may be used to endorse or promote products derived from
18     this software without specific prior written permission.
19
20 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30 POSSIBILITY OF SUCH DAMAGE.
31
32 ***************************************************************************/
33
34 #ifndef _IAVF_REGISTER_H_
35 #define _IAVF_REGISTER_H_
36
37
38 #define IAVFMSIX_PBA1(_i)          (0x00002000 + ((_i) * 4)) /* _i=0...19 */ /* Reset: VFLR */
39 #define IAVFMSIX_PBA1_MAX_INDEX    19
40 #define IAVFMSIX_PBA1_PENBIT_SHIFT 0
41 #define IAVFMSIX_PBA1_PENBIT_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_PBA1_PENBIT_SHIFT)
42 #define IAVFMSIX_TADD1(_i)              (0x00002100 + ((_i) * 16)) /* _i=0...639 */ /* Reset: VFLR */
43 #define IAVFMSIX_TADD1_MAX_INDEX        639
44 #define IAVFMSIX_TADD1_MSIXTADD10_SHIFT 0
45 #define IAVFMSIX_TADD1_MSIXTADD10_MASK  IAVF_MASK(0x3, IAVFMSIX_TADD1_MSIXTADD10_SHIFT)
46 #define IAVFMSIX_TADD1_MSIXTADD_SHIFT   2
47 #define IAVFMSIX_TADD1_MSIXTADD_MASK    IAVF_MASK(0x3FFFFFFF, IAVFMSIX_TADD1_MSIXTADD_SHIFT)
48 #define IAVFMSIX_TMSG1(_i)            (0x00002108 + ((_i) * 16)) /* _i=0...639 */ /* Reset: VFLR */
49 #define IAVFMSIX_TMSG1_MAX_INDEX      639
50 #define IAVFMSIX_TMSG1_MSIXTMSG_SHIFT 0
51 #define IAVFMSIX_TMSG1_MSIXTMSG_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_TMSG1_MSIXTMSG_SHIFT)
52 #define IAVFMSIX_TUADD1(_i)             (0x00002104 + ((_i) * 16)) /* _i=0...639 */ /* Reset: VFLR */
53 #define IAVFMSIX_TUADD1_MAX_INDEX       639
54 #define IAVFMSIX_TUADD1_MSIXTUADD_SHIFT 0
55 #define IAVFMSIX_TUADD1_MSIXTUADD_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_TUADD1_MSIXTUADD_SHIFT)
56 #define IAVFMSIX_TVCTRL1(_i)        (0x0000210C + ((_i) * 16)) /* _i=0...639 */ /* Reset: VFLR */
57 #define IAVFMSIX_TVCTRL1_MAX_INDEX  639
58 #define IAVFMSIX_TVCTRL1_MASK_SHIFT 0
59 #define IAVFMSIX_TVCTRL1_MASK_MASK  IAVF_MASK(0x1, IAVFMSIX_TVCTRL1_MASK_SHIFT)
60 #define IAVF_ARQBAH1              0x00006000 /* Reset: EMPR */
61 #define IAVF_ARQBAH1_ARQBAH_SHIFT 0
62 #define IAVF_ARQBAH1_ARQBAH_MASK  IAVF_MASK(0xFFFFFFFF, IAVF_ARQBAH1_ARQBAH_SHIFT)
63 #define IAVF_ARQBAL1              0x00006C00 /* Reset: EMPR */
64 #define IAVF_ARQBAL1_ARQBAL_SHIFT 0
65 #define IAVF_ARQBAL1_ARQBAL_MASK  IAVF_MASK(0xFFFFFFFF, IAVF_ARQBAL1_ARQBAL_SHIFT)
66 #define IAVF_ARQH1            0x00007400 /* Reset: EMPR */
67 #define IAVF_ARQH1_ARQH_SHIFT 0
68 #define IAVF_ARQH1_ARQH_MASK  IAVF_MASK(0x3FF, IAVF_ARQH1_ARQH_SHIFT)
69 #define IAVF_ARQLEN1                 0x00008000 /* Reset: EMPR */
70 #define IAVF_ARQLEN1_ARQLEN_SHIFT    0
71 #define IAVF_ARQLEN1_ARQLEN_MASK     IAVF_MASK(0x3FF, IAVF_ARQLEN1_ARQLEN_SHIFT)
72 #define IAVF_ARQLEN1_ARQVFE_SHIFT    28
73 #define IAVF_ARQLEN1_ARQVFE_MASK     IAVF_MASK(0x1, IAVF_ARQLEN1_ARQVFE_SHIFT)
74 #define IAVF_ARQLEN1_ARQOVFL_SHIFT   29
75 #define IAVF_ARQLEN1_ARQOVFL_MASK    IAVF_MASK(0x1, IAVF_ARQLEN1_ARQOVFL_SHIFT)
76 #define IAVF_ARQLEN1_ARQCRIT_SHIFT   30
77 #define IAVF_ARQLEN1_ARQCRIT_MASK    IAVF_MASK(0x1, IAVF_ARQLEN1_ARQCRIT_SHIFT)
78 #define IAVF_ARQLEN1_ARQENABLE_SHIFT 31
79 #define IAVF_ARQLEN1_ARQENABLE_MASK  IAVF_MASK(0x1U, IAVF_ARQLEN1_ARQENABLE_SHIFT)
80 #define IAVF_ARQT1            0x00007000 /* Reset: EMPR */
81 #define IAVF_ARQT1_ARQT_SHIFT 0
82 #define IAVF_ARQT1_ARQT_MASK  IAVF_MASK(0x3FF, IAVF_ARQT1_ARQT_SHIFT)
83 #define IAVF_ATQBAH1              0x00007800 /* Reset: EMPR */
84 #define IAVF_ATQBAH1_ATQBAH_SHIFT 0
85 #define IAVF_ATQBAH1_ATQBAH_MASK  IAVF_MASK(0xFFFFFFFF, IAVF_ATQBAH1_ATQBAH_SHIFT)
86 #define IAVF_ATQBAL1              0x00007C00 /* Reset: EMPR */
87 #define IAVF_ATQBAL1_ATQBAL_SHIFT 0
88 #define IAVF_ATQBAL1_ATQBAL_MASK  IAVF_MASK(0xFFFFFFFF, IAVF_ATQBAL1_ATQBAL_SHIFT)
89 #define IAVF_ATQH1            0x00006400 /* Reset: EMPR */
90 #define IAVF_ATQH1_ATQH_SHIFT 0
91 #define IAVF_ATQH1_ATQH_MASK  IAVF_MASK(0x3FF, IAVF_ATQH1_ATQH_SHIFT)
92 #define IAVF_ATQLEN1                 0x00006800 /* Reset: EMPR */
93 #define IAVF_ATQLEN1_ATQLEN_SHIFT    0
94 #define IAVF_ATQLEN1_ATQLEN_MASK     IAVF_MASK(0x3FF, IAVF_ATQLEN1_ATQLEN_SHIFT)
95 #define IAVF_ATQLEN1_ATQVFE_SHIFT    28
96 #define IAVF_ATQLEN1_ATQVFE_MASK     IAVF_MASK(0x1, IAVF_ATQLEN1_ATQVFE_SHIFT)
97 #define IAVF_ATQLEN1_ATQOVFL_SHIFT   29
98 #define IAVF_ATQLEN1_ATQOVFL_MASK    IAVF_MASK(0x1, IAVF_ATQLEN1_ATQOVFL_SHIFT)
99 #define IAVF_ATQLEN1_ATQCRIT_SHIFT   30
100 #define IAVF_ATQLEN1_ATQCRIT_MASK    IAVF_MASK(0x1, IAVF_ATQLEN1_ATQCRIT_SHIFT)
101 #define IAVF_ATQLEN1_ATQENABLE_SHIFT 31
102 #define IAVF_ATQLEN1_ATQENABLE_MASK  IAVF_MASK(0x1U, IAVF_ATQLEN1_ATQENABLE_SHIFT)
103 #define IAVF_ATQT1            0x00008400 /* Reset: EMPR */
104 #define IAVF_ATQT1_ATQT_SHIFT 0
105 #define IAVF_ATQT1_ATQT_MASK  IAVF_MASK(0x3FF, IAVF_ATQT1_ATQT_SHIFT)
106 #define IAVFGEN_RSTAT                 0x00008800 /* Reset: VFR */
107 #define IAVFGEN_RSTAT_VFR_STATE_SHIFT 0
108 #define IAVFGEN_RSTAT_VFR_STATE_MASK  IAVF_MASK(0x3, IAVFGEN_RSTAT_VFR_STATE_SHIFT)
109 #define IAVFINT_DYN_CTL01                       0x00005C00 /* Reset: VFR */
110 #define IAVFINT_DYN_CTL01_INTENA_SHIFT          0
111 #define IAVFINT_DYN_CTL01_INTENA_MASK           IAVF_MASK(0x1, IAVFINT_DYN_CTL01_INTENA_SHIFT)
112 #define IAVFINT_DYN_CTL01_CLEARPBA_SHIFT        1
113 #define IAVFINT_DYN_CTL01_CLEARPBA_MASK         IAVF_MASK(0x1, IAVFINT_DYN_CTL01_CLEARPBA_SHIFT)
114 #define IAVFINT_DYN_CTL01_SWINT_TRIG_SHIFT      2
115 #define IAVFINT_DYN_CTL01_SWINT_TRIG_MASK       IAVF_MASK(0x1, IAVFINT_DYN_CTL01_SWINT_TRIG_SHIFT)
116 #define IAVFINT_DYN_CTL01_ITR_INDX_SHIFT        3
117 #define IAVFINT_DYN_CTL01_ITR_INDX_MASK         IAVF_MASK(0x3, IAVFINT_DYN_CTL01_ITR_INDX_SHIFT)
118 #define IAVFINT_DYN_CTL01_INTERVAL_SHIFT        5
119 #define IAVFINT_DYN_CTL01_INTERVAL_MASK         IAVF_MASK(0xFFF, IAVFINT_DYN_CTL01_INTERVAL_SHIFT)
120 #define IAVFINT_DYN_CTL01_SW_ITR_INDX_ENA_SHIFT 24
121 #define IAVFINT_DYN_CTL01_SW_ITR_INDX_ENA_MASK  IAVF_MASK(0x1, IAVFINT_DYN_CTL01_SW_ITR_INDX_ENA_SHIFT)
122 #define IAVFINT_DYN_CTL01_SW_ITR_INDX_SHIFT     25
123 #define IAVFINT_DYN_CTL01_SW_ITR_INDX_MASK      IAVF_MASK(0x3, IAVFINT_DYN_CTL01_SW_ITR_INDX_SHIFT)
124 #define IAVFINT_DYN_CTL01_INTENA_MSK_SHIFT      31
125 #define IAVFINT_DYN_CTL01_INTENA_MSK_MASK       IAVF_MASK(0x1, IAVFINT_DYN_CTL01_INTENA_MSK_SHIFT)
126 #define IAVFINT_DYN_CTLN1(_INTVF)               (0x00003800 + ((_INTVF) * 4)) /* _i=0...15 */ /* Reset: VFR */
127 #define IAVFINT_DYN_CTLN1_MAX_INDEX             15
128 #define IAVFINT_DYN_CTLN1_INTENA_SHIFT          0
129 #define IAVFINT_DYN_CTLN1_INTENA_MASK           IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_INTENA_SHIFT)
130 #define IAVFINT_DYN_CTLN1_CLEARPBA_SHIFT        1
131 #define IAVFINT_DYN_CTLN1_CLEARPBA_MASK         IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_CLEARPBA_SHIFT)
132 #define IAVFINT_DYN_CTLN1_SWINT_TRIG_SHIFT      2
133 #define IAVFINT_DYN_CTLN1_SWINT_TRIG_MASK       IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_SWINT_TRIG_SHIFT)
134 #define IAVFINT_DYN_CTLN1_ITR_INDX_SHIFT        3
135 #define IAVFINT_DYN_CTLN1_ITR_INDX_MASK         IAVF_MASK(0x3, IAVFINT_DYN_CTLN1_ITR_INDX_SHIFT)
136 #define IAVFINT_DYN_CTLN1_INTERVAL_SHIFT        5
137 #define IAVFINT_DYN_CTLN1_INTERVAL_MASK         IAVF_MASK(0xFFF, IAVFINT_DYN_CTLN1_INTERVAL_SHIFT)
138 #define IAVFINT_DYN_CTLN1_SW_ITR_INDX_ENA_SHIFT 24
139 #define IAVFINT_DYN_CTLN1_SW_ITR_INDX_ENA_MASK  IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_SW_ITR_INDX_ENA_SHIFT)
140 #define IAVFINT_DYN_CTLN1_SW_ITR_INDX_SHIFT     25
141 #define IAVFINT_DYN_CTLN1_SW_ITR_INDX_MASK      IAVF_MASK(0x3, IAVFINT_DYN_CTLN1_SW_ITR_INDX_SHIFT)
142 #define IAVFINT_DYN_CTLN1_INTENA_MSK_SHIFT      31
143 #define IAVFINT_DYN_CTLN1_INTENA_MSK_MASK       IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_INTENA_MSK_SHIFT)
144 #define IAVFINT_ICR0_ENA1                        0x00005000 /* Reset: CORER */
145 #define IAVFINT_ICR0_ENA1_LINK_STAT_CHANGE_SHIFT 25
146 #define IAVFINT_ICR0_ENA1_LINK_STAT_CHANGE_MASK  IAVF_MASK(0x1, IAVFINT_ICR0_ENA1_LINK_STAT_CHANGE_SHIFT)
147 #define IAVFINT_ICR0_ENA1_ADMINQ_SHIFT           30
148 #define IAVFINT_ICR0_ENA1_ADMINQ_MASK            IAVF_MASK(0x1, IAVFINT_ICR0_ENA1_ADMINQ_SHIFT)
149 #define IAVFINT_ICR0_ENA1_RSVD_SHIFT             31
150 #define IAVFINT_ICR0_ENA1_RSVD_MASK              IAVF_MASK(0x1, IAVFINT_ICR0_ENA1_RSVD_SHIFT)
151 #define IAVFINT_ICR01                        0x00004800 /* Reset: CORER */
152 #define IAVFINT_ICR01_INTEVENT_SHIFT         0
153 #define IAVFINT_ICR01_INTEVENT_MASK          IAVF_MASK(0x1, IAVFINT_ICR01_INTEVENT_SHIFT)
154 #define IAVFINT_ICR01_QUEUE_0_SHIFT          1
155 #define IAVFINT_ICR01_QUEUE_0_MASK           IAVF_MASK(0x1, IAVFINT_ICR01_QUEUE_0_SHIFT)
156 #define IAVFINT_ICR01_QUEUE_1_SHIFT          2
157 #define IAVFINT_ICR01_QUEUE_1_MASK           IAVF_MASK(0x1, IAVFINT_ICR01_QUEUE_1_SHIFT)
158 #define IAVFINT_ICR01_QUEUE_2_SHIFT          3
159 #define IAVFINT_ICR01_QUEUE_2_MASK           IAVF_MASK(0x1, IAVFINT_ICR01_QUEUE_2_SHIFT)
160 #define IAVFINT_ICR01_QUEUE_3_SHIFT          4
161 #define IAVFINT_ICR01_QUEUE_3_MASK           IAVF_MASK(0x1, IAVFINT_ICR01_QUEUE_3_SHIFT)
162 #define IAVFINT_ICR01_LINK_STAT_CHANGE_SHIFT 25
163 #define IAVFINT_ICR01_LINK_STAT_CHANGE_MASK  IAVF_MASK(0x1, IAVFINT_ICR01_LINK_STAT_CHANGE_SHIFT)
164 #define IAVFINT_ICR01_ADMINQ_SHIFT           30
165 #define IAVFINT_ICR01_ADMINQ_MASK            IAVF_MASK(0x1, IAVFINT_ICR01_ADMINQ_SHIFT)
166 #define IAVFINT_ICR01_SWINT_SHIFT            31
167 #define IAVFINT_ICR01_SWINT_MASK             IAVF_MASK(0x1, IAVFINT_ICR01_SWINT_SHIFT)
168 #define IAVFINT_ITR01(_i)            (0x00004C00 + ((_i) * 4)) /* _i=0...2 */ /* Reset: VFR */
169 #define IAVFINT_ITR01_MAX_INDEX      2
170 #define IAVFINT_ITR01_INTERVAL_SHIFT 0
171 #define IAVFINT_ITR01_INTERVAL_MASK  IAVF_MASK(0xFFF, IAVFINT_ITR01_INTERVAL_SHIFT)
172 #define IAVFINT_ITRN1(_i, _INTVF)     (0x00002800 + ((_i) * 64 + (_INTVF) * 4)) /* _i=0...2, _INTVF=0...15 */ /* Reset: VFR */
173 #define IAVFINT_ITRN1_MAX_INDEX      2
174 #define IAVFINT_ITRN1_INTERVAL_SHIFT 0
175 #define IAVFINT_ITRN1_INTERVAL_MASK  IAVF_MASK(0xFFF, IAVFINT_ITRN1_INTERVAL_SHIFT)
176 #define IAVFINT_STAT_CTL01                      0x00005400 /* Reset: CORER */
177 #define IAVFINT_STAT_CTL01_OTHER_ITR_INDX_SHIFT 2
178 #define IAVFINT_STAT_CTL01_OTHER_ITR_INDX_MASK  IAVF_MASK(0x3, IAVFINT_STAT_CTL01_OTHER_ITR_INDX_SHIFT)
179 #define IAVF_QRX_TAIL1(_Q)        (0x00002000 + ((_Q) * 4)) /* _i=0...15 */ /* Reset: CORER */
180 #define IAVF_QRX_TAIL1_MAX_INDEX  15
181 #define IAVF_QRX_TAIL1_TAIL_SHIFT 0
182 #define IAVF_QRX_TAIL1_TAIL_MASK  IAVF_MASK(0x1FFF, IAVF_QRX_TAIL1_TAIL_SHIFT)
183 #define IAVF_QTX_TAIL1(_Q)        (0x00000000 + ((_Q) * 4)) /* _i=0...15 */ /* Reset: PFR */
184 #define IAVF_QTX_TAIL1_MAX_INDEX  15
185 #define IAVF_QTX_TAIL1_TAIL_SHIFT 0
186 #define IAVF_QTX_TAIL1_TAIL_MASK  IAVF_MASK(0x1FFF, IAVF_QTX_TAIL1_TAIL_SHIFT)
187 #define IAVFMSIX_PBA              0x00002000 /* Reset: VFLR */
188 #define IAVFMSIX_PBA_PENBIT_SHIFT 0
189 #define IAVFMSIX_PBA_PENBIT_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_PBA_PENBIT_SHIFT)
190 #define IAVFMSIX_TADD(_i)              (0x00000000 + ((_i) * 16)) /* _i=0...16 */ /* Reset: VFLR */
191 #define IAVFMSIX_TADD_MAX_INDEX        16
192 #define IAVFMSIX_TADD_MSIXTADD10_SHIFT 0
193 #define IAVFMSIX_TADD_MSIXTADD10_MASK  IAVF_MASK(0x3, IAVFMSIX_TADD_MSIXTADD10_SHIFT)
194 #define IAVFMSIX_TADD_MSIXTADD_SHIFT   2
195 #define IAVFMSIX_TADD_MSIXTADD_MASK    IAVF_MASK(0x3FFFFFFF, IAVFMSIX_TADD_MSIXTADD_SHIFT)
196 #define IAVFMSIX_TMSG(_i)            (0x00000008 + ((_i) * 16)) /* _i=0...16 */ /* Reset: VFLR */
197 #define IAVFMSIX_TMSG_MAX_INDEX      16
198 #define IAVFMSIX_TMSG_MSIXTMSG_SHIFT 0
199 #define IAVFMSIX_TMSG_MSIXTMSG_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_TMSG_MSIXTMSG_SHIFT)
200 #define IAVFMSIX_TUADD(_i)             (0x00000004 + ((_i) * 16)) /* _i=0...16 */ /* Reset: VFLR */
201 #define IAVFMSIX_TUADD_MAX_INDEX       16
202 #define IAVFMSIX_TUADD_MSIXTUADD_SHIFT 0
203 #define IAVFMSIX_TUADD_MSIXTUADD_MASK  IAVF_MASK(0xFFFFFFFF, IAVFMSIX_TUADD_MSIXTUADD_SHIFT)
204 #define IAVFMSIX_TVCTRL(_i)        (0x0000000C + ((_i) * 16)) /* _i=0...16 */ /* Reset: VFLR */
205 #define IAVFMSIX_TVCTRL_MAX_INDEX  16
206 #define IAVFMSIX_TVCTRL_MASK_SHIFT 0
207 #define IAVFMSIX_TVCTRL_MASK_MASK  IAVF_MASK(0x1, IAVFMSIX_TVCTRL_MASK_SHIFT)
208 #define IAVFCM_PE_ERRDATA                  0x0000DC00 /* Reset: VFR */
209 #define IAVFCM_PE_ERRDATA_ERROR_CODE_SHIFT 0
210 #define IAVFCM_PE_ERRDATA_ERROR_CODE_MASK  IAVF_MASK(0xF, IAVFCM_PE_ERRDATA_ERROR_CODE_SHIFT)
211 #define IAVFCM_PE_ERRDATA_Q_TYPE_SHIFT     4
212 #define IAVFCM_PE_ERRDATA_Q_TYPE_MASK      IAVF_MASK(0x7, IAVFCM_PE_ERRDATA_Q_TYPE_SHIFT)
213 #define IAVFCM_PE_ERRDATA_Q_NUM_SHIFT      8
214 #define IAVFCM_PE_ERRDATA_Q_NUM_MASK       IAVF_MASK(0x3FFFF, IAVFCM_PE_ERRDATA_Q_NUM_SHIFT)
215 #define IAVFCM_PE_ERRINFO                     0x0000D800 /* Reset: VFR */
216 #define IAVFCM_PE_ERRINFO_ERROR_VALID_SHIFT   0
217 #define IAVFCM_PE_ERRINFO_ERROR_VALID_MASK    IAVF_MASK(0x1, IAVFCM_PE_ERRINFO_ERROR_VALID_SHIFT)
218 #define IAVFCM_PE_ERRINFO_ERROR_INST_SHIFT    4
219 #define IAVFCM_PE_ERRINFO_ERROR_INST_MASK     IAVF_MASK(0x7, IAVFCM_PE_ERRINFO_ERROR_INST_SHIFT)
220 #define IAVFCM_PE_ERRINFO_DBL_ERROR_CNT_SHIFT 8
221 #define IAVFCM_PE_ERRINFO_DBL_ERROR_CNT_MASK  IAVF_MASK(0xFF, IAVFCM_PE_ERRINFO_DBL_ERROR_CNT_SHIFT)
222 #define IAVFCM_PE_ERRINFO_RLU_ERROR_CNT_SHIFT 16
223 #define IAVFCM_PE_ERRINFO_RLU_ERROR_CNT_MASK  IAVF_MASK(0xFF, IAVFCM_PE_ERRINFO_RLU_ERROR_CNT_SHIFT)
224 #define IAVFCM_PE_ERRINFO_RLS_ERROR_CNT_SHIFT 24
225 #define IAVFCM_PE_ERRINFO_RLS_ERROR_CNT_MASK  IAVF_MASK(0xFF, IAVFCM_PE_ERRINFO_RLS_ERROR_CNT_SHIFT)
226 #define IAVFQF_HENA(_i)             (0x0000C400 + ((_i) * 4)) /* _i=0...1 */ /* Reset: CORER */
227 #define IAVFQF_HENA_MAX_INDEX       1
228 #define IAVFQF_HENA_PTYPE_ENA_SHIFT 0
229 #define IAVFQF_HENA_PTYPE_ENA_MASK  IAVF_MASK(0xFFFFFFFF, IAVFQF_HENA_PTYPE_ENA_SHIFT)
230 #define IAVFQF_HKEY(_i)         (0x0000CC00 + ((_i) * 4)) /* _i=0...12 */ /* Reset: CORER */
231 #define IAVFQF_HKEY_MAX_INDEX   12
232 #define IAVFQF_HKEY_KEY_0_SHIFT 0
233 #define IAVFQF_HKEY_KEY_0_MASK  IAVF_MASK(0xFF, IAVFQF_HKEY_KEY_0_SHIFT)
234 #define IAVFQF_HKEY_KEY_1_SHIFT 8
235 #define IAVFQF_HKEY_KEY_1_MASK  IAVF_MASK(0xFF, IAVFQF_HKEY_KEY_1_SHIFT)
236 #define IAVFQF_HKEY_KEY_2_SHIFT 16
237 #define IAVFQF_HKEY_KEY_2_MASK  IAVF_MASK(0xFF, IAVFQF_HKEY_KEY_2_SHIFT)
238 #define IAVFQF_HKEY_KEY_3_SHIFT 24
239 #define IAVFQF_HKEY_KEY_3_MASK  IAVF_MASK(0xFF, IAVFQF_HKEY_KEY_3_SHIFT)
240 #define IAVFQF_HLUT(_i)        (0x0000D000 + ((_i) * 4)) /* _i=0...15 */ /* Reset: CORER */
241 #define IAVFQF_HLUT_MAX_INDEX  15
242 #define IAVFQF_HLUT_LUT0_SHIFT 0
243 #define IAVFQF_HLUT_LUT0_MASK  IAVF_MASK(0xF, IAVFQF_HLUT_LUT0_SHIFT)
244 #define IAVFQF_HLUT_LUT1_SHIFT 8
245 #define IAVFQF_HLUT_LUT1_MASK  IAVF_MASK(0xF, IAVFQF_HLUT_LUT1_SHIFT)
246 #define IAVFQF_HLUT_LUT2_SHIFT 16
247 #define IAVFQF_HLUT_LUT2_MASK  IAVF_MASK(0xF, IAVFQF_HLUT_LUT2_SHIFT)
248 #define IAVFQF_HLUT_LUT3_SHIFT 24
249 #define IAVFQF_HLUT_LUT3_MASK  IAVF_MASK(0xF, IAVFQF_HLUT_LUT3_SHIFT)
250 #define IAVFQF_HREGION(_i)                  (0x0000D400 + ((_i) * 4)) /* _i=0...7 */ /* Reset: CORER */
251 #define IAVFQF_HREGION_MAX_INDEX            7
252 #define IAVFQF_HREGION_OVERRIDE_ENA_0_SHIFT 0
253 #define IAVFQF_HREGION_OVERRIDE_ENA_0_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_0_SHIFT)
254 #define IAVFQF_HREGION_REGION_0_SHIFT       1
255 #define IAVFQF_HREGION_REGION_0_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_0_SHIFT)
256 #define IAVFQF_HREGION_OVERRIDE_ENA_1_SHIFT 4
257 #define IAVFQF_HREGION_OVERRIDE_ENA_1_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_1_SHIFT)
258 #define IAVFQF_HREGION_REGION_1_SHIFT       5
259 #define IAVFQF_HREGION_REGION_1_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_1_SHIFT)
260 #define IAVFQF_HREGION_OVERRIDE_ENA_2_SHIFT 8
261 #define IAVFQF_HREGION_OVERRIDE_ENA_2_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_2_SHIFT)
262 #define IAVFQF_HREGION_REGION_2_SHIFT       9
263 #define IAVFQF_HREGION_REGION_2_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_2_SHIFT)
264 #define IAVFQF_HREGION_OVERRIDE_ENA_3_SHIFT 12
265 #define IAVFQF_HREGION_OVERRIDE_ENA_3_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_3_SHIFT)
266 #define IAVFQF_HREGION_REGION_3_SHIFT       13
267 #define IAVFQF_HREGION_REGION_3_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_3_SHIFT)
268 #define IAVFQF_HREGION_OVERRIDE_ENA_4_SHIFT 16
269 #define IAVFQF_HREGION_OVERRIDE_ENA_4_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_4_SHIFT)
270 #define IAVFQF_HREGION_REGION_4_SHIFT       17
271 #define IAVFQF_HREGION_REGION_4_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_4_SHIFT)
272 #define IAVFQF_HREGION_OVERRIDE_ENA_5_SHIFT 20
273 #define IAVFQF_HREGION_OVERRIDE_ENA_5_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_5_SHIFT)
274 #define IAVFQF_HREGION_REGION_5_SHIFT       21
275 #define IAVFQF_HREGION_REGION_5_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_5_SHIFT)
276 #define IAVFQF_HREGION_OVERRIDE_ENA_6_SHIFT 24
277 #define IAVFQF_HREGION_OVERRIDE_ENA_6_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_6_SHIFT)
278 #define IAVFQF_HREGION_REGION_6_SHIFT       25
279 #define IAVFQF_HREGION_REGION_6_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_6_SHIFT)
280 #define IAVFQF_HREGION_OVERRIDE_ENA_7_SHIFT 28
281 #define IAVFQF_HREGION_OVERRIDE_ENA_7_MASK  IAVF_MASK(0x1, IAVFQF_HREGION_OVERRIDE_ENA_7_SHIFT)
282 #define IAVFQF_HREGION_REGION_7_SHIFT       29
283 #define IAVFQF_HREGION_REGION_7_MASK        IAVF_MASK(0x7, IAVFQF_HREGION_REGION_7_SHIFT)
284
285 #define IAVFINT_DYN_CTL01_WB_ON_ITR_SHIFT       30
286 #define IAVFINT_DYN_CTL01_WB_ON_ITR_MASK        IAVF_MASK(0x1, IAVFINT_DYN_CTL01_WB_ON_ITR_SHIFT)
287 #define IAVFINT_DYN_CTLN1_WB_ON_ITR_SHIFT       30
288 #define IAVFINT_DYN_CTLN1_WB_ON_ITR_MASK        IAVF_MASK(0x1, IAVFINT_DYN_CTLN1_WB_ON_ITR_SHIFT)
289 #define IAVFPE_AEQALLOC1               0x0000A400 /* Reset: VFR */
290 #define IAVFPE_AEQALLOC1_AECOUNT_SHIFT 0
291 #define IAVFPE_AEQALLOC1_AECOUNT_MASK  IAVF_MASK(0xFFFFFFFF, IAVFPE_AEQALLOC1_AECOUNT_SHIFT)
292 #define IAVFPE_CCQPHIGH1                  0x00009800 /* Reset: VFR */
293 #define IAVFPE_CCQPHIGH1_PECCQPHIGH_SHIFT 0
294 #define IAVFPE_CCQPHIGH1_PECCQPHIGH_MASK  IAVF_MASK(0xFFFFFFFF, IAVFPE_CCQPHIGH1_PECCQPHIGH_SHIFT)
295 #define IAVFPE_CCQPLOW1                 0x0000AC00 /* Reset: VFR */
296 #define IAVFPE_CCQPLOW1_PECCQPLOW_SHIFT 0
297 #define IAVFPE_CCQPLOW1_PECCQPLOW_MASK  IAVF_MASK(0xFFFFFFFF, IAVFPE_CCQPLOW1_PECCQPLOW_SHIFT)
298 #define IAVFPE_CCQPSTATUS1                   0x0000B800 /* Reset: VFR */
299 #define IAVFPE_CCQPSTATUS1_CCQP_DONE_SHIFT   0
300 #define IAVFPE_CCQPSTATUS1_CCQP_DONE_MASK    IAVF_MASK(0x1, IAVFPE_CCQPSTATUS1_CCQP_DONE_SHIFT)
301 #define IAVFPE_CCQPSTATUS1_HMC_PROFILE_SHIFT 4
302 #define IAVFPE_CCQPSTATUS1_HMC_PROFILE_MASK  IAVF_MASK(0x7, IAVFPE_CCQPSTATUS1_HMC_PROFILE_SHIFT)
303 #define IAVFPE_CCQPSTATUS1_RDMA_EN_VFS_SHIFT 16
304 #define IAVFPE_CCQPSTATUS1_RDMA_EN_VFS_MASK  IAVF_MASK(0x3F, IAVFPE_CCQPSTATUS1_RDMA_EN_VFS_SHIFT)
305 #define IAVFPE_CCQPSTATUS1_CCQP_ERR_SHIFT    31
306 #define IAVFPE_CCQPSTATUS1_CCQP_ERR_MASK     IAVF_MASK(0x1, IAVFPE_CCQPSTATUS1_CCQP_ERR_SHIFT)
307 #define IAVFPE_CQACK1              0x0000B000 /* Reset: VFR */
308 #define IAVFPE_CQACK1_PECQID_SHIFT 0
309 #define IAVFPE_CQACK1_PECQID_MASK  IAVF_MASK(0x1FFFF, IAVFPE_CQACK1_PECQID_SHIFT)
310 #define IAVFPE_CQARM1              0x0000B400 /* Reset: VFR */
311 #define IAVFPE_CQARM1_PECQID_SHIFT 0
312 #define IAVFPE_CQARM1_PECQID_MASK  IAVF_MASK(0x1FFFF, IAVFPE_CQARM1_PECQID_SHIFT)
313 #define IAVFPE_CQPDB1              0x0000BC00 /* Reset: VFR */
314 #define IAVFPE_CQPDB1_WQHEAD_SHIFT 0
315 #define IAVFPE_CQPDB1_WQHEAD_MASK  IAVF_MASK(0x7FF, IAVFPE_CQPDB1_WQHEAD_SHIFT)
316 #define IAVFPE_CQPERRCODES1                      0x00009C00 /* Reset: VFR */
317 #define IAVFPE_CQPERRCODES1_CQP_MINOR_CODE_SHIFT 0
318 #define IAVFPE_CQPERRCODES1_CQP_MINOR_CODE_MASK  IAVF_MASK(0xFFFF, IAVFPE_CQPERRCODES1_CQP_MINOR_CODE_SHIFT)
319 #define IAVFPE_CQPERRCODES1_CQP_MAJOR_CODE_SHIFT 16
320 #define IAVFPE_CQPERRCODES1_CQP_MAJOR_CODE_MASK  IAVF_MASK(0xFFFF, IAVFPE_CQPERRCODES1_CQP_MAJOR_CODE_SHIFT)
321 #define IAVFPE_CQPTAIL1                  0x0000A000 /* Reset: VFR */
322 #define IAVFPE_CQPTAIL1_WQTAIL_SHIFT     0
323 #define IAVFPE_CQPTAIL1_WQTAIL_MASK      IAVF_MASK(0x7FF, IAVFPE_CQPTAIL1_WQTAIL_SHIFT)
324 #define IAVFPE_CQPTAIL1_CQP_OP_ERR_SHIFT 31
325 #define IAVFPE_CQPTAIL1_CQP_OP_ERR_MASK  IAVF_MASK(0x1, IAVFPE_CQPTAIL1_CQP_OP_ERR_SHIFT)
326 #define IAVFPE_IPCONFIG01                        0x00008C00 /* Reset: VFR */
327 #define IAVFPE_IPCONFIG01_PEIPID_SHIFT           0
328 #define IAVFPE_IPCONFIG01_PEIPID_MASK            IAVF_MASK(0xFFFF, IAVFPE_IPCONFIG01_PEIPID_SHIFT)
329 #define IAVFPE_IPCONFIG01_USEENTIREIDRANGE_SHIFT 16
330 #define IAVFPE_IPCONFIG01_USEENTIREIDRANGE_MASK  IAVF_MASK(0x1, IAVFPE_IPCONFIG01_USEENTIREIDRANGE_SHIFT)
331 #define IAVFPE_MRTEIDXMASK1                       0x00009000 /* Reset: VFR */
332 #define IAVFPE_MRTEIDXMASK1_MRTEIDXMASKBITS_SHIFT 0
333 #define IAVFPE_MRTEIDXMASK1_MRTEIDXMASKBITS_MASK  IAVF_MASK(0x1F, IAVFPE_MRTEIDXMASK1_MRTEIDXMASKBITS_SHIFT)
334 #define IAVFPE_RCVUNEXPECTEDERROR1                        0x00009400 /* Reset: VFR */
335 #define IAVFPE_RCVUNEXPECTEDERROR1_TCP_RX_UNEXP_ERR_SHIFT 0
336 #define IAVFPE_RCVUNEXPECTEDERROR1_TCP_RX_UNEXP_ERR_MASK  IAVF_MASK(0xFFFFFF, IAVFPE_RCVUNEXPECTEDERROR1_TCP_RX_UNEXP_ERR_SHIFT)
337 #define IAVFPE_TCPNOWTIMER1               0x0000A800 /* Reset: VFR */
338 #define IAVFPE_TCPNOWTIMER1_TCP_NOW_SHIFT 0
339 #define IAVFPE_TCPNOWTIMER1_TCP_NOW_MASK  IAVF_MASK(0xFFFFFFFF, IAVFPE_TCPNOWTIMER1_TCP_NOW_SHIFT)
340 #define IAVFPE_WQEALLOC1                      0x0000C000 /* Reset: VFR */
341 #define IAVFPE_WQEALLOC1_PEQPID_SHIFT         0
342 #define IAVFPE_WQEALLOC1_PEQPID_MASK          IAVF_MASK(0x3FFFF, IAVFPE_WQEALLOC1_PEQPID_SHIFT)
343 #define IAVFPE_WQEALLOC1_WQE_DESC_INDEX_SHIFT 20
344 #define IAVFPE_WQEALLOC1_WQE_DESC_INDEX_MASK  IAVF_MASK(0xFFF, IAVFPE_WQEALLOC1_WQE_DESC_INDEX_SHIFT)
345
346 #endif /* _IAVF_REGISTER_H_ */