diff options
Diffstat (limited to 'arch/mips/include/asm/octeon/cvmx-wqe.h')
-rw-r--r-- | arch/mips/include/asm/octeon/cvmx-wqe.h | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/arch/mips/include/asm/octeon/cvmx-wqe.h b/arch/mips/include/asm/octeon/cvmx-wqe.h index df762389e271..aa0d3d0de75c 100644 --- a/arch/mips/include/asm/octeon/cvmx-wqe.h +++ b/arch/mips/include/asm/octeon/cvmx-wqe.h | |||
@@ -101,23 +101,23 @@ typedef union { | |||
101 | * - 1 = Malformed L4 | 101 | * - 1 = Malformed L4 |
102 | * - 2 = L4 Checksum Error: the L4 checksum value is | 102 | * - 2 = L4 Checksum Error: the L4 checksum value is |
103 | * - 3 = UDP Length Error: The UDP length field would | 103 | * - 3 = UDP Length Error: The UDP length field would |
104 | * make the UDP data longer than what remains in | 104 | * make the UDP data longer than what remains in |
105 | * the IP packet (as defined by the IP header | 105 | * the IP packet (as defined by the IP header |
106 | * length field). | 106 | * length field). |
107 | * - 4 = Bad L4 Port: either the source or destination | 107 | * - 4 = Bad L4 Port: either the source or destination |
108 | * TCP/UDP port is 0. | 108 | * TCP/UDP port is 0. |
109 | * - 8 = TCP FIN Only: the packet is TCP and only the | 109 | * - 8 = TCP FIN Only: the packet is TCP and only the |
110 | * FIN flag set. | 110 | * FIN flag set. |
111 | * - 9 = TCP No Flags: the packet is TCP and no flags | 111 | * - 9 = TCP No Flags: the packet is TCP and no flags |
112 | * are set. | 112 | * are set. |
113 | * - 10 = TCP FIN RST: the packet is TCP and both FIN | 113 | * - 10 = TCP FIN RST: the packet is TCP and both FIN |
114 | * and RST are set. | 114 | * and RST are set. |
115 | * - 11 = TCP SYN URG: the packet is TCP and both SYN | 115 | * - 11 = TCP SYN URG: the packet is TCP and both SYN |
116 | * and URG are set. | 116 | * and URG are set. |
117 | * - 12 = TCP SYN RST: the packet is TCP and both SYN | 117 | * - 12 = TCP SYN RST: the packet is TCP and both SYN |
118 | * and RST are set. | 118 | * and RST are set. |
119 | * - 13 = TCP SYN FIN: the packet is TCP and both SYN | 119 | * - 13 = TCP SYN FIN: the packet is TCP and both SYN |
120 | * and FIN are set. | 120 | * and FIN are set. |
121 | */ | 121 | */ |
122 | uint64_t L4_error:1; | 122 | uint64_t L4_error:1; |
123 | /* set if the packet is a fragment */ | 123 | /* set if the packet is a fragment */ |
@@ -127,16 +127,16 @@ typedef union { | |||
127 | * failure indicated in err_code below, decode: | 127 | * failure indicated in err_code below, decode: |
128 | * | 128 | * |
129 | * - 1 = Not IP: the IP version field is neither 4 nor | 129 | * - 1 = Not IP: the IP version field is neither 4 nor |
130 | * 6. | 130 | * 6. |
131 | * - 2 = IPv4 Header Checksum Error: the IPv4 header | 131 | * - 2 = IPv4 Header Checksum Error: the IPv4 header |
132 | * has a checksum violation. | 132 | * has a checksum violation. |
133 | * - 3 = IP Malformed Header: the packet is not long | 133 | * - 3 = IP Malformed Header: the packet is not long |
134 | * enough to contain the IP header. | 134 | * enough to contain the IP header. |
135 | * - 4 = IP Malformed: the packet is not long enough | 135 | * - 4 = IP Malformed: the packet is not long enough |
136 | * to contain the bytes indicated by the IP | 136 | * to contain the bytes indicated by the IP |
137 | * header. Pad is allowed. | 137 | * header. Pad is allowed. |
138 | * - 5 = IP TTL Hop: the IPv4 TTL field or the IPv6 | 138 | * - 5 = IP TTL Hop: the IPv4 TTL field or the IPv6 |
139 | * Hop Count field are zero. | 139 | * Hop Count field are zero. |
140 | * - 6 = IP Options | 140 | * - 6 = IP Options |
141 | */ | 141 | */ |
142 | uint64_t IP_exc:1; | 142 | uint64_t IP_exc:1; |
@@ -243,46 +243,46 @@ typedef union { | |||
243 | * decode: | 243 | * decode: |
244 | * | 244 | * |
245 | * - 1 = partial error: a packet was partially | 245 | * - 1 = partial error: a packet was partially |
246 | * received, but internal buffering / bandwidth | 246 | * received, but internal buffering / bandwidth |
247 | * was not adequate to receive the entire | 247 | * was not adequate to receive the entire |
248 | * packet. | 248 | * packet. |
249 | * - 2 = jabber error: the RGMII packet was too large | 249 | * - 2 = jabber error: the RGMII packet was too large |
250 | * and is truncated. | 250 | * and is truncated. |
251 | * - 3 = overrun error: the RGMII packet is longer | 251 | * - 3 = overrun error: the RGMII packet is longer |
252 | * than allowed and had an FCS error. | 252 | * than allowed and had an FCS error. |
253 | * - 4 = oversize error: the RGMII packet is longer | 253 | * - 4 = oversize error: the RGMII packet is longer |
254 | * than allowed. | 254 | * than allowed. |
255 | * - 5 = alignment error: the RGMII packet is not an | 255 | * - 5 = alignment error: the RGMII packet is not an |
256 | * integer number of bytes | 256 | * integer number of bytes |
257 | * and had an FCS error (100M and 10M only). | 257 | * and had an FCS error (100M and 10M only). |
258 | * - 6 = fragment error: the RGMII packet is shorter | 258 | * - 6 = fragment error: the RGMII packet is shorter |
259 | * than allowed and had an FCS error. | 259 | * than allowed and had an FCS error. |
260 | * - 7 = GMX FCS error: the RGMII packet had an FCS | 260 | * - 7 = GMX FCS error: the RGMII packet had an FCS |
261 | * error. | 261 | * error. |
262 | * - 8 = undersize error: the RGMII packet is shorter | 262 | * - 8 = undersize error: the RGMII packet is shorter |
263 | * than allowed. | 263 | * than allowed. |
264 | * - 9 = extend error: the RGMII packet had an extend | 264 | * - 9 = extend error: the RGMII packet had an extend |
265 | * error. | 265 | * error. |
266 | * - 10 = length mismatch error: the RGMII packet had | 266 | * - 10 = length mismatch error: the RGMII packet had |
267 | * a length that did not match the length field | 267 | * a length that did not match the length field |
268 | * in the L2 HDR. | 268 | * in the L2 HDR. |
269 | * - 11 = RGMII RX error/SPI4 DIP4 Error: the RGMII | 269 | * - 11 = RGMII RX error/SPI4 DIP4 Error: the RGMII |
270 | * packet had one or more data reception errors | 270 | * packet had one or more data reception errors |
271 | * (RXERR) or the SPI4 packet had one or more | 271 | * (RXERR) or the SPI4 packet had one or more |
272 | * DIP4 errors. | 272 | * DIP4 errors. |
273 | * - 12 = RGMII skip error/SPI4 Abort Error: the RGMII | 273 | * - 12 = RGMII skip error/SPI4 Abort Error: the RGMII |
274 | * packet was not large enough to cover the | 274 | * packet was not large enough to cover the |
275 | * skipped bytes or the SPI4 packet was | 275 | * skipped bytes or the SPI4 packet was |
276 | * terminated with an About EOPS. | 276 | * terminated with an About EOPS. |
277 | * - 13 = RGMII nibble error/SPI4 Port NXA Error: the | 277 | * - 13 = RGMII nibble error/SPI4 Port NXA Error: the |
278 | * RGMII packet had a studder error (data not | 278 | * RGMII packet had a studder error (data not |
279 | * repeated - 10/100M only) or the SPI4 packet | 279 | * repeated - 10/100M only) or the SPI4 packet |
280 | * was sent to an NXA. | 280 | * was sent to an NXA. |
281 | * - 16 = FCS error: a SPI4.2 packet had an FCS error. | 281 | * - 16 = FCS error: a SPI4.2 packet had an FCS error. |
282 | * - 17 = Skip error: a packet was not large enough to | 282 | * - 17 = Skip error: a packet was not large enough to |
283 | * cover the skipped bytes. | 283 | * cover the skipped bytes. |
284 | * - 18 = L2 header malformed: the packet is not long | 284 | * - 18 = L2 header malformed: the packet is not long |
285 | * enough to contain the L2. | 285 | * enough to contain the L2. |
286 | */ | 286 | */ |
287 | 287 | ||
288 | uint64_t rcv_error:1; | 288 | uint64_t rcv_error:1; |
@@ -309,7 +309,7 @@ typedef struct { | |||
309 | 309 | ||
310 | /***************************************************************** | 310 | /***************************************************************** |
311 | * WORD 0 | 311 | * WORD 0 |
312 | * HW WRITE: the following 64 bits are filled by HW when a packet arrives | 312 | * HW WRITE: the following 64 bits are filled by HW when a packet arrives |
313 | */ | 313 | */ |
314 | 314 | ||
315 | /** | 315 | /** |
@@ -323,14 +323,14 @@ typedef struct { | |||
323 | /** | 323 | /** |
324 | * Next pointer used by hardware for list maintenance. | 324 | * Next pointer used by hardware for list maintenance. |
325 | * May be written/read by HW before the work queue | 325 | * May be written/read by HW before the work queue |
326 | * entry is scheduled to a PP | 326 | * entry is scheduled to a PP |
327 | * (Only 36 bits used in Octeon 1) | 327 | * (Only 36 bits used in Octeon 1) |
328 | */ | 328 | */ |
329 | uint64_t next_ptr:40; | 329 | uint64_t next_ptr:40; |
330 | 330 | ||
331 | /***************************************************************** | 331 | /***************************************************************** |
332 | * WORD 1 | 332 | * WORD 1 |
333 | * HW WRITE: the following 64 bits are filled by HW when a packet arrives | 333 | * HW WRITE: the following 64 bits are filled by HW when a packet arrives |
334 | */ | 334 | */ |
335 | 335 | ||
336 | /** | 336 | /** |
@@ -362,8 +362,8 @@ typedef struct { | |||
362 | 362 | ||
363 | /** | 363 | /** |
364 | * WORD 2 HW WRITE: the following 64-bits are filled in by | 364 | * WORD 2 HW WRITE: the following 64-bits are filled in by |
365 | * hardware when a packet arrives This indicates a variety of | 365 | * hardware when a packet arrives This indicates a variety of |
366 | * status and error conditions. | 366 | * status and error conditions. |
367 | */ | 367 | */ |
368 | cvmx_pip_wqe_word2 word2; | 368 | cvmx_pip_wqe_word2 word2; |
369 | 369 | ||
@@ -373,15 +373,15 @@ typedef struct { | |||
373 | union cvmx_buf_ptr packet_ptr; | 373 | union cvmx_buf_ptr packet_ptr; |
374 | 374 | ||
375 | /** | 375 | /** |
376 | * HW WRITE: octeon will fill in a programmable amount from the | 376 | * HW WRITE: octeon will fill in a programmable amount from the |
377 | * packet, up to (at most, but perhaps less) the amount | 377 | * packet, up to (at most, but perhaps less) the amount |
378 | * needed to fill the work queue entry to 128 bytes | 378 | * needed to fill the work queue entry to 128 bytes |
379 | * | 379 | * |
380 | * If the packet is recognized to be IP, the hardware starts | 380 | * If the packet is recognized to be IP, the hardware starts |
381 | * (except that the IPv4 header is padded for appropriate | 381 | * (except that the IPv4 header is padded for appropriate |
382 | * alignment) writing here where the IP header starts. If the | 382 | * alignment) writing here where the IP header starts. If the |
383 | * packet is not recognized to be IP, the hardware starts | 383 | * packet is not recognized to be IP, the hardware starts |
384 | * writing the beginning of the packet here. | 384 | * writing the beginning of the packet here. |
385 | */ | 385 | */ |
386 | uint8_t packet_data[96]; | 386 | uint8_t packet_data[96]; |
387 | 387 | ||