cxgb_sge_defs.h revision 1.1 1 1.1 jklos /**************************************************************************
2 1.1 jklos
3 1.1 jklos Copyright (c) 2007, Chelsio Inc.
4 1.1 jklos All rights reserved.
5 1.1 jklos
6 1.1 jklos Redistribution and use in source and binary forms, with or without
7 1.1 jklos modification, are permitted provided that the following conditions are met:
8 1.1 jklos
9 1.1 jklos 1. Redistributions of source code must retain the above copyright notice,
10 1.1 jklos this list of conditions and the following disclaimer.
11 1.1 jklos
12 1.1 jklos 2. Neither the name of the Chelsio Corporation nor the names of its
13 1.1 jklos contributors may be used to endorse or promote products derived from
14 1.1 jklos this software without specific prior written permission.
15 1.1 jklos
16 1.1 jklos THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 1.1 jklos AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 1.1 jklos IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 1.1 jklos ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
20 1.1 jklos LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 1.1 jklos CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 1.1 jklos SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23 1.1 jklos INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24 1.1 jklos CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25 1.1 jklos ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 1.1 jklos POSSIBILITY OF SUCH DAMAGE.
27 1.1 jklos
28 1.1 jklos ***************************************************************************/
29 1.1 jklos /*
30 1.1 jklos * This file is automatically generated --- any changes will be lost.
31 1.1 jklos */
32 1.1 jklos
33 1.1 jklos #ifndef _SGE_DEFS_H
34 1.1 jklos #define _SGE_DEFS_H
35 1.1 jklos
36 1.1 jklos #define S_EC_CREDITS 0
37 1.1 jklos #define M_EC_CREDITS 0x7FFF
38 1.1 jklos #define V_EC_CREDITS(x) ((x) << S_EC_CREDITS)
39 1.1 jklos #define G_EC_CREDITS(x) (((x) >> S_EC_CREDITS) & M_EC_CREDITS)
40 1.1 jklos
41 1.1 jklos #define S_EC_GTS 15
42 1.1 jklos #define V_EC_GTS(x) ((x) << S_EC_GTS)
43 1.1 jklos #define F_EC_GTS V_EC_GTS(1U)
44 1.1 jklos
45 1.1 jklos #define S_EC_INDEX 16
46 1.1 jklos #define M_EC_INDEX 0xFFFF
47 1.1 jklos #define V_EC_INDEX(x) ((x) << S_EC_INDEX)
48 1.1 jklos #define G_EC_INDEX(x) (((x) >> S_EC_INDEX) & M_EC_INDEX)
49 1.1 jklos
50 1.1 jklos #define S_EC_SIZE 0
51 1.1 jklos #define M_EC_SIZE 0xFFFF
52 1.1 jklos #define V_EC_SIZE(x) ((x) << S_EC_SIZE)
53 1.1 jklos #define G_EC_SIZE(x) (((x) >> S_EC_SIZE) & M_EC_SIZE)
54 1.1 jklos
55 1.1 jklos #define S_EC_BASE_LO 16
56 1.1 jklos #define M_EC_BASE_LO 0xFFFF
57 1.1 jklos #define V_EC_BASE_LO(x) ((x) << S_EC_BASE_LO)
58 1.1 jklos #define G_EC_BASE_LO(x) (((x) >> S_EC_BASE_LO) & M_EC_BASE_LO)
59 1.1 jklos
60 1.1 jklos #define S_EC_BASE_HI 0
61 1.1 jklos #define M_EC_BASE_HI 0xF
62 1.1 jklos #define V_EC_BASE_HI(x) ((x) << S_EC_BASE_HI)
63 1.1 jklos #define G_EC_BASE_HI(x) (((x) >> S_EC_BASE_HI) & M_EC_BASE_HI)
64 1.1 jklos
65 1.1 jklos #define S_EC_RESPQ 4
66 1.1 jklos #define M_EC_RESPQ 0x7
67 1.1 jklos #define V_EC_RESPQ(x) ((x) << S_EC_RESPQ)
68 1.1 jklos #define G_EC_RESPQ(x) (((x) >> S_EC_RESPQ) & M_EC_RESPQ)
69 1.1 jklos
70 1.1 jklos #define S_EC_TYPE 7
71 1.1 jklos #define M_EC_TYPE 0x7
72 1.1 jklos #define V_EC_TYPE(x) ((x) << S_EC_TYPE)
73 1.1 jklos #define G_EC_TYPE(x) (((x) >> S_EC_TYPE) & M_EC_TYPE)
74 1.1 jklos
75 1.1 jklos #define S_EC_GEN 10
76 1.1 jklos #define V_EC_GEN(x) ((x) << S_EC_GEN)
77 1.1 jklos #define F_EC_GEN V_EC_GEN(1U)
78 1.1 jklos
79 1.1 jklos #define S_EC_UP_TOKEN 11
80 1.1 jklos #define M_EC_UP_TOKEN 0xFFFFF
81 1.1 jklos #define V_EC_UP_TOKEN(x) ((x) << S_EC_UP_TOKEN)
82 1.1 jklos #define G_EC_UP_TOKEN(x) (((x) >> S_EC_UP_TOKEN) & M_EC_UP_TOKEN)
83 1.1 jklos
84 1.1 jklos #define S_EC_VALID 31
85 1.1 jklos #define V_EC_VALID(x) ((x) << S_EC_VALID)
86 1.1 jklos #define F_EC_VALID V_EC_VALID(1U)
87 1.1 jklos
88 1.1 jklos #define S_RQ_MSI_VEC 20
89 1.1 jklos #define M_RQ_MSI_VEC 0x3F
90 1.1 jklos #define V_RQ_MSI_VEC(x) ((x) << S_RQ_MSI_VEC)
91 1.1 jklos #define G_RQ_MSI_VEC(x) (((x) >> S_RQ_MSI_VEC) & M_RQ_MSI_VEC)
92 1.1 jklos
93 1.1 jklos #define S_RQ_INTR_EN 26
94 1.1 jklos #define V_RQ_INTR_EN(x) ((x) << S_RQ_INTR_EN)
95 1.1 jklos #define F_RQ_INTR_EN V_RQ_INTR_EN(1U)
96 1.1 jklos
97 1.1 jklos #define S_RQ_GEN 28
98 1.1 jklos #define V_RQ_GEN(x) ((x) << S_RQ_GEN)
99 1.1 jklos #define F_RQ_GEN V_RQ_GEN(1U)
100 1.1 jklos
101 1.1 jklos #define S_CQ_INDEX 0
102 1.1 jklos #define M_CQ_INDEX 0xFFFF
103 1.1 jklos #define V_CQ_INDEX(x) ((x) << S_CQ_INDEX)
104 1.1 jklos #define G_CQ_INDEX(x) (((x) >> S_CQ_INDEX) & M_CQ_INDEX)
105 1.1 jklos
106 1.1 jklos #define S_CQ_SIZE 16
107 1.1 jklos #define M_CQ_SIZE 0xFFFF
108 1.1 jklos #define V_CQ_SIZE(x) ((x) << S_CQ_SIZE)
109 1.1 jklos #define G_CQ_SIZE(x) (((x) >> S_CQ_SIZE) & M_CQ_SIZE)
110 1.1 jklos
111 1.1 jklos #define S_CQ_BASE_HI 0
112 1.1 jklos #define M_CQ_BASE_HI 0xFFFFF
113 1.1 jklos #define V_CQ_BASE_HI(x) ((x) << S_CQ_BASE_HI)
114 1.1 jklos #define G_CQ_BASE_HI(x) (((x) >> S_CQ_BASE_HI) & M_CQ_BASE_HI)
115 1.1 jklos
116 1.1 jklos #define S_CQ_RSPQ 20
117 1.1 jklos #define M_CQ_RSPQ 0x3F
118 1.1 jklos #define V_CQ_RSPQ(x) ((x) << S_CQ_RSPQ)
119 1.1 jklos #define G_CQ_RSPQ(x) (((x) >> S_CQ_RSPQ) & M_CQ_RSPQ)
120 1.1 jklos
121 1.1 jklos #define S_CQ_ASYNC_NOTIF 26
122 1.1 jklos #define V_CQ_ASYNC_NOTIF(x) ((x) << S_CQ_ASYNC_NOTIF)
123 1.1 jklos #define F_CQ_ASYNC_NOTIF V_CQ_ASYNC_NOTIF(1U)
124 1.1 jklos
125 1.1 jklos #define S_CQ_ARMED 27
126 1.1 jklos #define V_CQ_ARMED(x) ((x) << S_CQ_ARMED)
127 1.1 jklos #define F_CQ_ARMED V_CQ_ARMED(1U)
128 1.1 jklos
129 1.1 jklos #define S_CQ_ASYNC_NOTIF_SOL 28
130 1.1 jklos #define V_CQ_ASYNC_NOTIF_SOL(x) ((x) << S_CQ_ASYNC_NOTIF_SOL)
131 1.1 jklos #define F_CQ_ASYNC_NOTIF_SOL V_CQ_ASYNC_NOTIF_SOL(1U)
132 1.1 jklos
133 1.1 jklos #define S_CQ_GEN 29
134 1.1 jklos #define V_CQ_GEN(x) ((x) << S_CQ_GEN)
135 1.1 jklos #define F_CQ_GEN V_CQ_GEN(1U)
136 1.1 jklos
137 1.1 jklos #define S_CQ_ERR 30
138 1.1 jklos #define V_CQ_ERR(x) ((x) << S_CQ_ERR)
139 1.1 jklos #define F_CQ_ERR V_CQ_ERR(1U)
140 1.1 jklos
141 1.1 jklos #define S_CQ_OVERFLOW_MODE 31
142 1.1 jklos #define V_CQ_OVERFLOW_MODE(x) ((x) << S_CQ_OVERFLOW_MODE)
143 1.1 jklos #define F_CQ_OVERFLOW_MODE V_CQ_OVERFLOW_MODE(1U)
144 1.1 jklos
145 1.1 jklos #define S_CQ_CREDITS 0
146 1.1 jklos #define M_CQ_CREDITS 0xFFFF
147 1.1 jklos #define V_CQ_CREDITS(x) ((x) << S_CQ_CREDITS)
148 1.1 jklos #define G_CQ_CREDITS(x) (((x) >> S_CQ_CREDITS) & M_CQ_CREDITS)
149 1.1 jklos
150 1.1 jklos #define S_CQ_CREDIT_THRES 16
151 1.1 jklos #define M_CQ_CREDIT_THRES 0x1FFF
152 1.1 jklos #define V_CQ_CREDIT_THRES(x) ((x) << S_CQ_CREDIT_THRES)
153 1.1 jklos #define G_CQ_CREDIT_THRES(x) (((x) >> S_CQ_CREDIT_THRES) & M_CQ_CREDIT_THRES)
154 1.1 jklos
155 1.1 jklos #define S_FL_BASE_HI 0
156 1.1 jklos #define M_FL_BASE_HI 0xFFFFF
157 1.1 jklos #define V_FL_BASE_HI(x) ((x) << S_FL_BASE_HI)
158 1.1 jklos #define G_FL_BASE_HI(x) (((x) >> S_FL_BASE_HI) & M_FL_BASE_HI)
159 1.1 jklos
160 1.1 jklos #define S_FL_INDEX_LO 20
161 1.1 jklos #define M_FL_INDEX_LO 0xFFF
162 1.1 jklos #define V_FL_INDEX_LO(x) ((x) << S_FL_INDEX_LO)
163 1.1 jklos #define G_FL_INDEX_LO(x) (((x) >> S_FL_INDEX_LO) & M_FL_INDEX_LO)
164 1.1 jklos
165 1.1 jklos #define S_FL_INDEX_HI 0
166 1.1 jklos #define M_FL_INDEX_HI 0xF
167 1.1 jklos #define V_FL_INDEX_HI(x) ((x) << S_FL_INDEX_HI)
168 1.1 jklos #define G_FL_INDEX_HI(x) (((x) >> S_FL_INDEX_HI) & M_FL_INDEX_HI)
169 1.1 jklos
170 1.1 jklos #define S_FL_SIZE 4
171 1.1 jklos #define M_FL_SIZE 0xFFFF
172 1.1 jklos #define V_FL_SIZE(x) ((x) << S_FL_SIZE)
173 1.1 jklos #define G_FL_SIZE(x) (((x) >> S_FL_SIZE) & M_FL_SIZE)
174 1.1 jklos
175 1.1 jklos #define S_FL_GEN 20
176 1.1 jklos #define V_FL_GEN(x) ((x) << S_FL_GEN)
177 1.1 jklos #define F_FL_GEN V_FL_GEN(1U)
178 1.1 jklos
179 1.1 jklos #define S_FL_ENTRY_SIZE_LO 21
180 1.1 jklos #define M_FL_ENTRY_SIZE_LO 0x7FF
181 1.1 jklos #define V_FL_ENTRY_SIZE_LO(x) ((x) << S_FL_ENTRY_SIZE_LO)
182 1.1 jklos #define G_FL_ENTRY_SIZE_LO(x) (((x) >> S_FL_ENTRY_SIZE_LO) & M_FL_ENTRY_SIZE_LO)
183 1.1 jklos
184 1.1 jklos #define S_FL_ENTRY_SIZE_HI 0
185 1.1 jklos #define M_FL_ENTRY_SIZE_HI 0x1FFFFF
186 1.1 jklos #define V_FL_ENTRY_SIZE_HI(x) ((x) << S_FL_ENTRY_SIZE_HI)
187 1.1 jklos #define G_FL_ENTRY_SIZE_HI(x) (((x) >> S_FL_ENTRY_SIZE_HI) & M_FL_ENTRY_SIZE_HI)
188 1.1 jklos
189 1.1 jklos #define S_FL_CONG_THRES 21
190 1.1 jklos #define M_FL_CONG_THRES 0x3FF
191 1.1 jklos #define V_FL_CONG_THRES(x) ((x) << S_FL_CONG_THRES)
192 1.1 jklos #define G_FL_CONG_THRES(x) (((x) >> S_FL_CONG_THRES) & M_FL_CONG_THRES)
193 1.1 jklos
194 1.1 jklos #define S_FL_GTS 31
195 1.1 jklos #define V_FL_GTS(x) ((x) << S_FL_GTS)
196 1.1 jklos #define F_FL_GTS V_FL_GTS(1U)
197 1.1 jklos
198 1.1 jklos #define S_FLD_GEN1 31
199 1.1 jklos #define V_FLD_GEN1(x) ((x) << S_FLD_GEN1)
200 1.1 jklos #define F_FLD_GEN1 V_FLD_GEN1(1U)
201 1.1 jklos
202 1.1 jklos #define S_FLD_GEN2 0
203 1.1 jklos #define V_FLD_GEN2(x) ((x) << S_FLD_GEN2)
204 1.1 jklos #define F_FLD_GEN2 V_FLD_GEN2(1U)
205 1.1 jklos
206 1.1 jklos #define S_RSPD_TXQ1_CR 0
207 1.1 jklos #define M_RSPD_TXQ1_CR 0x7F
208 1.1 jklos #define V_RSPD_TXQ1_CR(x) ((x) << S_RSPD_TXQ1_CR)
209 1.1 jklos #define G_RSPD_TXQ1_CR(x) (((x) >> S_RSPD_TXQ1_CR) & M_RSPD_TXQ1_CR)
210 1.1 jklos
211 1.1 jklos #define S_RSPD_TXQ1_GTS 7
212 1.1 jklos #define V_RSPD_TXQ1_GTS(x) ((x) << S_RSPD_TXQ1_GTS)
213 1.1 jklos #define F_RSPD_TXQ1_GTS V_RSPD_TXQ1_GTS(1U)
214 1.1 jklos
215 1.1 jklos #define S_RSPD_TXQ2_CR 8
216 1.1 jklos #define M_RSPD_TXQ2_CR 0x7F
217 1.1 jklos #define V_RSPD_TXQ2_CR(x) ((x) << S_RSPD_TXQ2_CR)
218 1.1 jklos #define G_RSPD_TXQ2_CR(x) (((x) >> S_RSPD_TXQ2_CR) & M_RSPD_TXQ2_CR)
219 1.1 jklos
220 1.1 jklos #define S_RSPD_TXQ2_GTS 15
221 1.1 jklos #define V_RSPD_TXQ2_GTS(x) ((x) << S_RSPD_TXQ2_GTS)
222 1.1 jklos #define F_RSPD_TXQ2_GTS V_RSPD_TXQ2_GTS(1U)
223 1.1 jklos
224 1.1 jklos #define S_RSPD_TXQ0_CR 16
225 1.1 jklos #define M_RSPD_TXQ0_CR 0x7F
226 1.1 jklos #define V_RSPD_TXQ0_CR(x) ((x) << S_RSPD_TXQ0_CR)
227 1.1 jklos #define G_RSPD_TXQ0_CR(x) (((x) >> S_RSPD_TXQ0_CR) & M_RSPD_TXQ0_CR)
228 1.1 jklos
229 1.1 jklos #define S_RSPD_TXQ0_GTS 23
230 1.1 jklos #define V_RSPD_TXQ0_GTS(x) ((x) << S_RSPD_TXQ0_GTS)
231 1.1 jklos #define F_RSPD_TXQ0_GTS V_RSPD_TXQ0_GTS(1U)
232 1.1 jklos
233 1.1 jklos #define S_RSPD_EOP 24
234 1.1 jklos #define V_RSPD_EOP(x) ((x) << S_RSPD_EOP)
235 1.1 jklos #define F_RSPD_EOP V_RSPD_EOP(1U)
236 1.1 jklos #define G_RSPD_EOP(x) ((x) & F_RSPD_EOP)
237 1.1 jklos
238 1.1 jklos #define S_RSPD_SOP 25
239 1.1 jklos #define V_RSPD_SOP(x) ((x) << S_RSPD_SOP)
240 1.1 jklos #define F_RSPD_SOP V_RSPD_SOP(1U)
241 1.1 jklos #define G_RSPD_SOP(x) ((x) & F_RSPD_SOP)
242 1.1 jklos
243 1.1 jklos #define G_RSPD_SOP_EOP(x) ((G_RSPD_SOP(x) | G_RSPD_EOP(x)) >> S_RSPD_EOP)
244 1.1 jklos
245 1.1 jklos #define S_RSPD_ASYNC_NOTIF 26
246 1.1 jklos #define V_RSPD_ASYNC_NOTIF(x) ((x) << S_RSPD_ASYNC_NOTIF)
247 1.1 jklos #define F_RSPD_ASYNC_NOTIF V_RSPD_ASYNC_NOTIF(1U)
248 1.1 jklos
249 1.1 jklos #define S_RSPD_FL0_GTS 27
250 1.1 jklos #define V_RSPD_FL0_GTS(x) ((x) << S_RSPD_FL0_GTS)
251 1.1 jklos #define F_RSPD_FL0_GTS V_RSPD_FL0_GTS(1U)
252 1.1 jklos
253 1.1 jklos #define S_RSPD_FL1_GTS 28
254 1.1 jklos #define V_RSPD_FL1_GTS(x) ((x) << S_RSPD_FL1_GTS)
255 1.1 jklos #define F_RSPD_FL1_GTS V_RSPD_FL1_GTS(1U)
256 1.1 jklos
257 1.1 jklos #define S_RSPD_IMM_DATA_VALID 29
258 1.1 jklos #define V_RSPD_IMM_DATA_VALID(x) ((x) << S_RSPD_IMM_DATA_VALID)
259 1.1 jklos #define F_RSPD_IMM_DATA_VALID V_RSPD_IMM_DATA_VALID(1U)
260 1.1 jklos
261 1.1 jklos #define S_RSPD_OFFLOAD 30
262 1.1 jklos #define V_RSPD_OFFLOAD(x) ((x) << S_RSPD_OFFLOAD)
263 1.1 jklos #define F_RSPD_OFFLOAD V_RSPD_OFFLOAD(1U)
264 1.1 jklos
265 1.1 jklos #define S_RSPD_GEN1 31
266 1.1 jklos #define V_RSPD_GEN1(x) ((x) << S_RSPD_GEN1)
267 1.1 jklos #define F_RSPD_GEN1 V_RSPD_GEN1(1U)
268 1.1 jklos
269 1.1 jklos #define S_RSPD_LEN 0
270 1.1 jklos #define M_RSPD_LEN 0x7FFFFFFF
271 1.1 jklos #define V_RSPD_LEN(x) ((x) << S_RSPD_LEN)
272 1.1 jklos #define G_RSPD_LEN(x) (((x) >> S_RSPD_LEN) & M_RSPD_LEN)
273 1.1 jklos
274 1.1 jklos #define S_RSPD_FLQ 31
275 1.1 jklos #define V_RSPD_FLQ(x) ((x) << S_RSPD_FLQ)
276 1.1 jklos #define F_RSPD_FLQ V_RSPD_FLQ(1U)
277 1.1 jklos
278 1.1 jklos #define S_RSPD_GEN2 0
279 1.1 jklos #define V_RSPD_GEN2(x) ((x) << S_RSPD_GEN2)
280 1.1 jklos #define F_RSPD_GEN2 V_RSPD_GEN2(1U)
281 1.1 jklos
282 1.1 jklos #define S_RSPD_INR_VEC 1
283 1.1 jklos #define M_RSPD_INR_VEC 0x7F
284 1.1 jklos #define V_RSPD_INR_VEC(x) ((x) << S_RSPD_INR_VEC)
285 1.1 jklos #define G_RSPD_INR_VEC(x) (((x) >> S_RSPD_INR_VEC) & M_RSPD_INR_VEC)
286 1.1 jklos
287 1.1 jklos #endif /* _SGE_DEFS_H */
288