1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2001-2019
5 #ifndef _ICE_LAN_TX_RX_H_
6 #define _ICE_LAN_TX_RX_H_
10 union ice_16byte_rx_desc {
12 __le64 pkt_addr; /* Packet buffer address */
13 __le64 hdr_addr; /* Header buffer address */
18 __le16 mirroring_status;
22 __le32 rss; /* RSS Hash */
23 __le32 fd_id; /* Flow Director filter ID */
27 /* ext status/error/PTYPE/length */
28 __le64 status_error_len;
33 union ice_32byte_rx_desc {
35 __le64 pkt_addr; /* Packet buffer address */
36 __le64 hdr_addr; /* Header buffer address */
37 /* bit 0 of hdr_addr is DD bit */
44 __le16 mirroring_status;
48 __le32 rss; /* RSS Hash */
49 __le32 fd_id; /* Flow Director filter ID */
53 /* status/error/PTYPE/length */
54 __le64 status_error_len;
57 __le16 ext_status; /* extended status */
69 struct ice_fltr_desc {
70 __le64 qidx_compq_space_stat;
71 __le64 dtype_cmd_vsi_fdid;
74 #define ICE_FXD_FLTR_QW0_QINDEX_S 0
75 #define ICE_FXD_FLTR_QW0_QINDEX_M (0x7FFULL << ICE_FXD_FLTR_QW0_QINDEX_S)
76 #define ICE_FXD_FLTR_QW0_COMP_Q_S 11
77 #define ICE_FXD_FLTR_QW0_COMP_Q_M BIT_ULL(ICE_FXD_FLTR_QW0_COMP_Q_S)
78 #define ICE_FXD_FLTR_QW0_COMP_Q_ZERO 0x0ULL
79 #define ICE_FXD_FLTR_QW0_COMP_Q_QINDX 0x1ULL
81 #define ICE_FXD_FLTR_QW0_COMP_REPORT_S 12
82 #define ICE_FXD_FLTR_QW0_COMP_REPORT_M \
83 (0x3ULL << ICE_FXD_FLTR_QW0_COMP_REPORT_S)
84 #define ICE_FXD_FLTR_QW0_COMP_REPORT_NONE 0x0ULL
85 #define ICE_FXD_FLTR_QW0_COMP_REPORT_SW_FAIL 0x1ULL
86 #define ICE_FXD_FLTR_QW0_COMP_REPORT_SW 0x2ULL
88 #define ICE_FXD_FLTR_QW0_FD_SPACE_S 14
89 #define ICE_FXD_FLTR_QW0_FD_SPACE_M (0x3ULL << ICE_FXD_FLTR_QW0_FD_SPACE_S)
90 #define ICE_FXD_FLTR_QW0_FD_SPACE_GUAR 0x0ULL
91 #define ICE_FXD_FLTR_QW0_FD_SPACE_BEST_EFFORT 0x1ULL
92 #define ICE_FXD_FLTR_QW0_FD_SPACE_GUAR_BEST 0x2ULL
93 #define ICE_FXD_FLTR_QW0_FD_SPACE_BEST_GUAR 0x3ULL
95 #define ICE_FXD_FLTR_QW0_STAT_CNT_S 16
96 #define ICE_FXD_FLTR_QW0_STAT_CNT_M \
97 (0x1FFFULL << ICE_FXD_FLTR_QW0_STAT_CNT_S)
98 #define ICE_FXD_FLTR_QW0_STAT_ENA_S 29
99 #define ICE_FXD_FLTR_QW0_STAT_ENA_M (0x3ULL << ICE_FXD_FLTR_QW0_STAT_ENA_S)
100 #define ICE_FXD_FLTR_QW0_STAT_ENA_NONE 0x0ULL
101 #define ICE_FXD_FLTR_QW0_STAT_ENA_PKTS 0x1ULL
102 #define ICE_FXD_FLTR_QW0_STAT_ENA_BYTES 0x2ULL
103 #define ICE_FXD_FLTR_QW0_STAT_ENA_PKTS_BYTES 0x3ULL
105 #define ICE_FXD_FLTR_QW0_EVICT_ENA_S 31
106 #define ICE_FXD_FLTR_QW0_EVICT_ENA_M BIT_ULL(ICE_FXD_FLTR_QW0_EVICT_ENA_S)
107 #define ICE_FXD_FLTR_QW0_EVICT_ENA_FALSE 0x0ULL
108 #define ICE_FXD_FLTR_QW0_EVICT_ENA_TRUE 0x1ULL
110 #define ICE_FXD_FLTR_QW0_TO_Q_S 32
111 #define ICE_FXD_FLTR_QW0_TO_Q_M (0x7ULL << ICE_FXD_FLTR_QW0_TO_Q_S)
112 #define ICE_FXD_FLTR_QW0_TO_Q_EQUALS_QINDEX 0x0ULL
114 #define ICE_FXD_FLTR_QW0_TO_Q_PRI_S 35
115 #define ICE_FXD_FLTR_QW0_TO_Q_PRI_M (0x7ULL << ICE_FXD_FLTR_QW0_TO_Q_PRI_S)
116 #define ICE_FXD_FLTR_QW0_TO_Q_PRIO1 0x1ULL
118 #define ICE_FXD_FLTR_QW0_DPU_RECIPE_S 38
119 #define ICE_FXD_FLTR_QW0_DPU_RECIPE_M \
120 (0x3ULL << ICE_FXD_FLTR_QW0_DPU_RECIPE_S)
121 #define ICE_FXD_FLTR_QW0_DPU_RECIPE_DFLT 0x0ULL
123 #define ICE_FXD_FLTR_QW0_DROP_S 40
124 #define ICE_FXD_FLTR_QW0_DROP_M BIT_ULL(ICE_FXD_FLTR_QW0_DROP_S)
125 #define ICE_FXD_FLTR_QW0_DROP_NO 0x0ULL
126 #define ICE_FXD_FLTR_QW0_DROP_YES 0x1ULL
128 #define ICE_FXD_FLTR_QW0_FLEX_PRI_S 41
129 #define ICE_FXD_FLTR_QW0_FLEX_PRI_M (0x7ULL << ICE_FXD_FLTR_QW0_FLEX_PRI_S)
130 #define ICE_FXD_FLTR_QW0_FLEX_PRI_NONE 0x0ULL
132 #define ICE_FXD_FLTR_QW0_FLEX_MDID_S 44
133 #define ICE_FXD_FLTR_QW0_FLEX_MDID_M (0xFULL << ICE_FXD_FLTR_QW0_FLEX_MDID_S)
134 #define ICE_FXD_FLTR_QW0_FLEX_MDID0 0x0ULL
136 #define ICE_FXD_FLTR_QW0_FLEX_VAL_S 48
137 #define ICE_FXD_FLTR_QW0_FLEX_VAL_M \
138 (0xFFFFULL << ICE_FXD_FLTR_QW0_FLEX_VAL_S)
139 #define ICE_FXD_FLTR_QW0_FLEX_VAL0 0x0ULL
141 #define ICE_FXD_FLTR_QW1_DTYPE_S 0
142 #define ICE_FXD_FLTR_QW1_DTYPE_M (0xFULL << ICE_FXD_FLTR_QW1_DTYPE_S)
143 #define ICE_FXD_FLTR_QW1_PCMD_S 4
144 #define ICE_FXD_FLTR_QW1_PCMD_M BIT_ULL(ICE_FXD_FLTR_QW1_PCMD_S)
145 #define ICE_FXD_FLTR_QW1_PCMD_ADD 0x0ULL
146 #define ICE_FXD_FLTR_QW1_PCMD_REMOVE 0x1ULL
148 #define ICE_FXD_FLTR_QW1_PROF_PRI_S 5
149 #define ICE_FXD_FLTR_QW1_PROF_PRI_M (0x7ULL << ICE_FXD_FLTR_QW1_PROF_PRI_S)
150 #define ICE_FXD_FLTR_QW1_PROF_PRIO_ZERO 0x0ULL
152 #define ICE_FXD_FLTR_QW1_PROF_S 8
153 #define ICE_FXD_FLTR_QW1_PROF_M (0x3FULL << ICE_FXD_FLTR_QW1_PROF_S)
154 #define ICE_FXD_FLTR_QW1_PROF_ZERO 0x0ULL
156 #define ICE_FXD_FLTR_QW1_FD_VSI_S 14
157 #define ICE_FXD_FLTR_QW1_FD_VSI_M (0x3FFULL << ICE_FXD_FLTR_QW1_FD_VSI_S)
158 #define ICE_FXD_FLTR_QW1_SWAP_S 24
159 #define ICE_FXD_FLTR_QW1_SWAP_M BIT_ULL(ICE_FXD_FLTR_QW1_SWAP_S)
160 #define ICE_FXD_FLTR_QW1_SWAP_NOT_SET 0x0ULL
161 #define ICE_FXD_FLTR_QW1_SWAP_SET 0x1ULL
163 #define ICE_FXD_FLTR_QW1_FDID_PRI_S 25
164 #define ICE_FXD_FLTR_QW1_FDID_PRI_M (0x7ULL << ICE_FXD_FLTR_QW1_FDID_PRI_S)
165 #define ICE_FXD_FLTR_QW1_FDID_PRI_ONE 0x1ULL
167 #define ICE_FXD_FLTR_QW1_FDID_MDID_S 28
168 #define ICE_FXD_FLTR_QW1_FDID_MDID_M (0xFULL << ICE_FXD_FLTR_QW1_FDID_MDID_S)
169 #define ICE_FXD_FLTR_QW1_FDID_MDID_FD 0x05ULL
171 #define ICE_FXD_FLTR_QW1_FDID_S 32
172 #define ICE_FXD_FLTR_QW1_FDID_M \
173 (0xFFFFFFFFULL << ICE_FXD_FLTR_QW1_FDID_S)
174 #define ICE_FXD_FLTR_QW1_FDID_ZERO 0x0ULL
177 enum ice_rx_desc_status_bits {
178 /* Note: These are predefined bit offsets */
179 ICE_RX_DESC_STATUS_DD_S = 0,
180 ICE_RX_DESC_STATUS_EOF_S = 1,
181 ICE_RX_DESC_STATUS_L2TAG1P_S = 2,
182 ICE_RX_DESC_STATUS_L3L4P_S = 3,
183 ICE_RX_DESC_STATUS_CRCP_S = 4,
184 ICE_RX_DESC_STATUS_TSYNINDX_S = 5,
185 ICE_RX_DESC_STATUS_TSYNVALID_S = 7,
186 ICE_RX_DESC_STATUS_EXT_UDP_0_S = 8,
187 ICE_RX_DESC_STATUS_UMBCAST_S = 9,
188 ICE_RX_DESC_STATUS_FLM_S = 11,
189 ICE_RX_DESC_STATUS_FLTSTAT_S = 12,
190 ICE_RX_DESC_STATUS_LPBK_S = 14,
191 ICE_RX_DESC_STATUS_IPV6EXADD_S = 15,
192 ICE_RX_DESC_STATUS_RESERVED2_S = 16,
193 ICE_RX_DESC_STATUS_INT_UDP_0_S = 18,
194 ICE_RX_DESC_STATUS_LAST /* this entry must be last!!! */
197 #define ICE_RXD_QW1_STATUS_S 0
198 #define ICE_RXD_QW1_STATUS_M ((BIT(ICE_RX_DESC_STATUS_LAST) - 1) << \
199 ICE_RXD_QW1_STATUS_S)
201 #define ICE_RXD_QW1_STATUS_TSYNINDX_S ICE_RX_DESC_STATUS_TSYNINDX_S
202 #define ICE_RXD_QW1_STATUS_TSYNINDX_M (0x3UL << ICE_RXD_QW1_STATUS_TSYNINDX_S)
204 #define ICE_RXD_QW1_STATUS_TSYNVALID_S ICE_RX_DESC_STATUS_TSYNVALID_S
205 #define ICE_RXD_QW1_STATUS_TSYNVALID_M BIT_ULL(ICE_RXD_QW1_STATUS_TSYNVALID_S)
208 enum ice_rx_desc_fltstat_values {
209 ICE_RX_DESC_FLTSTAT_NO_DATA = 0,
210 ICE_RX_DESC_FLTSTAT_RSV_FD_ID = 1, /* 16byte desc? FD_ID : RSV */
211 ICE_RX_DESC_FLTSTAT_RSV = 2,
212 ICE_RX_DESC_FLTSTAT_RSS_HASH = 3,
216 #define ICE_RXD_QW1_ERROR_S 19
217 #define ICE_RXD_QW1_ERROR_M (0xFFUL << ICE_RXD_QW1_ERROR_S)
219 enum ice_rx_desc_error_bits {
220 /* Note: These are predefined bit offsets */
221 ICE_RX_DESC_ERROR_RXE_S = 0,
222 ICE_RX_DESC_ERROR_RECIPE_S = 1,
223 ICE_RX_DESC_ERROR_HBO_S = 2,
224 ICE_RX_DESC_ERROR_L3L4E_S = 3, /* 3 BITS */
225 ICE_RX_DESC_ERROR_IPE_S = 3,
226 ICE_RX_DESC_ERROR_L4E_S = 4,
227 ICE_RX_DESC_ERROR_EIPE_S = 5,
228 ICE_RX_DESC_ERROR_OVERSIZE_S = 6,
229 ICE_RX_DESC_ERROR_PPRS_S = 7
232 enum ice_rx_desc_error_l3l4e_masks {
233 ICE_RX_DESC_ERROR_L3L4E_NONE = 0,
234 ICE_RX_DESC_ERROR_L3L4E_PROT = 1,
237 #define ICE_RXD_QW1_PTYPE_S 30
238 #define ICE_RXD_QW1_PTYPE_M (0xFFULL << ICE_RXD_QW1_PTYPE_S)
240 /* Packet type non-ip values */
241 enum ice_rx_l2_ptype {
242 ICE_RX_PTYPE_L2_RESERVED = 0,
243 ICE_RX_PTYPE_L2_MAC_PAY2 = 1,
244 ICE_RX_PTYPE_L2_FIP_PAY2 = 3,
245 ICE_RX_PTYPE_L2_OUI_PAY2 = 4,
246 ICE_RX_PTYPE_L2_MACCNTRL_PAY2 = 5,
247 ICE_RX_PTYPE_L2_LLDP_PAY2 = 6,
248 ICE_RX_PTYPE_L2_ECP_PAY2 = 7,
249 ICE_RX_PTYPE_L2_EVB_PAY2 = 8,
250 ICE_RX_PTYPE_L2_QCN_PAY2 = 9,
251 ICE_RX_PTYPE_L2_EAPOL_PAY2 = 10,
252 ICE_RX_PTYPE_L2_ARP = 11,
255 struct ice_rx_ptype_decoded {
262 u32 tunnel_end_prot:2;
263 u32 tunnel_end_frag:1;
268 enum ice_rx_ptype_outer_ip {
269 ICE_RX_PTYPE_OUTER_L2 = 0,
270 ICE_RX_PTYPE_OUTER_IP = 1,
273 enum ice_rx_ptype_outer_ip_ver {
274 ICE_RX_PTYPE_OUTER_NONE = 0,
275 ICE_RX_PTYPE_OUTER_IPV4 = 1,
276 ICE_RX_PTYPE_OUTER_IPV6 = 2,
279 enum ice_rx_ptype_outer_fragmented {
280 ICE_RX_PTYPE_NOT_FRAG = 0,
281 ICE_RX_PTYPE_FRAG = 1,
284 enum ice_rx_ptype_tunnel_type {
285 ICE_RX_PTYPE_TUNNEL_NONE = 0,
286 ICE_RX_PTYPE_TUNNEL_IP_IP = 1,
287 ICE_RX_PTYPE_TUNNEL_IP_GRENAT = 2,
288 ICE_RX_PTYPE_TUNNEL_IP_GRENAT_MAC = 3,
289 ICE_RX_PTYPE_TUNNEL_IP_GRENAT_MAC_VLAN = 4,
292 enum ice_rx_ptype_tunnel_end_prot {
293 ICE_RX_PTYPE_TUNNEL_END_NONE = 0,
294 ICE_RX_PTYPE_TUNNEL_END_IPV4 = 1,
295 ICE_RX_PTYPE_TUNNEL_END_IPV6 = 2,
298 enum ice_rx_ptype_inner_prot {
299 ICE_RX_PTYPE_INNER_PROT_NONE = 0,
300 ICE_RX_PTYPE_INNER_PROT_UDP = 1,
301 ICE_RX_PTYPE_INNER_PROT_TCP = 2,
302 ICE_RX_PTYPE_INNER_PROT_SCTP = 3,
303 ICE_RX_PTYPE_INNER_PROT_ICMP = 4,
306 enum ice_rx_ptype_payload_layer {
307 ICE_RX_PTYPE_PAYLOAD_LAYER_NONE = 0,
308 ICE_RX_PTYPE_PAYLOAD_LAYER_PAY2 = 1,
309 ICE_RX_PTYPE_PAYLOAD_LAYER_PAY3 = 2,
310 ICE_RX_PTYPE_PAYLOAD_LAYER_PAY4 = 3,
314 #define ICE_RXD_QW1_LEN_PBUF_S 38
315 #define ICE_RXD_QW1_LEN_PBUF_M (0x3FFFULL << ICE_RXD_QW1_LEN_PBUF_S)
317 #define ICE_RXD_QW1_LEN_HBUF_S 52
318 #define ICE_RXD_QW1_LEN_HBUF_M (0x7FFULL << ICE_RXD_QW1_LEN_HBUF_S)
320 #define ICE_RXD_QW1_LEN_SPH_S 63
321 #define ICE_RXD_QW1_LEN_SPH_M BIT_ULL(ICE_RXD_QW1_LEN_SPH_S)
324 enum ice_rx_desc_ext_status_bits {
325 /* Note: These are predefined bit offsets */
326 ICE_RX_DESC_EXT_STATUS_L2TAG2P_S = 0,
327 ICE_RX_DESC_EXT_STATUS_L2TAG3P_S = 1,
328 ICE_RX_DESC_EXT_STATUS_FLEXBL_S = 2,
329 ICE_RX_DESC_EXT_STATUS_FLEXBH_S = 4,
330 ICE_RX_DESC_EXT_STATUS_FDLONGB_S = 9,
331 ICE_RX_DESC_EXT_STATUS_PELONGB_S = 11,
335 enum ice_rx_desc_pe_status_bits {
336 /* Note: These are predefined bit offsets */
337 ICE_RX_DESC_PE_STATUS_QPID_S = 0, /* 18 BITS */
338 ICE_RX_DESC_PE_STATUS_L4PORT_S = 0, /* 16 BITS */
339 ICE_RX_DESC_PE_STATUS_IPINDEX_S = 16, /* 8 BITS */
340 ICE_RX_DESC_PE_STATUS_QPIDHIT_S = 24,
341 ICE_RX_DESC_PE_STATUS_APBVTHIT_S = 25,
342 ICE_RX_DESC_PE_STATUS_PORTV_S = 26,
343 ICE_RX_DESC_PE_STATUS_URG_S = 27,
344 ICE_RX_DESC_PE_STATUS_IPFRAG_S = 28,
345 ICE_RX_DESC_PE_STATUS_IPOPT_S = 29
348 #define ICE_RX_PROG_STATUS_DESC_LEN_S 38
349 #define ICE_RX_PROG_STATUS_DESC_LEN 0x2000000
351 #define ICE_RX_PROG_STATUS_DESC_QW1_PROGID_S 2
352 #define ICE_RX_PROG_STATUS_DESC_QW1_PROGID_M \
353 (0x7UL << ICE_RX_PROG_STATUS_DESC_QW1_PROGID_S)
356 #define ICE_RX_PROG_STATUS_DESC_QW1_ERROR_S 19
357 #define ICE_RX_PROG_STATUS_DESC_QW1_ERROR_M \
358 (0x3FUL << ICE_RX_PROG_STATUS_DESC_QW1_ERROR_S)
360 enum ice_rx_prog_status_desc_status_bits {
361 /* Note: These are predefined bit offsets */
362 ICE_RX_PROG_STATUS_DESC_DD_S = 0,
363 ICE_RX_PROG_STATUS_DESC_PROG_ID_S = 2 /* 3 BITS */
366 enum ice_rx_prog_status_desc_prog_id_masks {
367 ICE_RX_PROG_STATUS_DESC_FD_FLTR_STATUS = 1,
370 enum ice_rx_prog_status_desc_error_bits {
371 /* Note: These are predefined bit offsets */
372 ICE_RX_PROG_STATUS_DESC_FD_TBL_FULL_S = 0,
373 ICE_RX_PROG_STATUS_DESC_NO_FD_ENTRY_S = 1,
376 /* Rx Flex Descriptor
377 * This descriptor is used instead of the legacy version descriptor when
378 * ice_rlan_ctx.adv_desc is set
380 union ice_32b_rx_flex_desc {
382 __le64 pkt_addr; /* Packet buffer address */
383 __le64 hdr_addr; /* Header buffer address */
384 /* bit 0 of hdr_addr is DD bit */
390 u8 rxdid; /* descriptor builder profile ID */
391 u8 mir_id_umb_cast; /* mirror=[5:0], umb=[7:6] */
392 __le16 ptype_flex_flags0; /* ptype=[9:0], ff0=[15:10] */
393 __le16 pkt_len; /* [15:14] are reserved */
394 __le16 hdr_len_sph_flex_flags1; /* header=[10:0] */
396 /* ff1/ext=[15:12] */
399 __le16 status_error0;
405 __le16 status_error1;
421 } wb; /* writeback */
424 /* Rx Flex Descriptor NIC Profile
426 * Flex-field 0: RSS hash lower 16-bits
427 * Flex-field 1: RSS hash upper 16-bits
428 * Flex-field 2: Flow ID lower 16-bits
429 * Flex-field 3: Flow ID higher 16-bits
430 * Flex-field 4: reserved, VLAN ID taken from L2Tag
432 struct ice_32b_rx_flex_desc_nic {
436 __le16 ptype_flexi_flags0;
438 __le16 hdr_len_sph_flex_flags1;
441 __le16 status_error0;
446 __le16 status_error1;
463 /* Rx Flex Descriptor Switch Profile
465 * Flex-field 0: Source VSI
467 struct ice_32b_rx_flex_desc_sw {
471 __le16 ptype_flexi_flags0;
473 __le16 hdr_len_sph_flex_flags1;
476 __le16 status_error0;
478 __le16 src_vsi; /* [10:15] are reserved */
479 __le16 flex_md1_rsvd;
482 __le16 status_error1;
489 __le32 rsvd; /* flex words 2-3 are reserved */
493 /* Rx Flex Descriptor NIC VEB Profile
495 * Flex-field 0: Destination VSI
497 struct ice_32b_rx_flex_desc_nic_veb_dbg {
501 __le16 ptype_flexi_flags0;
503 __le16 hdr_len_sph_flex_flags1;
506 __le16 status_error0;
508 __le16 dst_vsi; /* [0:12]: destination VSI */
509 /* 13: VSI valid bit */
510 /* [14:15] are reserved */
514 __le16 status_error1;
521 __le32 rsvd; /* flex words 2-3 are reserved */
525 /* Rx Flex Descriptor NIC ACL Profile
527 * Flex-field 0: ACL Counter 0
528 * Flex-field 1: ACL Counter 1
529 * Flex-field 2: ACL Counter 2
531 struct ice_32b_rx_flex_desc_nic_acl_dbg {
535 __le16 ptype_flexi_flags0;
537 __le16 hdr_len_sph_flex_flags1;
540 __le16 status_error0;
546 __le16 status_error1;
554 __le16 rsvd; /* flex words 2-3 are reserved */
558 /* Rx Flex Descriptor NIC Profile
560 * Flex-field 0: RSS hash lower 16-bits
561 * Flex-field 1: RSS hash upper 16-bits
562 * Flex-field 2: Flow ID lower 16-bits
563 * Flex-field 3: Source VSI
564 * Flex-field 4: reserved, VLAN ID taken from L2Tag
566 struct ice_32b_rx_flex_desc_nic_2 {
570 __le16 ptype_flexi_flags0;
572 __le16 hdr_len_sph_flex_flags1;
575 __le16 status_error0;
580 __le16 status_error1;
598 /* Receive Flex Descriptor profile IDs: There are a total
599 * of 64 profiles where profile IDs 0/1 are for legacy; and
600 * profiles 2-63 are flex profiles that can be programmed
601 * with a specific metadata (profile 7 reserved for HW)
604 ICE_RXDID_LEGACY_0 = 0,
605 ICE_RXDID_LEGACY_1 = 1,
606 ICE_RXDID_FLEX_NIC = 2,
607 ICE_RXDID_FLEX_NIC_2 = 6,
609 ICE_RXDID_COMMS_GENERIC = 16,
610 ICE_RXDID_COMMS_AUX_VLAN = 17,
611 ICE_RXDID_COMMS_AUX_IPV4 = 18,
612 ICE_RXDID_COMMS_AUX_IPV6 = 19,
613 ICE_RXDID_COMMS_AUX_IPV6_FLOW = 20,
614 ICE_RXDID_COMMS_AUX_TCP = 21,
618 /* Recceive Flex descriptor Dword Index */
620 ICE_RX_FLEX_DWORD_0 = 0,
628 /* Receive Flex Descriptor Rx opcode values */
629 enum ice_flex_opcode {
630 ICE_RX_OPC_DEBUG = 0,
636 /* Receive Descriptor MDID values that access packet flags */
637 enum ice_flex_mdid_pkt_flags {
638 ICE_RX_MDID_PKT_FLAGS_15_0 = 20,
639 ICE_RX_MDID_PKT_FLAGS_31_16,
640 ICE_RX_MDID_PKT_FLAGS_47_32,
641 ICE_RX_MDID_PKT_FLAGS_63_48,
644 /* Generic descriptor MDID values */
646 ICE_MDID_GENERIC_WORD_0,
647 ICE_MDID_GENERIC_WORD_1,
648 ICE_MDID_GENERIC_WORD_2,
649 ICE_MDID_GENERIC_WORD_3,
650 ICE_MDID_GENERIC_WORD_4,
651 ICE_MDID_FLOW_ID_LOWER,
652 ICE_MDID_FLOW_ID_HIGH,
653 ICE_MDID_RX_DESCR_PROF_IDX,
654 ICE_MDID_RX_PKT_DROP,
655 ICE_MDID_RX_DST_Q = 12,
657 ICE_MDID_SRC_VSI = 19,
658 ICE_MDID_ACL_NOP = 55,
660 ICE_MDID_RX_HASH_LOW,
661 ICE_MDID_ACL_CNTR_PKT = ICE_MDID_RX_HASH_LOW,
663 ICE_MDID_RX_HASH_HIGH,
664 ICE_MDID_ACL_CNTR_BYTES = ICE_MDID_RX_HASH_HIGH,
665 ICE_MDID_ACL_CNTR_PKT_BYTES
668 /* for ice_32byte_rx_flex_desc.mir_id_umb_cast member */
669 #define ICE_RX_FLEX_DESC_MIRROR_M (0x3F) /* 6-bits */
671 /* Rx/Tx Flag64 packet flag bits */
672 enum ice_flg64_bits {
674 /* If there is a 1 in this bit position then that means Rx packet */
676 ICE_FLG_EVLAN_x8100 = 15,
679 ICE_FLG_TNL_MAC = 22,
692 enum ice_rx_flex_desc_umb_cast_bits { /* field is 2 bits long */
693 ICE_RX_FLEX_DESC_UMB_CAST_S = 6,
694 ICE_RX_FLEX_DESC_UMB_CAST_LAST /* this entry must be last!!! */
697 enum ice_umbcast_dest_addr_types {
698 ICE_DEST_UNICAST = 0,
704 /* for ice_32byte_rx_flex_desc.ptype_flexi_flags0 member */
705 #define ICE_RX_FLEX_DESC_PTYPE_M (0x3FF) /* 10-bits */
707 enum ice_rx_flex_desc_flexi_flags0_bits { /* field is 6 bits long */
708 ICE_RX_FLEX_DESC_FLEXI_FLAGS0_S = 10,
709 ICE_RX_FLEX_DESC_FLEXI_FLAGS0_LAST /* this entry must be last!!! */
712 /* for ice_32byte_rx_flex_desc.pkt_length member */
713 #define ICE_RX_FLX_DESC_PKT_LEN_M (0x3FFF) /* 14-bits */
715 /* for ice_32byte_rx_flex_desc.header_length_sph_flexi_flags1 member */
716 #define ICE_RX_FLEX_DESC_HEADER_LEN_M (0x7FF) /* 11-bits */
718 enum ice_rx_flex_desc_sph_bits { /* field is 1 bit long */
719 ICE_RX_FLEX_DESC_SPH_S = 11,
720 ICE_RX_FLEX_DESC_SPH_LAST /* this entry must be last!!! */
723 enum ice_rx_flex_desc_flexi_flags1_bits { /* field is 4 bits long */
724 ICE_RX_FLEX_DESC_FLEXI_FLAGS1_S = 12,
725 ICE_RX_FLEX_DESC_FLEXI_FLAGS1_LAST /* this entry must be last!!! */
728 enum ice_rx_flex_desc_ext_status_bits { /* field is 4 bits long */
729 ICE_RX_FLEX_DESC_EXT_STATUS_EXT_UDP_S = 12,
730 ICE_RX_FLEX_DESC_EXT_STATUS_INT_UDP_S = 13,
731 ICE_RX_FLEX_DESC_EXT_STATUS_RECIPE_S = 14,
732 ICE_RX_FLEX_DESC_EXT_STATUS_OVERSIZE_S = 15,
733 ICE_RX_FLEX_DESC_EXT_STATUS_LAST /* entry must be last!!! */
736 enum ice_rx_flex_desc_status_error_0_bits {
737 /* Note: These are predefined bit offsets */
738 ICE_RX_FLEX_DESC_STATUS0_DD_S = 0,
739 ICE_RX_FLEX_DESC_STATUS0_EOF_S,
740 ICE_RX_FLEX_DESC_STATUS0_HBO_S,
741 ICE_RX_FLEX_DESC_STATUS0_L3L4P_S,
742 ICE_RX_FLEX_DESC_STATUS0_XSUM_IPE_S,
743 ICE_RX_FLEX_DESC_STATUS0_XSUM_L4E_S,
744 ICE_RX_FLEX_DESC_STATUS0_XSUM_EIPE_S,
745 ICE_RX_FLEX_DESC_STATUS0_XSUM_EUDPE_S,
746 ICE_RX_FLEX_DESC_STATUS0_LPBK_S,
747 ICE_RX_FLEX_DESC_STATUS0_IPV6EXADD_S,
748 ICE_RX_FLEX_DESC_STATUS0_RXE_S,
749 ICE_RX_FLEX_DESC_STATUS0_CRCP_S,
750 ICE_RX_FLEX_DESC_STATUS0_RSS_VALID_S,
751 ICE_RX_FLEX_DESC_STATUS0_L2TAG1P_S,
752 ICE_RX_FLEX_DESC_STATUS0_XTRMD0_VALID_S,
753 ICE_RX_FLEX_DESC_STATUS0_XTRMD1_VALID_S,
754 ICE_RX_FLEX_DESC_STATUS0_LAST /* this entry must be last!!! */
757 enum ice_rx_flex_desc_status_error_1_bits {
758 /* Note: These are predefined bit offsets */
759 ICE_RX_FLEX_DESC_STATUS1_CPM_S = 0, /* 4 bits */
760 ICE_RX_FLEX_DESC_STATUS1_NAT_S = 4,
761 ICE_RX_FLEX_DESC_STATUS1_CRYPTO_S = 5,
762 /* [10:6] reserved */
763 ICE_RX_FLEX_DESC_STATUS1_L2TAG2P_S = 11,
764 ICE_RX_FLEX_DESC_STATUS1_XTRMD2_VALID_S = 12,
765 ICE_RX_FLEX_DESC_STATUS1_XTRMD3_VALID_S = 13,
766 ICE_RX_FLEX_DESC_STATUS1_XTRMD4_VALID_S = 14,
767 ICE_RX_FLEX_DESC_STATUS1_XTRMD5_VALID_S = 15,
768 ICE_RX_FLEX_DESC_STATUS1_LAST /* this entry must be last!!! */
771 enum ice_rx_flex_desc_exstat_bits {
772 /* Note: These are predefined bit offsets */
773 ICE_RX_FLEX_DESC_EXSTAT_EXTUDP_S = 0,
774 ICE_RX_FLEX_DESC_EXSTAT_INTUDP_S = 1,
775 ICE_RX_FLEX_DESC_EXSTAT_RECIPE_S = 2,
776 ICE_RX_FLEX_DESC_EXSTAT_OVERSIZE_S = 3,
780 #define ICE_RXQ_CTX_SIZE_DWORDS 8
781 #define ICE_RXQ_CTX_SZ (ICE_RXQ_CTX_SIZE_DWORDS * sizeof(u32))
782 #define ICE_TX_CMPLTNQ_CTX_SIZE_DWORDS 22
783 #define ICE_TX_DRBELL_Q_CTX_SIZE_DWORDS 5
784 #define GLTCLAN_CQ_CNTX(i, CQ) (GLTCLAN_CQ_CNTX0(CQ) + ((i) * 0x0800))
786 /* RLAN Rx queue context data
788 * The sizes of the variables may be larger than needed due to crossing byte
789 * boundaries. If we do not have the width of the variable set to the correct
790 * size then we could end up shifting bits off the top of the variable when the
791 * variable is at the top of a byte and crosses over into the next byte.
793 struct ice_rlan_ctx {
795 u16 cpuid; /* bigger than needed, see above for reason */
796 #define ICE_RLAN_BASE_S 7
799 #define ICE_RLAN_CTX_DBUF_S 7
800 u16 dbuf; /* bigger than needed, see above for reason */
801 #define ICE_RLAN_CTX_HBUF_S 6
802 u16 hbuf; /* bigger than needed, see above for reason */
810 u32 rxmax; /* bigger than needed, see above for reason */
815 u16 lrxqthresh; /* bigger than needed, see above for reason */
816 u8 prefena; /* NOTE: normally must be set to 1 at init */
826 #define ICE_CTX_STORE(_struct, _ele, _width, _lsb) { \
827 .offset = offsetof(struct _struct, _ele), \
828 .size_of = FIELD_SIZEOF(struct _struct, _ele), \
833 /* for hsplit_0 field of Rx RLAN context */
834 enum ice_rlan_ctx_rx_hsplit_0 {
835 ICE_RLAN_RX_HSPLIT_0_NO_SPLIT = 0,
836 ICE_RLAN_RX_HSPLIT_0_SPLIT_L2 = 1,
837 ICE_RLAN_RX_HSPLIT_0_SPLIT_IP = 2,
838 ICE_RLAN_RX_HSPLIT_0_SPLIT_TCP_UDP = 4,
839 ICE_RLAN_RX_HSPLIT_0_SPLIT_SCTP = 8,
842 /* for hsplit_1 field of Rx RLAN context */
843 enum ice_rlan_ctx_rx_hsplit_1 {
844 ICE_RLAN_RX_HSPLIT_1_NO_SPLIT = 0,
845 ICE_RLAN_RX_HSPLIT_1_SPLIT_L2 = 1,
846 ICE_RLAN_RX_HSPLIT_1_SPLIT_ALWAYS = 2,
851 __le64 buf_addr; /* Address of descriptor's data buf */
852 __le64 cmd_type_offset_bsz;
855 #define ICE_TXD_QW1_DTYPE_S 0
856 #define ICE_TXD_QW1_DTYPE_M (0xFUL << ICE_TXD_QW1_DTYPE_S)
858 enum ice_tx_desc_dtype_value {
859 ICE_TX_DESC_DTYPE_DATA = 0x0,
860 ICE_TX_DESC_DTYPE_CTX = 0x1,
861 ICE_TX_DESC_DTYPE_IPSEC = 0x3,
862 ICE_TX_DESC_DTYPE_FLTR_PROG = 0x8,
863 ICE_TX_DESC_DTYPE_HLP_META = 0x9,
864 /* DESC_DONE - HW has completed write-back of descriptor */
865 ICE_TX_DESC_DTYPE_DESC_DONE = 0xF,
868 #define ICE_TXD_QW1_CMD_S 4
869 #define ICE_TXD_QW1_CMD_M (0xFFFUL << ICE_TXD_QW1_CMD_S)
871 enum ice_tx_desc_cmd_bits {
872 ICE_TX_DESC_CMD_EOP = 0x0001,
873 ICE_TX_DESC_CMD_RS = 0x0002,
874 ICE_TX_DESC_CMD_RSVD = 0x0004,
875 ICE_TX_DESC_CMD_IL2TAG1 = 0x0008,
876 ICE_TX_DESC_CMD_DUMMY = 0x0010,
877 ICE_TX_DESC_CMD_IIPT_NONIP = 0x0000,
878 ICE_TX_DESC_CMD_IIPT_IPV6 = 0x0020,
879 ICE_TX_DESC_CMD_IIPT_IPV4 = 0x0040,
880 ICE_TX_DESC_CMD_IIPT_IPV4_CSUM = 0x0060,
881 ICE_TX_DESC_CMD_RSVD2 = 0x0080,
882 ICE_TX_DESC_CMD_L4T_EOFT_UNK = 0x0000,
883 ICE_TX_DESC_CMD_L4T_EOFT_TCP = 0x0100,
884 ICE_TX_DESC_CMD_L4T_EOFT_SCTP = 0x0200,
885 ICE_TX_DESC_CMD_L4T_EOFT_UDP = 0x0300,
886 ICE_TX_DESC_CMD_RE = 0x0400,
887 ICE_TX_DESC_CMD_RSVD3 = 0x0800,
890 #define ICE_TXD_QW1_OFFSET_S 16
891 #define ICE_TXD_QW1_OFFSET_M (0x3FFFFULL << ICE_TXD_QW1_OFFSET_S)
893 enum ice_tx_desc_len_fields {
894 /* Note: These are predefined bit offsets */
895 ICE_TX_DESC_LEN_MACLEN_S = 0, /* 7 BITS */
896 ICE_TX_DESC_LEN_IPLEN_S = 7, /* 7 BITS */
897 ICE_TX_DESC_LEN_L4_LEN_S = 14 /* 4 BITS */
900 #define ICE_TXD_QW1_MACLEN_M (0x7FUL << ICE_TX_DESC_LEN_MACLEN_S)
901 #define ICE_TXD_QW1_IPLEN_M (0x7FUL << ICE_TX_DESC_LEN_IPLEN_S)
902 #define ICE_TXD_QW1_L4LEN_M (0xFUL << ICE_TX_DESC_LEN_L4_LEN_S)
904 /* Tx descriptor field limits in bytes */
905 #define ICE_TXD_MACLEN_MAX ((ICE_TXD_QW1_MACLEN_M >> \
906 ICE_TX_DESC_LEN_MACLEN_S) * ICE_BYTES_PER_WORD)
907 #define ICE_TXD_IPLEN_MAX ((ICE_TXD_QW1_IPLEN_M >> \
908 ICE_TX_DESC_LEN_IPLEN_S) * ICE_BYTES_PER_DWORD)
909 #define ICE_TXD_L4LEN_MAX ((ICE_TXD_QW1_L4LEN_M >> \
910 ICE_TX_DESC_LEN_L4_LEN_S) * ICE_BYTES_PER_DWORD)
912 #define ICE_TXD_QW1_TX_BUF_SZ_S 34
913 #define ICE_TXD_QW1_TX_BUF_SZ_M (0x3FFFULL << ICE_TXD_QW1_TX_BUF_SZ_S)
915 #define ICE_TXD_QW1_L2TAG1_S 48
916 #define ICE_TXD_QW1_L2TAG1_M (0xFFFFULL << ICE_TXD_QW1_L2TAG1_S)
918 /* Context descriptors */
919 struct ice_tx_ctx_desc {
920 __le32 tunneling_params;
926 #define ICE_TXD_CTX_QW1_DTYPE_S 0
927 #define ICE_TXD_CTX_QW1_DTYPE_M (0xFUL << ICE_TXD_CTX_QW1_DTYPE_S)
929 #define ICE_TXD_CTX_QW1_CMD_S 4
930 #define ICE_TXD_CTX_QW1_CMD_M (0x7FUL << ICE_TXD_CTX_QW1_CMD_S)
932 #define ICE_TXD_CTX_QW1_IPSEC_S 11
933 #define ICE_TXD_CTX_QW1_IPSEC_M (0x7FUL << ICE_TXD_CTX_QW1_IPSEC_S)
935 #define ICE_TXD_CTX_QW1_TSO_LEN_S 30
936 #define ICE_TXD_CTX_QW1_TSO_LEN_M \
937 (0x3FFFFULL << ICE_TXD_CTX_QW1_TSO_LEN_S)
939 #define ICE_TXD_CTX_QW1_TSYN_S ICE_TXD_CTX_QW1_TSO_LEN_S
940 #define ICE_TXD_CTX_QW1_TSYN_M ICE_TXD_CTX_QW1_TSO_LEN_M
942 #define ICE_TXD_CTX_QW1_MSS_S 50
943 #define ICE_TXD_CTX_QW1_MSS_M (0x3FFFULL << ICE_TXD_CTX_QW1_MSS_S)
944 #define ICE_TXD_CTX_MIN_MSS 64
945 #define ICE_TXD_CTX_MAX_MSS 9668
947 #define ICE_TXD_CTX_QW1_VSI_S 50
948 #define ICE_TXD_CTX_QW1_VSI_M (0x3FFULL << ICE_TXD_CTX_QW1_VSI_S)
950 enum ice_tx_ctx_desc_cmd_bits {
951 ICE_TX_CTX_DESC_TSO = 0x01,
952 ICE_TX_CTX_DESC_TSYN = 0x02,
953 ICE_TX_CTX_DESC_IL2TAG2 = 0x04,
954 ICE_TX_CTX_DESC_IL2TAG2_IL2H = 0x08,
955 ICE_TX_CTX_DESC_SWTCH_NOTAG = 0x00,
956 ICE_TX_CTX_DESC_SWTCH_UPLINK = 0x10,
957 ICE_TX_CTX_DESC_SWTCH_LOCAL = 0x20,
958 ICE_TX_CTX_DESC_SWTCH_VSI = 0x30,
959 ICE_TX_CTX_DESC_RESERVED = 0x40
962 enum ice_tx_ctx_desc_eipt_offload {
963 ICE_TX_CTX_EIPT_NONE = 0x0,
964 ICE_TX_CTX_EIPT_IPV6 = 0x1,
965 ICE_TX_CTX_EIPT_IPV4_NO_CSUM = 0x2,
966 ICE_TX_CTX_EIPT_IPV4 = 0x3
969 #define ICE_TXD_CTX_QW0_EIPT_S 0
970 #define ICE_TXD_CTX_QW0_EIPT_M (0x3ULL << ICE_TXD_CTX_QW0_EIPT_S)
972 #define ICE_TXD_CTX_QW0_EIPLEN_S 2
973 #define ICE_TXD_CTX_QW0_EIPLEN_M (0x7FUL << ICE_TXD_CTX_QW0_EIPLEN_S)
975 #define ICE_TXD_CTX_QW0_L4TUNT_S 9
976 #define ICE_TXD_CTX_QW0_L4TUNT_M (0x3ULL << ICE_TXD_CTX_QW0_L4TUNT_S)
978 #define ICE_TXD_CTX_UDP_TUNNELING BIT_ULL(ICE_TXD_CTX_QW0_L4TUNT_S)
979 #define ICE_TXD_CTX_GRE_TUNNELING (0x2ULL << ICE_TXD_CTX_QW0_L4TUNT_S)
981 #define ICE_TXD_CTX_QW0_EIP_NOINC_S 11
982 #define ICE_TXD_CTX_QW0_EIP_NOINC_M BIT_ULL(ICE_TXD_CTX_QW0_EIP_NOINC_S)
984 #define ICE_TXD_CTX_EIP_NOINC_IPID_CONST ICE_TXD_CTX_QW0_EIP_NOINC_M
986 #define ICE_TXD_CTX_QW0_NATLEN_S 12
987 #define ICE_TXD_CTX_QW0_NATLEN_M (0X7FULL << ICE_TXD_CTX_QW0_NATLEN_S)
989 #define ICE_TXD_CTX_QW0_DECTTL_S 19
990 #define ICE_TXD_CTX_QW0_DECTTL_M (0xFULL << ICE_TXD_CTX_QW0_DECTTL_S)
992 #define ICE_TXD_CTX_QW0_L4T_CS_S 23
993 #define ICE_TXD_CTX_QW0_L4T_CS_M BIT_ULL(ICE_TXD_CTX_QW0_L4T_CS_S)
996 #define ICE_LAN_TXQ_MAX_QGRPS 127
997 #define ICE_LAN_TXQ_MAX_QDIS 1023
999 /* Tx queue context data
1001 * The sizes of the variables may be larger than needed due to crossing byte
1002 * boundaries. If we do not have the width of the variable set to the correct
1003 * size then we could end up shifting bits off the top of the variable when the
1004 * variable is at the top of a byte and crosses over into the next byte.
1006 struct ice_tlan_ctx {
1007 #define ICE_TLAN_CTX_BASE_S 7
1008 u64 base; /* base is defined in 128-byte units */
1010 u16 cgd_num; /* bigger than needed, see above for reason */
1014 #define ICE_TLAN_CTX_VMVF_TYPE_VMQ 1
1015 #define ICE_TLAN_CTX_VMVF_TYPE_PF 2
1018 u8 internal_usage_flag;
1020 u16 cpuid; /* bigger than needed, see above for reason */
1027 u8 itr_notification_mode;
1029 u32 qlen; /* bigger than needed, see above for reason */
1036 u8 pkt_shaper_prof_idx;
1037 u8 int_q_state; /* width not needed - internal do not write */
1040 /* LAN Tx Completion Queue data */
1042 struct ice_tx_cmpltnq {
1051 /* LAN Tx Completion Queue Context */
1053 struct ice_tx_cmpltnq_ctx {
1056 #define ICE_TX_CMPLTNQ_CTX_Q_LEN_S 4
1064 u32 cmpltn_cache[16];
1068 /* LAN Tx Doorbell Descriptor Format */
1069 struct ice_tx_drbell_fmt {
1077 /* LAN Tx Doorbell Queue Context */
1079 struct ice_tx_drbell_q_ctx {
1094 /* The ice_ptype_lkup table is used to convert from the 10-bit ptype in the
1095 * hardware to a bit-field that can be used by SW to more easily determine the
1098 * Macros are used to shorten the table lines and make this table human
1101 * We store the PTYPE in the top byte of the bit field - this is just so that
1102 * we can check that the table doesn't have a row missing, as the index into
1103 * the table should be the PTYPE.
1105 * Typical work flow:
1107 * IF NOT ice_ptype_lkup[ptype].known
1110 * ELSE IF ice_ptype_lkup[ptype].outer_ip == ICE_RX_PTYPE_OUTER_IP
1111 * Use the rest of the fields to look at the tunnels, inner protocols, etc
1113 * Use the enum ice_rx_l2_ptype to decode the packet type
1117 /* macro to make the table lines short */
1118 #define ICE_PTT(PTYPE, OUTER_IP, OUTER_IP_VER, OUTER_FRAG, T, TE, TEF, I, PL)\
1121 ICE_RX_PTYPE_OUTER_##OUTER_IP, \
1122 ICE_RX_PTYPE_OUTER_##OUTER_IP_VER, \
1123 ICE_RX_PTYPE_##OUTER_FRAG, \
1124 ICE_RX_PTYPE_TUNNEL_##T, \
1125 ICE_RX_PTYPE_TUNNEL_END_##TE, \
1126 ICE_RX_PTYPE_##TEF, \
1127 ICE_RX_PTYPE_INNER_PROT_##I, \
1128 ICE_RX_PTYPE_PAYLOAD_LAYER_##PL }
1130 #define ICE_PTT_UNUSED_ENTRY(PTYPE) { PTYPE, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
1132 /* shorter macros makes the table fit but are terse */
1133 #define ICE_RX_PTYPE_NOF ICE_RX_PTYPE_NOT_FRAG
1134 #define ICE_RX_PTYPE_FRG ICE_RX_PTYPE_FRAG
1136 /* Lookup table mapping the HW PTYPE to the bit field for decoding */
1137 static const struct ice_rx_ptype_decoded ice_ptype_lkup[] = {
1138 /* L2 Packet types */
1139 ICE_PTT_UNUSED_ENTRY(0),
1140 ICE_PTT(1, L2, NONE, NOF, NONE, NONE, NOF, NONE, PAY2),
1141 ICE_PTT(2, L2, NONE, NOF, NONE, NONE, NOF, NONE, NONE),
1142 ICE_PTT_UNUSED_ENTRY(3),
1143 ICE_PTT_UNUSED_ENTRY(4),
1144 ICE_PTT_UNUSED_ENTRY(5),
1145 ICE_PTT(6, L2, NONE, NOF, NONE, NONE, NOF, NONE, NONE),
1146 ICE_PTT(7, L2, NONE, NOF, NONE, NONE, NOF, NONE, NONE),
1147 ICE_PTT_UNUSED_ENTRY(8),
1148 ICE_PTT_UNUSED_ENTRY(9),
1149 ICE_PTT(10, L2, NONE, NOF, NONE, NONE, NOF, NONE, NONE),
1150 ICE_PTT(11, L2, NONE, NOF, NONE, NONE, NOF, NONE, NONE),
1151 ICE_PTT_UNUSED_ENTRY(12),
1152 ICE_PTT_UNUSED_ENTRY(13),
1153 ICE_PTT_UNUSED_ENTRY(14),
1154 ICE_PTT_UNUSED_ENTRY(15),
1155 ICE_PTT_UNUSED_ENTRY(16),
1156 ICE_PTT_UNUSED_ENTRY(17),
1157 ICE_PTT_UNUSED_ENTRY(18),
1158 ICE_PTT_UNUSED_ENTRY(19),
1159 ICE_PTT_UNUSED_ENTRY(20),
1160 ICE_PTT_UNUSED_ENTRY(21),
1162 /* Non Tunneled IPv4 */
1163 ICE_PTT(22, IP, IPV4, FRG, NONE, NONE, NOF, NONE, PAY3),
1164 ICE_PTT(23, IP, IPV4, NOF, NONE, NONE, NOF, NONE, PAY3),
1165 ICE_PTT(24, IP, IPV4, NOF, NONE, NONE, NOF, UDP, PAY4),
1166 ICE_PTT_UNUSED_ENTRY(25),
1167 ICE_PTT(26, IP, IPV4, NOF, NONE, NONE, NOF, TCP, PAY4),
1168 ICE_PTT(27, IP, IPV4, NOF, NONE, NONE, NOF, SCTP, PAY4),
1169 ICE_PTT(28, IP, IPV4, NOF, NONE, NONE, NOF, ICMP, PAY4),
1172 ICE_PTT(29, IP, IPV4, NOF, IP_IP, IPV4, FRG, NONE, PAY3),
1173 ICE_PTT(30, IP, IPV4, NOF, IP_IP, IPV4, NOF, NONE, PAY3),
1174 ICE_PTT(31, IP, IPV4, NOF, IP_IP, IPV4, NOF, UDP, PAY4),
1175 ICE_PTT_UNUSED_ENTRY(32),
1176 ICE_PTT(33, IP, IPV4, NOF, IP_IP, IPV4, NOF, TCP, PAY4),
1177 ICE_PTT(34, IP, IPV4, NOF, IP_IP, IPV4, NOF, SCTP, PAY4),
1178 ICE_PTT(35, IP, IPV4, NOF, IP_IP, IPV4, NOF, ICMP, PAY4),
1181 ICE_PTT(36, IP, IPV4, NOF, IP_IP, IPV6, FRG, NONE, PAY3),
1182 ICE_PTT(37, IP, IPV4, NOF, IP_IP, IPV6, NOF, NONE, PAY3),
1183 ICE_PTT(38, IP, IPV4, NOF, IP_IP, IPV6, NOF, UDP, PAY4),
1184 ICE_PTT_UNUSED_ENTRY(39),
1185 ICE_PTT(40, IP, IPV4, NOF, IP_IP, IPV6, NOF, TCP, PAY4),
1186 ICE_PTT(41, IP, IPV4, NOF, IP_IP, IPV6, NOF, SCTP, PAY4),
1187 ICE_PTT(42, IP, IPV4, NOF, IP_IP, IPV6, NOF, ICMP, PAY4),
1189 /* IPv4 --> GRE/NAT */
1190 ICE_PTT(43, IP, IPV4, NOF, IP_GRENAT, NONE, NOF, NONE, PAY3),
1192 /* IPv4 --> GRE/NAT --> IPv4 */
1193 ICE_PTT(44, IP, IPV4, NOF, IP_GRENAT, IPV4, FRG, NONE, PAY3),
1194 ICE_PTT(45, IP, IPV4, NOF, IP_GRENAT, IPV4, NOF, NONE, PAY3),
1195 ICE_PTT(46, IP, IPV4, NOF, IP_GRENAT, IPV4, NOF, UDP, PAY4),
1196 ICE_PTT_UNUSED_ENTRY(47),
1197 ICE_PTT(48, IP, IPV4, NOF, IP_GRENAT, IPV4, NOF, TCP, PAY4),
1198 ICE_PTT(49, IP, IPV4, NOF, IP_GRENAT, IPV4, NOF, SCTP, PAY4),
1199 ICE_PTT(50, IP, IPV4, NOF, IP_GRENAT, IPV4, NOF, ICMP, PAY4),
1201 /* IPv4 --> GRE/NAT --> IPv6 */
1202 ICE_PTT(51, IP, IPV4, NOF, IP_GRENAT, IPV6, FRG, NONE, PAY3),
1203 ICE_PTT(52, IP, IPV4, NOF, IP_GRENAT, IPV6, NOF, NONE, PAY3),
1204 ICE_PTT(53, IP, IPV4, NOF, IP_GRENAT, IPV6, NOF, UDP, PAY4),
1205 ICE_PTT_UNUSED_ENTRY(54),
1206 ICE_PTT(55, IP, IPV4, NOF, IP_GRENAT, IPV6, NOF, TCP, PAY4),
1207 ICE_PTT(56, IP, IPV4, NOF, IP_GRENAT, IPV6, NOF, SCTP, PAY4),
1208 ICE_PTT(57, IP, IPV4, NOF, IP_GRENAT, IPV6, NOF, ICMP, PAY4),
1210 /* IPv4 --> GRE/NAT --> MAC */
1211 ICE_PTT(58, IP, IPV4, NOF, IP_GRENAT_MAC, NONE, NOF, NONE, PAY3),
1213 /* IPv4 --> GRE/NAT --> MAC --> IPv4 */
1214 ICE_PTT(59, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, FRG, NONE, PAY3),
1215 ICE_PTT(60, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, NOF, NONE, PAY3),
1216 ICE_PTT(61, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, NOF, UDP, PAY4),
1217 ICE_PTT_UNUSED_ENTRY(62),
1218 ICE_PTT(63, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, NOF, TCP, PAY4),
1219 ICE_PTT(64, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, NOF, SCTP, PAY4),
1220 ICE_PTT(65, IP, IPV4, NOF, IP_GRENAT_MAC, IPV4, NOF, ICMP, PAY4),
1222 /* IPv4 --> GRE/NAT -> MAC --> IPv6 */
1223 ICE_PTT(66, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, FRG, NONE, PAY3),
1224 ICE_PTT(67, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, NOF, NONE, PAY3),
1225 ICE_PTT(68, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, NOF, UDP, PAY4),
1226 ICE_PTT_UNUSED_ENTRY(69),
1227 ICE_PTT(70, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, NOF, TCP, PAY4),
1228 ICE_PTT(71, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, NOF, SCTP, PAY4),
1229 ICE_PTT(72, IP, IPV4, NOF, IP_GRENAT_MAC, IPV6, NOF, ICMP, PAY4),
1231 /* IPv4 --> GRE/NAT --> MAC/VLAN */
1232 ICE_PTT(73, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, NONE, NOF, NONE, PAY3),
1234 /* IPv4 ---> GRE/NAT -> MAC/VLAN --> IPv4 */
1235 ICE_PTT(74, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, FRG, NONE, PAY3),
1236 ICE_PTT(75, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, NONE, PAY3),
1237 ICE_PTT(76, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, UDP, PAY4),
1238 ICE_PTT_UNUSED_ENTRY(77),
1239 ICE_PTT(78, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, TCP, PAY4),
1240 ICE_PTT(79, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, SCTP, PAY4),
1241 ICE_PTT(80, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, ICMP, PAY4),
1243 /* IPv4 -> GRE/NAT -> MAC/VLAN --> IPv6 */
1244 ICE_PTT(81, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, FRG, NONE, PAY3),
1245 ICE_PTT(82, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, NONE, PAY3),
1246 ICE_PTT(83, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, UDP, PAY4),
1247 ICE_PTT_UNUSED_ENTRY(84),
1248 ICE_PTT(85, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, TCP, PAY4),
1249 ICE_PTT(86, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, SCTP, PAY4),
1250 ICE_PTT(87, IP, IPV4, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, ICMP, PAY4),
1252 /* Non Tunneled IPv6 */
1253 ICE_PTT(88, IP, IPV6, FRG, NONE, NONE, NOF, NONE, PAY3),
1254 ICE_PTT(89, IP, IPV6, NOF, NONE, NONE, NOF, NONE, PAY3),
1255 ICE_PTT(90, IP, IPV6, NOF, NONE, NONE, NOF, UDP, PAY3),
1256 ICE_PTT_UNUSED_ENTRY(91),
1257 ICE_PTT(92, IP, IPV6, NOF, NONE, NONE, NOF, TCP, PAY4),
1258 ICE_PTT(93, IP, IPV6, NOF, NONE, NONE, NOF, SCTP, PAY4),
1259 ICE_PTT(94, IP, IPV6, NOF, NONE, NONE, NOF, ICMP, PAY4),
1262 ICE_PTT(95, IP, IPV6, NOF, IP_IP, IPV4, FRG, NONE, PAY3),
1263 ICE_PTT(96, IP, IPV6, NOF, IP_IP, IPV4, NOF, NONE, PAY3),
1264 ICE_PTT(97, IP, IPV6, NOF, IP_IP, IPV4, NOF, UDP, PAY4),
1265 ICE_PTT_UNUSED_ENTRY(98),
1266 ICE_PTT(99, IP, IPV6, NOF, IP_IP, IPV4, NOF, TCP, PAY4),
1267 ICE_PTT(100, IP, IPV6, NOF, IP_IP, IPV4, NOF, SCTP, PAY4),
1268 ICE_PTT(101, IP, IPV6, NOF, IP_IP, IPV4, NOF, ICMP, PAY4),
1271 ICE_PTT(102, IP, IPV6, NOF, IP_IP, IPV6, FRG, NONE, PAY3),
1272 ICE_PTT(103, IP, IPV6, NOF, IP_IP, IPV6, NOF, NONE, PAY3),
1273 ICE_PTT(104, IP, IPV6, NOF, IP_IP, IPV6, NOF, UDP, PAY4),
1274 ICE_PTT_UNUSED_ENTRY(105),
1275 ICE_PTT(106, IP, IPV6, NOF, IP_IP, IPV6, NOF, TCP, PAY4),
1276 ICE_PTT(107, IP, IPV6, NOF, IP_IP, IPV6, NOF, SCTP, PAY4),
1277 ICE_PTT(108, IP, IPV6, NOF, IP_IP, IPV6, NOF, ICMP, PAY4),
1279 /* IPv6 --> GRE/NAT */
1280 ICE_PTT(109, IP, IPV6, NOF, IP_GRENAT, NONE, NOF, NONE, PAY3),
1282 /* IPv6 --> GRE/NAT -> IPv4 */
1283 ICE_PTT(110, IP, IPV6, NOF, IP_GRENAT, IPV4, FRG, NONE, PAY3),
1284 ICE_PTT(111, IP, IPV6, NOF, IP_GRENAT, IPV4, NOF, NONE, PAY3),
1285 ICE_PTT(112, IP, IPV6, NOF, IP_GRENAT, IPV4, NOF, UDP, PAY4),
1286 ICE_PTT_UNUSED_ENTRY(113),
1287 ICE_PTT(114, IP, IPV6, NOF, IP_GRENAT, IPV4, NOF, TCP, PAY4),
1288 ICE_PTT(115, IP, IPV6, NOF, IP_GRENAT, IPV4, NOF, SCTP, PAY4),
1289 ICE_PTT(116, IP, IPV6, NOF, IP_GRENAT, IPV4, NOF, ICMP, PAY4),
1291 /* IPv6 --> GRE/NAT -> IPv6 */
1292 ICE_PTT(117, IP, IPV6, NOF, IP_GRENAT, IPV6, FRG, NONE, PAY3),
1293 ICE_PTT(118, IP, IPV6, NOF, IP_GRENAT, IPV6, NOF, NONE, PAY3),
1294 ICE_PTT(119, IP, IPV6, NOF, IP_GRENAT, IPV6, NOF, UDP, PAY4),
1295 ICE_PTT_UNUSED_ENTRY(120),
1296 ICE_PTT(121, IP, IPV6, NOF, IP_GRENAT, IPV6, NOF, TCP, PAY4),
1297 ICE_PTT(122, IP, IPV6, NOF, IP_GRENAT, IPV6, NOF, SCTP, PAY4),
1298 ICE_PTT(123, IP, IPV6, NOF, IP_GRENAT, IPV6, NOF, ICMP, PAY4),
1300 /* IPv6 --> GRE/NAT -> MAC */
1301 ICE_PTT(124, IP, IPV6, NOF, IP_GRENAT_MAC, NONE, NOF, NONE, PAY3),
1303 /* IPv6 --> GRE/NAT -> MAC -> IPv4 */
1304 ICE_PTT(125, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, FRG, NONE, PAY3),
1305 ICE_PTT(126, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, NOF, NONE, PAY3),
1306 ICE_PTT(127, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, NOF, UDP, PAY4),
1307 ICE_PTT_UNUSED_ENTRY(128),
1308 ICE_PTT(129, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, NOF, TCP, PAY4),
1309 ICE_PTT(130, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, NOF, SCTP, PAY4),
1310 ICE_PTT(131, IP, IPV6, NOF, IP_GRENAT_MAC, IPV4, NOF, ICMP, PAY4),
1312 /* IPv6 --> GRE/NAT -> MAC -> IPv6 */
1313 ICE_PTT(132, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, FRG, NONE, PAY3),
1314 ICE_PTT(133, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, NOF, NONE, PAY3),
1315 ICE_PTT(134, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, NOF, UDP, PAY4),
1316 ICE_PTT_UNUSED_ENTRY(135),
1317 ICE_PTT(136, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, NOF, TCP, PAY4),
1318 ICE_PTT(137, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, NOF, SCTP, PAY4),
1319 ICE_PTT(138, IP, IPV6, NOF, IP_GRENAT_MAC, IPV6, NOF, ICMP, PAY4),
1321 /* IPv6 --> GRE/NAT -> MAC/VLAN */
1322 ICE_PTT(139, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, NONE, NOF, NONE, PAY3),
1324 /* IPv6 --> GRE/NAT -> MAC/VLAN --> IPv4 */
1325 ICE_PTT(140, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, FRG, NONE, PAY3),
1326 ICE_PTT(141, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, NONE, PAY3),
1327 ICE_PTT(142, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, UDP, PAY4),
1328 ICE_PTT_UNUSED_ENTRY(143),
1329 ICE_PTT(144, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, TCP, PAY4),
1330 ICE_PTT(145, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, SCTP, PAY4),
1331 ICE_PTT(146, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV4, NOF, ICMP, PAY4),
1333 /* IPv6 --> GRE/NAT -> MAC/VLAN --> IPv6 */
1334 ICE_PTT(147, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, FRG, NONE, PAY3),
1335 ICE_PTT(148, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, NONE, PAY3),
1336 ICE_PTT(149, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, UDP, PAY4),
1337 ICE_PTT_UNUSED_ENTRY(150),
1338 ICE_PTT(151, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, TCP, PAY4),
1339 ICE_PTT(152, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, SCTP, PAY4),
1340 ICE_PTT(153, IP, IPV6, NOF, IP_GRENAT_MAC_VLAN, IPV6, NOF, ICMP, PAY4),
1342 /* unused entries */
1343 ICE_PTT_UNUSED_ENTRY(154),
1344 ICE_PTT_UNUSED_ENTRY(155),
1345 ICE_PTT_UNUSED_ENTRY(156),
1346 ICE_PTT_UNUSED_ENTRY(157),
1347 ICE_PTT_UNUSED_ENTRY(158),
1348 ICE_PTT_UNUSED_ENTRY(159),
1350 ICE_PTT_UNUSED_ENTRY(160),
1351 ICE_PTT_UNUSED_ENTRY(161),
1352 ICE_PTT_UNUSED_ENTRY(162),
1353 ICE_PTT_UNUSED_ENTRY(163),
1354 ICE_PTT_UNUSED_ENTRY(164),
1355 ICE_PTT_UNUSED_ENTRY(165),
1356 ICE_PTT_UNUSED_ENTRY(166),
1357 ICE_PTT_UNUSED_ENTRY(167),
1358 ICE_PTT_UNUSED_ENTRY(168),
1359 ICE_PTT_UNUSED_ENTRY(169),
1361 ICE_PTT_UNUSED_ENTRY(170),
1362 ICE_PTT_UNUSED_ENTRY(171),
1363 ICE_PTT_UNUSED_ENTRY(172),
1364 ICE_PTT_UNUSED_ENTRY(173),
1365 ICE_PTT_UNUSED_ENTRY(174),
1366 ICE_PTT_UNUSED_ENTRY(175),
1367 ICE_PTT_UNUSED_ENTRY(176),
1368 ICE_PTT_UNUSED_ENTRY(177),
1369 ICE_PTT_UNUSED_ENTRY(178),
1370 ICE_PTT_UNUSED_ENTRY(179),
1372 ICE_PTT_UNUSED_ENTRY(180),
1373 ICE_PTT_UNUSED_ENTRY(181),
1374 ICE_PTT_UNUSED_ENTRY(182),
1375 ICE_PTT_UNUSED_ENTRY(183),
1376 ICE_PTT_UNUSED_ENTRY(184),
1377 ICE_PTT_UNUSED_ENTRY(185),
1378 ICE_PTT_UNUSED_ENTRY(186),
1379 ICE_PTT_UNUSED_ENTRY(187),
1380 ICE_PTT_UNUSED_ENTRY(188),
1381 ICE_PTT_UNUSED_ENTRY(189),
1383 ICE_PTT_UNUSED_ENTRY(190),
1384 ICE_PTT_UNUSED_ENTRY(191),
1385 ICE_PTT_UNUSED_ENTRY(192),
1386 ICE_PTT_UNUSED_ENTRY(193),
1387 ICE_PTT_UNUSED_ENTRY(194),
1388 ICE_PTT_UNUSED_ENTRY(195),
1389 ICE_PTT_UNUSED_ENTRY(196),
1390 ICE_PTT_UNUSED_ENTRY(197),
1391 ICE_PTT_UNUSED_ENTRY(198),
1392 ICE_PTT_UNUSED_ENTRY(199),
1394 ICE_PTT_UNUSED_ENTRY(200),
1395 ICE_PTT_UNUSED_ENTRY(201),
1396 ICE_PTT_UNUSED_ENTRY(202),
1397 ICE_PTT_UNUSED_ENTRY(203),
1398 ICE_PTT_UNUSED_ENTRY(204),
1399 ICE_PTT_UNUSED_ENTRY(205),
1400 ICE_PTT_UNUSED_ENTRY(206),
1401 ICE_PTT_UNUSED_ENTRY(207),
1402 ICE_PTT_UNUSED_ENTRY(208),
1403 ICE_PTT_UNUSED_ENTRY(209),
1405 ICE_PTT_UNUSED_ENTRY(210),
1406 ICE_PTT_UNUSED_ENTRY(211),
1407 ICE_PTT_UNUSED_ENTRY(212),
1408 ICE_PTT_UNUSED_ENTRY(213),
1409 ICE_PTT_UNUSED_ENTRY(214),
1410 ICE_PTT_UNUSED_ENTRY(215),
1411 ICE_PTT_UNUSED_ENTRY(216),
1412 ICE_PTT_UNUSED_ENTRY(217),
1413 ICE_PTT_UNUSED_ENTRY(218),
1414 ICE_PTT_UNUSED_ENTRY(219),
1416 ICE_PTT_UNUSED_ENTRY(220),
1417 ICE_PTT_UNUSED_ENTRY(221),
1418 ICE_PTT_UNUSED_ENTRY(222),
1419 ICE_PTT_UNUSED_ENTRY(223),
1420 ICE_PTT_UNUSED_ENTRY(224),
1421 ICE_PTT_UNUSED_ENTRY(225),
1422 ICE_PTT_UNUSED_ENTRY(226),
1423 ICE_PTT_UNUSED_ENTRY(227),
1424 ICE_PTT_UNUSED_ENTRY(228),
1425 ICE_PTT_UNUSED_ENTRY(229),
1427 ICE_PTT_UNUSED_ENTRY(230),
1428 ICE_PTT_UNUSED_ENTRY(231),
1429 ICE_PTT_UNUSED_ENTRY(232),
1430 ICE_PTT_UNUSED_ENTRY(233),
1431 ICE_PTT_UNUSED_ENTRY(234),
1432 ICE_PTT_UNUSED_ENTRY(235),
1433 ICE_PTT_UNUSED_ENTRY(236),
1434 ICE_PTT_UNUSED_ENTRY(237),
1435 ICE_PTT_UNUSED_ENTRY(238),
1436 ICE_PTT_UNUSED_ENTRY(239),
1438 ICE_PTT_UNUSED_ENTRY(240),
1439 ICE_PTT_UNUSED_ENTRY(241),
1440 ICE_PTT_UNUSED_ENTRY(242),
1441 ICE_PTT_UNUSED_ENTRY(243),
1442 ICE_PTT_UNUSED_ENTRY(244),
1443 ICE_PTT_UNUSED_ENTRY(245),
1444 ICE_PTT_UNUSED_ENTRY(246),
1445 ICE_PTT_UNUSED_ENTRY(247),
1446 ICE_PTT_UNUSED_ENTRY(248),
1447 ICE_PTT_UNUSED_ENTRY(249),
1449 ICE_PTT_UNUSED_ENTRY(250),
1450 ICE_PTT_UNUSED_ENTRY(251),
1451 ICE_PTT_UNUSED_ENTRY(252),
1452 ICE_PTT_UNUSED_ENTRY(253),
1453 ICE_PTT_UNUSED_ENTRY(254),
1454 ICE_PTT_UNUSED_ENTRY(255),
1455 ICE_PTT_UNUSED_ENTRY(256),
1456 ICE_PTT_UNUSED_ENTRY(257),
1457 ICE_PTT_UNUSED_ENTRY(258),
1458 ICE_PTT_UNUSED_ENTRY(259),
1460 ICE_PTT_UNUSED_ENTRY(260),
1461 ICE_PTT_UNUSED_ENTRY(261),
1462 ICE_PTT_UNUSED_ENTRY(262),
1463 ICE_PTT_UNUSED_ENTRY(263),
1464 ICE_PTT_UNUSED_ENTRY(264),
1465 ICE_PTT_UNUSED_ENTRY(265),
1466 ICE_PTT_UNUSED_ENTRY(266),
1467 ICE_PTT_UNUSED_ENTRY(267),
1468 ICE_PTT_UNUSED_ENTRY(268),
1469 ICE_PTT_UNUSED_ENTRY(269),
1471 ICE_PTT_UNUSED_ENTRY(270),
1472 ICE_PTT_UNUSED_ENTRY(271),
1473 ICE_PTT_UNUSED_ENTRY(272),
1474 ICE_PTT_UNUSED_ENTRY(273),
1475 ICE_PTT_UNUSED_ENTRY(274),
1476 ICE_PTT_UNUSED_ENTRY(275),
1477 ICE_PTT_UNUSED_ENTRY(276),
1478 ICE_PTT_UNUSED_ENTRY(277),
1479 ICE_PTT_UNUSED_ENTRY(278),
1480 ICE_PTT_UNUSED_ENTRY(279),
1482 ICE_PTT_UNUSED_ENTRY(280),
1483 ICE_PTT_UNUSED_ENTRY(281),
1484 ICE_PTT_UNUSED_ENTRY(282),
1485 ICE_PTT_UNUSED_ENTRY(283),
1486 ICE_PTT_UNUSED_ENTRY(284),
1487 ICE_PTT_UNUSED_ENTRY(285),
1488 ICE_PTT_UNUSED_ENTRY(286),
1489 ICE_PTT_UNUSED_ENTRY(287),
1490 ICE_PTT_UNUSED_ENTRY(288),
1491 ICE_PTT_UNUSED_ENTRY(289),
1493 ICE_PTT_UNUSED_ENTRY(290),
1494 ICE_PTT_UNUSED_ENTRY(291),
1495 ICE_PTT_UNUSED_ENTRY(292),
1496 ICE_PTT_UNUSED_ENTRY(293),
1497 ICE_PTT_UNUSED_ENTRY(294),
1498 ICE_PTT_UNUSED_ENTRY(295),
1499 ICE_PTT_UNUSED_ENTRY(296),
1500 ICE_PTT_UNUSED_ENTRY(297),
1501 ICE_PTT_UNUSED_ENTRY(298),
1502 ICE_PTT_UNUSED_ENTRY(299),
1504 ICE_PTT_UNUSED_ENTRY(300),
1505 ICE_PTT_UNUSED_ENTRY(301),
1506 ICE_PTT_UNUSED_ENTRY(302),
1507 ICE_PTT_UNUSED_ENTRY(303),
1508 ICE_PTT_UNUSED_ENTRY(304),
1509 ICE_PTT_UNUSED_ENTRY(305),
1510 ICE_PTT_UNUSED_ENTRY(306),
1511 ICE_PTT_UNUSED_ENTRY(307),
1512 ICE_PTT_UNUSED_ENTRY(308),
1513 ICE_PTT_UNUSED_ENTRY(309),
1515 ICE_PTT_UNUSED_ENTRY(310),
1516 ICE_PTT_UNUSED_ENTRY(311),
1517 ICE_PTT_UNUSED_ENTRY(312),
1518 ICE_PTT_UNUSED_ENTRY(313),
1519 ICE_PTT_UNUSED_ENTRY(314),
1520 ICE_PTT_UNUSED_ENTRY(315),
1521 ICE_PTT_UNUSED_ENTRY(316),
1522 ICE_PTT_UNUSED_ENTRY(317),
1523 ICE_PTT_UNUSED_ENTRY(318),
1524 ICE_PTT_UNUSED_ENTRY(319),
1526 ICE_PTT_UNUSED_ENTRY(320),
1527 ICE_PTT_UNUSED_ENTRY(321),
1528 ICE_PTT_UNUSED_ENTRY(322),
1529 ICE_PTT_UNUSED_ENTRY(323),
1530 ICE_PTT_UNUSED_ENTRY(324),
1531 ICE_PTT_UNUSED_ENTRY(325),
1532 ICE_PTT_UNUSED_ENTRY(326),
1533 ICE_PTT_UNUSED_ENTRY(327),
1534 ICE_PTT_UNUSED_ENTRY(328),
1535 ICE_PTT_UNUSED_ENTRY(329),
1537 ICE_PTT_UNUSED_ENTRY(330),
1538 ICE_PTT_UNUSED_ENTRY(331),
1539 ICE_PTT_UNUSED_ENTRY(332),
1540 ICE_PTT_UNUSED_ENTRY(333),
1541 ICE_PTT_UNUSED_ENTRY(334),
1542 ICE_PTT_UNUSED_ENTRY(335),
1543 ICE_PTT_UNUSED_ENTRY(336),
1544 ICE_PTT_UNUSED_ENTRY(337),
1545 ICE_PTT_UNUSED_ENTRY(338),
1546 ICE_PTT_UNUSED_ENTRY(339),
1548 ICE_PTT_UNUSED_ENTRY(340),
1549 ICE_PTT_UNUSED_ENTRY(341),
1550 ICE_PTT_UNUSED_ENTRY(342),
1551 ICE_PTT_UNUSED_ENTRY(343),
1552 ICE_PTT_UNUSED_ENTRY(344),
1553 ICE_PTT_UNUSED_ENTRY(345),
1554 ICE_PTT_UNUSED_ENTRY(346),
1555 ICE_PTT_UNUSED_ENTRY(347),
1556 ICE_PTT_UNUSED_ENTRY(348),
1557 ICE_PTT_UNUSED_ENTRY(349),
1559 ICE_PTT_UNUSED_ENTRY(350),
1560 ICE_PTT_UNUSED_ENTRY(351),
1561 ICE_PTT_UNUSED_ENTRY(352),
1562 ICE_PTT_UNUSED_ENTRY(353),
1563 ICE_PTT_UNUSED_ENTRY(354),
1564 ICE_PTT_UNUSED_ENTRY(355),
1565 ICE_PTT_UNUSED_ENTRY(356),
1566 ICE_PTT_UNUSED_ENTRY(357),
1567 ICE_PTT_UNUSED_ENTRY(358),
1568 ICE_PTT_UNUSED_ENTRY(359),
1570 ICE_PTT_UNUSED_ENTRY(360),
1571 ICE_PTT_UNUSED_ENTRY(361),
1572 ICE_PTT_UNUSED_ENTRY(362),
1573 ICE_PTT_UNUSED_ENTRY(363),
1574 ICE_PTT_UNUSED_ENTRY(364),
1575 ICE_PTT_UNUSED_ENTRY(365),
1576 ICE_PTT_UNUSED_ENTRY(366),
1577 ICE_PTT_UNUSED_ENTRY(367),
1578 ICE_PTT_UNUSED_ENTRY(368),
1579 ICE_PTT_UNUSED_ENTRY(369),
1581 ICE_PTT_UNUSED_ENTRY(370),
1582 ICE_PTT_UNUSED_ENTRY(371),
1583 ICE_PTT_UNUSED_ENTRY(372),
1584 ICE_PTT_UNUSED_ENTRY(373),
1585 ICE_PTT_UNUSED_ENTRY(374),
1586 ICE_PTT_UNUSED_ENTRY(375),
1587 ICE_PTT_UNUSED_ENTRY(376),
1588 ICE_PTT_UNUSED_ENTRY(377),
1589 ICE_PTT_UNUSED_ENTRY(378),
1590 ICE_PTT_UNUSED_ENTRY(379),
1592 ICE_PTT_UNUSED_ENTRY(380),
1593 ICE_PTT_UNUSED_ENTRY(381),
1594 ICE_PTT_UNUSED_ENTRY(382),
1595 ICE_PTT_UNUSED_ENTRY(383),
1596 ICE_PTT_UNUSED_ENTRY(384),
1597 ICE_PTT_UNUSED_ENTRY(385),
1598 ICE_PTT_UNUSED_ENTRY(386),
1599 ICE_PTT_UNUSED_ENTRY(387),
1600 ICE_PTT_UNUSED_ENTRY(388),
1601 ICE_PTT_UNUSED_ENTRY(389),
1603 ICE_PTT_UNUSED_ENTRY(390),
1604 ICE_PTT_UNUSED_ENTRY(391),
1605 ICE_PTT_UNUSED_ENTRY(392),
1606 ICE_PTT_UNUSED_ENTRY(393),
1607 ICE_PTT_UNUSED_ENTRY(394),
1608 ICE_PTT_UNUSED_ENTRY(395),
1609 ICE_PTT_UNUSED_ENTRY(396),
1610 ICE_PTT_UNUSED_ENTRY(397),
1611 ICE_PTT_UNUSED_ENTRY(398),
1612 ICE_PTT_UNUSED_ENTRY(399),
1614 ICE_PTT_UNUSED_ENTRY(400),
1615 ICE_PTT_UNUSED_ENTRY(401),
1616 ICE_PTT_UNUSED_ENTRY(402),
1617 ICE_PTT_UNUSED_ENTRY(403),
1618 ICE_PTT_UNUSED_ENTRY(404),
1619 ICE_PTT_UNUSED_ENTRY(405),
1620 ICE_PTT_UNUSED_ENTRY(406),
1621 ICE_PTT_UNUSED_ENTRY(407),
1622 ICE_PTT_UNUSED_ENTRY(408),
1623 ICE_PTT_UNUSED_ENTRY(409),
1625 ICE_PTT_UNUSED_ENTRY(410),
1626 ICE_PTT_UNUSED_ENTRY(411),
1627 ICE_PTT_UNUSED_ENTRY(412),
1628 ICE_PTT_UNUSED_ENTRY(413),
1629 ICE_PTT_UNUSED_ENTRY(414),
1630 ICE_PTT_UNUSED_ENTRY(415),
1631 ICE_PTT_UNUSED_ENTRY(416),
1632 ICE_PTT_UNUSED_ENTRY(417),
1633 ICE_PTT_UNUSED_ENTRY(418),
1634 ICE_PTT_UNUSED_ENTRY(419),
1636 ICE_PTT_UNUSED_ENTRY(420),
1637 ICE_PTT_UNUSED_ENTRY(421),
1638 ICE_PTT_UNUSED_ENTRY(422),
1639 ICE_PTT_UNUSED_ENTRY(423),
1640 ICE_PTT_UNUSED_ENTRY(424),
1641 ICE_PTT_UNUSED_ENTRY(425),
1642 ICE_PTT_UNUSED_ENTRY(426),
1643 ICE_PTT_UNUSED_ENTRY(427),
1644 ICE_PTT_UNUSED_ENTRY(428),
1645 ICE_PTT_UNUSED_ENTRY(429),
1647 ICE_PTT_UNUSED_ENTRY(430),
1648 ICE_PTT_UNUSED_ENTRY(431),
1649 ICE_PTT_UNUSED_ENTRY(432),
1650 ICE_PTT_UNUSED_ENTRY(433),
1651 ICE_PTT_UNUSED_ENTRY(434),
1652 ICE_PTT_UNUSED_ENTRY(435),
1653 ICE_PTT_UNUSED_ENTRY(436),
1654 ICE_PTT_UNUSED_ENTRY(437),
1655 ICE_PTT_UNUSED_ENTRY(438),
1656 ICE_PTT_UNUSED_ENTRY(439),
1658 ICE_PTT_UNUSED_ENTRY(440),
1659 ICE_PTT_UNUSED_ENTRY(441),
1660 ICE_PTT_UNUSED_ENTRY(442),
1661 ICE_PTT_UNUSED_ENTRY(443),
1662 ICE_PTT_UNUSED_ENTRY(444),
1663 ICE_PTT_UNUSED_ENTRY(445),
1664 ICE_PTT_UNUSED_ENTRY(446),
1665 ICE_PTT_UNUSED_ENTRY(447),
1666 ICE_PTT_UNUSED_ENTRY(448),
1667 ICE_PTT_UNUSED_ENTRY(449),
1669 ICE_PTT_UNUSED_ENTRY(450),
1670 ICE_PTT_UNUSED_ENTRY(451),
1671 ICE_PTT_UNUSED_ENTRY(452),
1672 ICE_PTT_UNUSED_ENTRY(453),
1673 ICE_PTT_UNUSED_ENTRY(454),
1674 ICE_PTT_UNUSED_ENTRY(455),
1675 ICE_PTT_UNUSED_ENTRY(456),
1676 ICE_PTT_UNUSED_ENTRY(457),
1677 ICE_PTT_UNUSED_ENTRY(458),
1678 ICE_PTT_UNUSED_ENTRY(459),
1680 ICE_PTT_UNUSED_ENTRY(460),
1681 ICE_PTT_UNUSED_ENTRY(461),
1682 ICE_PTT_UNUSED_ENTRY(462),
1683 ICE_PTT_UNUSED_ENTRY(463),
1684 ICE_PTT_UNUSED_ENTRY(464),
1685 ICE_PTT_UNUSED_ENTRY(465),
1686 ICE_PTT_UNUSED_ENTRY(466),
1687 ICE_PTT_UNUSED_ENTRY(467),
1688 ICE_PTT_UNUSED_ENTRY(468),
1689 ICE_PTT_UNUSED_ENTRY(469),
1691 ICE_PTT_UNUSED_ENTRY(470),
1692 ICE_PTT_UNUSED_ENTRY(471),
1693 ICE_PTT_UNUSED_ENTRY(472),
1694 ICE_PTT_UNUSED_ENTRY(473),
1695 ICE_PTT_UNUSED_ENTRY(474),
1696 ICE_PTT_UNUSED_ENTRY(475),
1697 ICE_PTT_UNUSED_ENTRY(476),
1698 ICE_PTT_UNUSED_ENTRY(477),
1699 ICE_PTT_UNUSED_ENTRY(478),
1700 ICE_PTT_UNUSED_ENTRY(479),
1702 ICE_PTT_UNUSED_ENTRY(480),
1703 ICE_PTT_UNUSED_ENTRY(481),
1704 ICE_PTT_UNUSED_ENTRY(482),
1705 ICE_PTT_UNUSED_ENTRY(483),
1706 ICE_PTT_UNUSED_ENTRY(484),
1707 ICE_PTT_UNUSED_ENTRY(485),
1708 ICE_PTT_UNUSED_ENTRY(486),
1709 ICE_PTT_UNUSED_ENTRY(487),
1710 ICE_PTT_UNUSED_ENTRY(488),
1711 ICE_PTT_UNUSED_ENTRY(489),
1713 ICE_PTT_UNUSED_ENTRY(490),
1714 ICE_PTT_UNUSED_ENTRY(491),
1715 ICE_PTT_UNUSED_ENTRY(492),
1716 ICE_PTT_UNUSED_ENTRY(493),
1717 ICE_PTT_UNUSED_ENTRY(494),
1718 ICE_PTT_UNUSED_ENTRY(495),
1719 ICE_PTT_UNUSED_ENTRY(496),
1720 ICE_PTT_UNUSED_ENTRY(497),
1721 ICE_PTT_UNUSED_ENTRY(498),
1722 ICE_PTT_UNUSED_ENTRY(499),
1724 ICE_PTT_UNUSED_ENTRY(500),
1725 ICE_PTT_UNUSED_ENTRY(501),
1726 ICE_PTT_UNUSED_ENTRY(502),
1727 ICE_PTT_UNUSED_ENTRY(503),
1728 ICE_PTT_UNUSED_ENTRY(504),
1729 ICE_PTT_UNUSED_ENTRY(505),
1730 ICE_PTT_UNUSED_ENTRY(506),
1731 ICE_PTT_UNUSED_ENTRY(507),
1732 ICE_PTT_UNUSED_ENTRY(508),
1733 ICE_PTT_UNUSED_ENTRY(509),
1735 ICE_PTT_UNUSED_ENTRY(510),
1736 ICE_PTT_UNUSED_ENTRY(511),
1737 ICE_PTT_UNUSED_ENTRY(512),
1738 ICE_PTT_UNUSED_ENTRY(513),
1739 ICE_PTT_UNUSED_ENTRY(514),
1740 ICE_PTT_UNUSED_ENTRY(515),
1741 ICE_PTT_UNUSED_ENTRY(516),
1742 ICE_PTT_UNUSED_ENTRY(517),
1743 ICE_PTT_UNUSED_ENTRY(518),
1744 ICE_PTT_UNUSED_ENTRY(519),
1746 ICE_PTT_UNUSED_ENTRY(520),
1747 ICE_PTT_UNUSED_ENTRY(521),
1748 ICE_PTT_UNUSED_ENTRY(522),
1749 ICE_PTT_UNUSED_ENTRY(523),
1750 ICE_PTT_UNUSED_ENTRY(524),
1751 ICE_PTT_UNUSED_ENTRY(525),
1752 ICE_PTT_UNUSED_ENTRY(526),
1753 ICE_PTT_UNUSED_ENTRY(527),
1754 ICE_PTT_UNUSED_ENTRY(528),
1755 ICE_PTT_UNUSED_ENTRY(529),
1757 ICE_PTT_UNUSED_ENTRY(530),
1758 ICE_PTT_UNUSED_ENTRY(531),
1759 ICE_PTT_UNUSED_ENTRY(532),
1760 ICE_PTT_UNUSED_ENTRY(533),
1761 ICE_PTT_UNUSED_ENTRY(534),
1762 ICE_PTT_UNUSED_ENTRY(535),
1763 ICE_PTT_UNUSED_ENTRY(536),
1764 ICE_PTT_UNUSED_ENTRY(537),
1765 ICE_PTT_UNUSED_ENTRY(538),
1766 ICE_PTT_UNUSED_ENTRY(539),
1768 ICE_PTT_UNUSED_ENTRY(540),
1769 ICE_PTT_UNUSED_ENTRY(541),
1770 ICE_PTT_UNUSED_ENTRY(542),
1771 ICE_PTT_UNUSED_ENTRY(543),
1772 ICE_PTT_UNUSED_ENTRY(544),
1773 ICE_PTT_UNUSED_ENTRY(545),
1774 ICE_PTT_UNUSED_ENTRY(546),
1775 ICE_PTT_UNUSED_ENTRY(547),
1776 ICE_PTT_UNUSED_ENTRY(548),
1777 ICE_PTT_UNUSED_ENTRY(549),
1779 ICE_PTT_UNUSED_ENTRY(550),
1780 ICE_PTT_UNUSED_ENTRY(551),
1781 ICE_PTT_UNUSED_ENTRY(552),
1782 ICE_PTT_UNUSED_ENTRY(553),
1783 ICE_PTT_UNUSED_ENTRY(554),
1784 ICE_PTT_UNUSED_ENTRY(555),
1785 ICE_PTT_UNUSED_ENTRY(556),
1786 ICE_PTT_UNUSED_ENTRY(557),
1787 ICE_PTT_UNUSED_ENTRY(558),
1788 ICE_PTT_UNUSED_ENTRY(559),
1790 ICE_PTT_UNUSED_ENTRY(560),
1791 ICE_PTT_UNUSED_ENTRY(561),
1792 ICE_PTT_UNUSED_ENTRY(562),
1793 ICE_PTT_UNUSED_ENTRY(563),
1794 ICE_PTT_UNUSED_ENTRY(564),
1795 ICE_PTT_UNUSED_ENTRY(565),
1796 ICE_PTT_UNUSED_ENTRY(566),
1797 ICE_PTT_UNUSED_ENTRY(567),
1798 ICE_PTT_UNUSED_ENTRY(568),
1799 ICE_PTT_UNUSED_ENTRY(569),
1801 ICE_PTT_UNUSED_ENTRY(570),
1802 ICE_PTT_UNUSED_ENTRY(571),
1803 ICE_PTT_UNUSED_ENTRY(572),
1804 ICE_PTT_UNUSED_ENTRY(573),
1805 ICE_PTT_UNUSED_ENTRY(574),
1806 ICE_PTT_UNUSED_ENTRY(575),
1807 ICE_PTT_UNUSED_ENTRY(576),
1808 ICE_PTT_UNUSED_ENTRY(577),
1809 ICE_PTT_UNUSED_ENTRY(578),
1810 ICE_PTT_UNUSED_ENTRY(579),
1812 ICE_PTT_UNUSED_ENTRY(580),
1813 ICE_PTT_UNUSED_ENTRY(581),
1814 ICE_PTT_UNUSED_ENTRY(582),
1815 ICE_PTT_UNUSED_ENTRY(583),
1816 ICE_PTT_UNUSED_ENTRY(584),
1817 ICE_PTT_UNUSED_ENTRY(585),
1818 ICE_PTT_UNUSED_ENTRY(586),
1819 ICE_PTT_UNUSED_ENTRY(587),
1820 ICE_PTT_UNUSED_ENTRY(588),
1821 ICE_PTT_UNUSED_ENTRY(589),
1823 ICE_PTT_UNUSED_ENTRY(590),
1824 ICE_PTT_UNUSED_ENTRY(591),
1825 ICE_PTT_UNUSED_ENTRY(592),
1826 ICE_PTT_UNUSED_ENTRY(593),
1827 ICE_PTT_UNUSED_ENTRY(594),
1828 ICE_PTT_UNUSED_ENTRY(595),
1829 ICE_PTT_UNUSED_ENTRY(596),
1830 ICE_PTT_UNUSED_ENTRY(597),
1831 ICE_PTT_UNUSED_ENTRY(598),
1832 ICE_PTT_UNUSED_ENTRY(599),
1834 ICE_PTT_UNUSED_ENTRY(600),
1835 ICE_PTT_UNUSED_ENTRY(601),
1836 ICE_PTT_UNUSED_ENTRY(602),
1837 ICE_PTT_UNUSED_ENTRY(603),
1838 ICE_PTT_UNUSED_ENTRY(604),
1839 ICE_PTT_UNUSED_ENTRY(605),
1840 ICE_PTT_UNUSED_ENTRY(606),
1841 ICE_PTT_UNUSED_ENTRY(607),
1842 ICE_PTT_UNUSED_ENTRY(608),
1843 ICE_PTT_UNUSED_ENTRY(609),
1845 ICE_PTT_UNUSED_ENTRY(610),
1846 ICE_PTT_UNUSED_ENTRY(611),
1847 ICE_PTT_UNUSED_ENTRY(612),
1848 ICE_PTT_UNUSED_ENTRY(613),
1849 ICE_PTT_UNUSED_ENTRY(614),
1850 ICE_PTT_UNUSED_ENTRY(615),
1851 ICE_PTT_UNUSED_ENTRY(616),
1852 ICE_PTT_UNUSED_ENTRY(617),
1853 ICE_PTT_UNUSED_ENTRY(618),
1854 ICE_PTT_UNUSED_ENTRY(619),
1856 ICE_PTT_UNUSED_ENTRY(620),
1857 ICE_PTT_UNUSED_ENTRY(621),
1858 ICE_PTT_UNUSED_ENTRY(622),
1859 ICE_PTT_UNUSED_ENTRY(623),
1860 ICE_PTT_UNUSED_ENTRY(624),
1861 ICE_PTT_UNUSED_ENTRY(625),
1862 ICE_PTT_UNUSED_ENTRY(626),
1863 ICE_PTT_UNUSED_ENTRY(627),
1864 ICE_PTT_UNUSED_ENTRY(628),
1865 ICE_PTT_UNUSED_ENTRY(629),
1867 ICE_PTT_UNUSED_ENTRY(630),
1868 ICE_PTT_UNUSED_ENTRY(631),
1869 ICE_PTT_UNUSED_ENTRY(632),
1870 ICE_PTT_UNUSED_ENTRY(633),
1871 ICE_PTT_UNUSED_ENTRY(634),
1872 ICE_PTT_UNUSED_ENTRY(635),
1873 ICE_PTT_UNUSED_ENTRY(636),
1874 ICE_PTT_UNUSED_ENTRY(637),
1875 ICE_PTT_UNUSED_ENTRY(638),
1876 ICE_PTT_UNUSED_ENTRY(639),
1878 ICE_PTT_UNUSED_ENTRY(640),
1879 ICE_PTT_UNUSED_ENTRY(641),
1880 ICE_PTT_UNUSED_ENTRY(642),
1881 ICE_PTT_UNUSED_ENTRY(643),
1882 ICE_PTT_UNUSED_ENTRY(644),
1883 ICE_PTT_UNUSED_ENTRY(645),
1884 ICE_PTT_UNUSED_ENTRY(646),
1885 ICE_PTT_UNUSED_ENTRY(647),
1886 ICE_PTT_UNUSED_ENTRY(648),
1887 ICE_PTT_UNUSED_ENTRY(649),
1889 ICE_PTT_UNUSED_ENTRY(650),
1890 ICE_PTT_UNUSED_ENTRY(651),
1891 ICE_PTT_UNUSED_ENTRY(652),
1892 ICE_PTT_UNUSED_ENTRY(653),
1893 ICE_PTT_UNUSED_ENTRY(654),
1894 ICE_PTT_UNUSED_ENTRY(655),
1895 ICE_PTT_UNUSED_ENTRY(656),
1896 ICE_PTT_UNUSED_ENTRY(657),
1897 ICE_PTT_UNUSED_ENTRY(658),
1898 ICE_PTT_UNUSED_ENTRY(659),
1900 ICE_PTT_UNUSED_ENTRY(660),
1901 ICE_PTT_UNUSED_ENTRY(661),
1902 ICE_PTT_UNUSED_ENTRY(662),
1903 ICE_PTT_UNUSED_ENTRY(663),
1904 ICE_PTT_UNUSED_ENTRY(664),
1905 ICE_PTT_UNUSED_ENTRY(665),
1906 ICE_PTT_UNUSED_ENTRY(666),
1907 ICE_PTT_UNUSED_ENTRY(667),
1908 ICE_PTT_UNUSED_ENTRY(668),
1909 ICE_PTT_UNUSED_ENTRY(669),
1911 ICE_PTT_UNUSED_ENTRY(670),
1912 ICE_PTT_UNUSED_ENTRY(671),
1913 ICE_PTT_UNUSED_ENTRY(672),
1914 ICE_PTT_UNUSED_ENTRY(673),
1915 ICE_PTT_UNUSED_ENTRY(674),
1916 ICE_PTT_UNUSED_ENTRY(675),
1917 ICE_PTT_UNUSED_ENTRY(676),
1918 ICE_PTT_UNUSED_ENTRY(677),
1919 ICE_PTT_UNUSED_ENTRY(678),
1920 ICE_PTT_UNUSED_ENTRY(679),
1922 ICE_PTT_UNUSED_ENTRY(680),
1923 ICE_PTT_UNUSED_ENTRY(681),
1924 ICE_PTT_UNUSED_ENTRY(682),
1925 ICE_PTT_UNUSED_ENTRY(683),
1926 ICE_PTT_UNUSED_ENTRY(684),
1927 ICE_PTT_UNUSED_ENTRY(685),
1928 ICE_PTT_UNUSED_ENTRY(686),
1929 ICE_PTT_UNUSED_ENTRY(687),
1930 ICE_PTT_UNUSED_ENTRY(688),
1931 ICE_PTT_UNUSED_ENTRY(689),
1933 ICE_PTT_UNUSED_ENTRY(690),
1934 ICE_PTT_UNUSED_ENTRY(691),
1935 ICE_PTT_UNUSED_ENTRY(692),
1936 ICE_PTT_UNUSED_ENTRY(693),
1937 ICE_PTT_UNUSED_ENTRY(694),
1938 ICE_PTT_UNUSED_ENTRY(695),
1939 ICE_PTT_UNUSED_ENTRY(696),
1940 ICE_PTT_UNUSED_ENTRY(697),
1941 ICE_PTT_UNUSED_ENTRY(698),
1942 ICE_PTT_UNUSED_ENTRY(699),
1944 ICE_PTT_UNUSED_ENTRY(700),
1945 ICE_PTT_UNUSED_ENTRY(701),
1946 ICE_PTT_UNUSED_ENTRY(702),
1947 ICE_PTT_UNUSED_ENTRY(703),
1948 ICE_PTT_UNUSED_ENTRY(704),
1949 ICE_PTT_UNUSED_ENTRY(705),
1950 ICE_PTT_UNUSED_ENTRY(706),
1951 ICE_PTT_UNUSED_ENTRY(707),
1952 ICE_PTT_UNUSED_ENTRY(708),
1953 ICE_PTT_UNUSED_ENTRY(709),
1955 ICE_PTT_UNUSED_ENTRY(710),
1956 ICE_PTT_UNUSED_ENTRY(711),
1957 ICE_PTT_UNUSED_ENTRY(712),
1958 ICE_PTT_UNUSED_ENTRY(713),
1959 ICE_PTT_UNUSED_ENTRY(714),
1960 ICE_PTT_UNUSED_ENTRY(715),
1961 ICE_PTT_UNUSED_ENTRY(716),
1962 ICE_PTT_UNUSED_ENTRY(717),
1963 ICE_PTT_UNUSED_ENTRY(718),
1964 ICE_PTT_UNUSED_ENTRY(719),
1966 ICE_PTT_UNUSED_ENTRY(720),
1967 ICE_PTT_UNUSED_ENTRY(721),
1968 ICE_PTT_UNUSED_ENTRY(722),
1969 ICE_PTT_UNUSED_ENTRY(723),
1970 ICE_PTT_UNUSED_ENTRY(724),
1971 ICE_PTT_UNUSED_ENTRY(725),
1972 ICE_PTT_UNUSED_ENTRY(726),
1973 ICE_PTT_UNUSED_ENTRY(727),
1974 ICE_PTT_UNUSED_ENTRY(728),
1975 ICE_PTT_UNUSED_ENTRY(729),
1977 ICE_PTT_UNUSED_ENTRY(730),
1978 ICE_PTT_UNUSED_ENTRY(731),
1979 ICE_PTT_UNUSED_ENTRY(732),
1980 ICE_PTT_UNUSED_ENTRY(733),
1981 ICE_PTT_UNUSED_ENTRY(734),
1982 ICE_PTT_UNUSED_ENTRY(735),
1983 ICE_PTT_UNUSED_ENTRY(736),
1984 ICE_PTT_UNUSED_ENTRY(737),
1985 ICE_PTT_UNUSED_ENTRY(738),
1986 ICE_PTT_UNUSED_ENTRY(739),
1988 ICE_PTT_UNUSED_ENTRY(740),
1989 ICE_PTT_UNUSED_ENTRY(741),
1990 ICE_PTT_UNUSED_ENTRY(742),
1991 ICE_PTT_UNUSED_ENTRY(743),
1992 ICE_PTT_UNUSED_ENTRY(744),
1993 ICE_PTT_UNUSED_ENTRY(745),
1994 ICE_PTT_UNUSED_ENTRY(746),
1995 ICE_PTT_UNUSED_ENTRY(747),
1996 ICE_PTT_UNUSED_ENTRY(748),
1997 ICE_PTT_UNUSED_ENTRY(749),
1999 ICE_PTT_UNUSED_ENTRY(750),
2000 ICE_PTT_UNUSED_ENTRY(751),
2001 ICE_PTT_UNUSED_ENTRY(752),
2002 ICE_PTT_UNUSED_ENTRY(753),
2003 ICE_PTT_UNUSED_ENTRY(754),
2004 ICE_PTT_UNUSED_ENTRY(755),
2005 ICE_PTT_UNUSED_ENTRY(756),
2006 ICE_PTT_UNUSED_ENTRY(757),
2007 ICE_PTT_UNUSED_ENTRY(758),
2008 ICE_PTT_UNUSED_ENTRY(759),
2010 ICE_PTT_UNUSED_ENTRY(760),
2011 ICE_PTT_UNUSED_ENTRY(761),
2012 ICE_PTT_UNUSED_ENTRY(762),
2013 ICE_PTT_UNUSED_ENTRY(763),
2014 ICE_PTT_UNUSED_ENTRY(764),
2015 ICE_PTT_UNUSED_ENTRY(765),
2016 ICE_PTT_UNUSED_ENTRY(766),
2017 ICE_PTT_UNUSED_ENTRY(767),
2018 ICE_PTT_UNUSED_ENTRY(768),
2019 ICE_PTT_UNUSED_ENTRY(769),
2021 ICE_PTT_UNUSED_ENTRY(770),
2022 ICE_PTT_UNUSED_ENTRY(771),
2023 ICE_PTT_UNUSED_ENTRY(772),
2024 ICE_PTT_UNUSED_ENTRY(773),
2025 ICE_PTT_UNUSED_ENTRY(774),
2026 ICE_PTT_UNUSED_ENTRY(775),
2027 ICE_PTT_UNUSED_ENTRY(776),
2028 ICE_PTT_UNUSED_ENTRY(777),
2029 ICE_PTT_UNUSED_ENTRY(778),
2030 ICE_PTT_UNUSED_ENTRY(779),
2032 ICE_PTT_UNUSED_ENTRY(780),
2033 ICE_PTT_UNUSED_ENTRY(781),
2034 ICE_PTT_UNUSED_ENTRY(782),
2035 ICE_PTT_UNUSED_ENTRY(783),
2036 ICE_PTT_UNUSED_ENTRY(784),
2037 ICE_PTT_UNUSED_ENTRY(785),
2038 ICE_PTT_UNUSED_ENTRY(786),
2039 ICE_PTT_UNUSED_ENTRY(787),
2040 ICE_PTT_UNUSED_ENTRY(788),
2041 ICE_PTT_UNUSED_ENTRY(789),
2043 ICE_PTT_UNUSED_ENTRY(790),
2044 ICE_PTT_UNUSED_ENTRY(791),
2045 ICE_PTT_UNUSED_ENTRY(792),
2046 ICE_PTT_UNUSED_ENTRY(793),
2047 ICE_PTT_UNUSED_ENTRY(794),
2048 ICE_PTT_UNUSED_ENTRY(795),
2049 ICE_PTT_UNUSED_ENTRY(796),
2050 ICE_PTT_UNUSED_ENTRY(797),
2051 ICE_PTT_UNUSED_ENTRY(798),
2052 ICE_PTT_UNUSED_ENTRY(799),
2054 ICE_PTT_UNUSED_ENTRY(800),
2055 ICE_PTT_UNUSED_ENTRY(801),
2056 ICE_PTT_UNUSED_ENTRY(802),
2057 ICE_PTT_UNUSED_ENTRY(803),
2058 ICE_PTT_UNUSED_ENTRY(804),
2059 ICE_PTT_UNUSED_ENTRY(805),
2060 ICE_PTT_UNUSED_ENTRY(806),
2061 ICE_PTT_UNUSED_ENTRY(807),
2062 ICE_PTT_UNUSED_ENTRY(808),
2063 ICE_PTT_UNUSED_ENTRY(809),
2065 ICE_PTT_UNUSED_ENTRY(810),
2066 ICE_PTT_UNUSED_ENTRY(811),
2067 ICE_PTT_UNUSED_ENTRY(812),
2068 ICE_PTT_UNUSED_ENTRY(813),
2069 ICE_PTT_UNUSED_ENTRY(814),
2070 ICE_PTT_UNUSED_ENTRY(815),
2071 ICE_PTT_UNUSED_ENTRY(816),
2072 ICE_PTT_UNUSED_ENTRY(817),
2073 ICE_PTT_UNUSED_ENTRY(818),
2074 ICE_PTT_UNUSED_ENTRY(819),
2076 ICE_PTT_UNUSED_ENTRY(820),
2077 ICE_PTT_UNUSED_ENTRY(821),
2078 ICE_PTT_UNUSED_ENTRY(822),
2079 ICE_PTT_UNUSED_ENTRY(823),
2080 ICE_PTT_UNUSED_ENTRY(824),
2081 ICE_PTT_UNUSED_ENTRY(825),
2082 ICE_PTT_UNUSED_ENTRY(826),
2083 ICE_PTT_UNUSED_ENTRY(827),
2084 ICE_PTT_UNUSED_ENTRY(828),
2085 ICE_PTT_UNUSED_ENTRY(829),
2087 ICE_PTT_UNUSED_ENTRY(830),
2088 ICE_PTT_UNUSED_ENTRY(831),
2089 ICE_PTT_UNUSED_ENTRY(832),
2090 ICE_PTT_UNUSED_ENTRY(833),
2091 ICE_PTT_UNUSED_ENTRY(834),
2092 ICE_PTT_UNUSED_ENTRY(835),
2093 ICE_PTT_UNUSED_ENTRY(836),
2094 ICE_PTT_UNUSED_ENTRY(837),
2095 ICE_PTT_UNUSED_ENTRY(838),
2096 ICE_PTT_UNUSED_ENTRY(839),
2098 ICE_PTT_UNUSED_ENTRY(840),
2099 ICE_PTT_UNUSED_ENTRY(841),
2100 ICE_PTT_UNUSED_ENTRY(842),
2101 ICE_PTT_UNUSED_ENTRY(843),
2102 ICE_PTT_UNUSED_ENTRY(844),
2103 ICE_PTT_UNUSED_ENTRY(845),
2104 ICE_PTT_UNUSED_ENTRY(846),
2105 ICE_PTT_UNUSED_ENTRY(847),
2106 ICE_PTT_UNUSED_ENTRY(848),
2107 ICE_PTT_UNUSED_ENTRY(849),
2109 ICE_PTT_UNUSED_ENTRY(850),
2110 ICE_PTT_UNUSED_ENTRY(851),
2111 ICE_PTT_UNUSED_ENTRY(852),
2112 ICE_PTT_UNUSED_ENTRY(853),
2113 ICE_PTT_UNUSED_ENTRY(854),
2114 ICE_PTT_UNUSED_ENTRY(855),
2115 ICE_PTT_UNUSED_ENTRY(856),
2116 ICE_PTT_UNUSED_ENTRY(857),
2117 ICE_PTT_UNUSED_ENTRY(858),
2118 ICE_PTT_UNUSED_ENTRY(859),
2120 ICE_PTT_UNUSED_ENTRY(860),
2121 ICE_PTT_UNUSED_ENTRY(861),
2122 ICE_PTT_UNUSED_ENTRY(862),
2123 ICE_PTT_UNUSED_ENTRY(863),
2124 ICE_PTT_UNUSED_ENTRY(864),
2125 ICE_PTT_UNUSED_ENTRY(865),
2126 ICE_PTT_UNUSED_ENTRY(866),
2127 ICE_PTT_UNUSED_ENTRY(867),
2128 ICE_PTT_UNUSED_ENTRY(868),
2129 ICE_PTT_UNUSED_ENTRY(869),
2131 ICE_PTT_UNUSED_ENTRY(870),
2132 ICE_PTT_UNUSED_ENTRY(871),
2133 ICE_PTT_UNUSED_ENTRY(872),
2134 ICE_PTT_UNUSED_ENTRY(873),
2135 ICE_PTT_UNUSED_ENTRY(874),
2136 ICE_PTT_UNUSED_ENTRY(875),
2137 ICE_PTT_UNUSED_ENTRY(876),
2138 ICE_PTT_UNUSED_ENTRY(877),
2139 ICE_PTT_UNUSED_ENTRY(878),
2140 ICE_PTT_UNUSED_ENTRY(879),
2142 ICE_PTT_UNUSED_ENTRY(880),
2143 ICE_PTT_UNUSED_ENTRY(881),
2144 ICE_PTT_UNUSED_ENTRY(882),
2145 ICE_PTT_UNUSED_ENTRY(883),
2146 ICE_PTT_UNUSED_ENTRY(884),
2147 ICE_PTT_UNUSED_ENTRY(885),
2148 ICE_PTT_UNUSED_ENTRY(886),
2149 ICE_PTT_UNUSED_ENTRY(887),
2150 ICE_PTT_UNUSED_ENTRY(888),
2151 ICE_PTT_UNUSED_ENTRY(889),
2153 ICE_PTT_UNUSED_ENTRY(890),
2154 ICE_PTT_UNUSED_ENTRY(891),
2155 ICE_PTT_UNUSED_ENTRY(892),
2156 ICE_PTT_UNUSED_ENTRY(893),
2157 ICE_PTT_UNUSED_ENTRY(894),
2158 ICE_PTT_UNUSED_ENTRY(895),
2159 ICE_PTT_UNUSED_ENTRY(896),
2160 ICE_PTT_UNUSED_ENTRY(897),
2161 ICE_PTT_UNUSED_ENTRY(898),
2162 ICE_PTT_UNUSED_ENTRY(899),
2164 ICE_PTT_UNUSED_ENTRY(900),
2165 ICE_PTT_UNUSED_ENTRY(901),
2166 ICE_PTT_UNUSED_ENTRY(902),
2167 ICE_PTT_UNUSED_ENTRY(903),
2168 ICE_PTT_UNUSED_ENTRY(904),
2169 ICE_PTT_UNUSED_ENTRY(905),
2170 ICE_PTT_UNUSED_ENTRY(906),
2171 ICE_PTT_UNUSED_ENTRY(907),
2172 ICE_PTT_UNUSED_ENTRY(908),
2173 ICE_PTT_UNUSED_ENTRY(909),
2175 ICE_PTT_UNUSED_ENTRY(910),
2176 ICE_PTT_UNUSED_ENTRY(911),
2177 ICE_PTT_UNUSED_ENTRY(912),
2178 ICE_PTT_UNUSED_ENTRY(913),
2179 ICE_PTT_UNUSED_ENTRY(914),
2180 ICE_PTT_UNUSED_ENTRY(915),
2181 ICE_PTT_UNUSED_ENTRY(916),
2182 ICE_PTT_UNUSED_ENTRY(917),
2183 ICE_PTT_UNUSED_ENTRY(918),
2184 ICE_PTT_UNUSED_ENTRY(919),
2186 ICE_PTT_UNUSED_ENTRY(920),
2187 ICE_PTT_UNUSED_ENTRY(921),
2188 ICE_PTT_UNUSED_ENTRY(922),
2189 ICE_PTT_UNUSED_ENTRY(923),
2190 ICE_PTT_UNUSED_ENTRY(924),
2191 ICE_PTT_UNUSED_ENTRY(925),
2192 ICE_PTT_UNUSED_ENTRY(926),
2193 ICE_PTT_UNUSED_ENTRY(927),
2194 ICE_PTT_UNUSED_ENTRY(928),
2195 ICE_PTT_UNUSED_ENTRY(929),
2197 ICE_PTT_UNUSED_ENTRY(930),
2198 ICE_PTT_UNUSED_ENTRY(931),
2199 ICE_PTT_UNUSED_ENTRY(932),
2200 ICE_PTT_UNUSED_ENTRY(933),
2201 ICE_PTT_UNUSED_ENTRY(934),
2202 ICE_PTT_UNUSED_ENTRY(935),
2203 ICE_PTT_UNUSED_ENTRY(936),
2204 ICE_PTT_UNUSED_ENTRY(937),
2205 ICE_PTT_UNUSED_ENTRY(938),
2206 ICE_PTT_UNUSED_ENTRY(939),
2208 ICE_PTT_UNUSED_ENTRY(940),
2209 ICE_PTT_UNUSED_ENTRY(941),
2210 ICE_PTT_UNUSED_ENTRY(942),
2211 ICE_PTT_UNUSED_ENTRY(943),
2212 ICE_PTT_UNUSED_ENTRY(944),
2213 ICE_PTT_UNUSED_ENTRY(945),
2214 ICE_PTT_UNUSED_ENTRY(946),
2215 ICE_PTT_UNUSED_ENTRY(947),
2216 ICE_PTT_UNUSED_ENTRY(948),
2217 ICE_PTT_UNUSED_ENTRY(949),
2219 ICE_PTT_UNUSED_ENTRY(950),
2220 ICE_PTT_UNUSED_ENTRY(951),
2221 ICE_PTT_UNUSED_ENTRY(952),
2222 ICE_PTT_UNUSED_ENTRY(953),
2223 ICE_PTT_UNUSED_ENTRY(954),
2224 ICE_PTT_UNUSED_ENTRY(955),
2225 ICE_PTT_UNUSED_ENTRY(956),
2226 ICE_PTT_UNUSED_ENTRY(957),
2227 ICE_PTT_UNUSED_ENTRY(958),
2228 ICE_PTT_UNUSED_ENTRY(959),
2230 ICE_PTT_UNUSED_ENTRY(960),
2231 ICE_PTT_UNUSED_ENTRY(961),
2232 ICE_PTT_UNUSED_ENTRY(962),
2233 ICE_PTT_UNUSED_ENTRY(963),
2234 ICE_PTT_UNUSED_ENTRY(964),
2235 ICE_PTT_UNUSED_ENTRY(965),
2236 ICE_PTT_UNUSED_ENTRY(966),
2237 ICE_PTT_UNUSED_ENTRY(967),
2238 ICE_PTT_UNUSED_ENTRY(968),
2239 ICE_PTT_UNUSED_ENTRY(969),
2241 ICE_PTT_UNUSED_ENTRY(970),
2242 ICE_PTT_UNUSED_ENTRY(971),
2243 ICE_PTT_UNUSED_ENTRY(972),
2244 ICE_PTT_UNUSED_ENTRY(973),
2245 ICE_PTT_UNUSED_ENTRY(974),
2246 ICE_PTT_UNUSED_ENTRY(975),
2247 ICE_PTT_UNUSED_ENTRY(976),
2248 ICE_PTT_UNUSED_ENTRY(977),
2249 ICE_PTT_UNUSED_ENTRY(978),
2250 ICE_PTT_UNUSED_ENTRY(979),
2252 ICE_PTT_UNUSED_ENTRY(980),
2253 ICE_PTT_UNUSED_ENTRY(981),
2254 ICE_PTT_UNUSED_ENTRY(982),
2255 ICE_PTT_UNUSED_ENTRY(983),
2256 ICE_PTT_UNUSED_ENTRY(984),
2257 ICE_PTT_UNUSED_ENTRY(985),
2258 ICE_PTT_UNUSED_ENTRY(986),
2259 ICE_PTT_UNUSED_ENTRY(987),
2260 ICE_PTT_UNUSED_ENTRY(988),
2261 ICE_PTT_UNUSED_ENTRY(989),
2263 ICE_PTT_UNUSED_ENTRY(990),
2264 ICE_PTT_UNUSED_ENTRY(991),
2265 ICE_PTT_UNUSED_ENTRY(992),
2266 ICE_PTT_UNUSED_ENTRY(993),
2267 ICE_PTT_UNUSED_ENTRY(994),
2268 ICE_PTT_UNUSED_ENTRY(995),
2269 ICE_PTT_UNUSED_ENTRY(996),
2270 ICE_PTT_UNUSED_ENTRY(997),
2271 ICE_PTT_UNUSED_ENTRY(998),
2272 ICE_PTT_UNUSED_ENTRY(999),
2274 ICE_PTT_UNUSED_ENTRY(1000),
2275 ICE_PTT_UNUSED_ENTRY(1001),
2276 ICE_PTT_UNUSED_ENTRY(1002),
2277 ICE_PTT_UNUSED_ENTRY(1003),
2278 ICE_PTT_UNUSED_ENTRY(1004),
2279 ICE_PTT_UNUSED_ENTRY(1005),
2280 ICE_PTT_UNUSED_ENTRY(1006),
2281 ICE_PTT_UNUSED_ENTRY(1007),
2282 ICE_PTT_UNUSED_ENTRY(1008),
2283 ICE_PTT_UNUSED_ENTRY(1009),
2285 ICE_PTT_UNUSED_ENTRY(1010),
2286 ICE_PTT_UNUSED_ENTRY(1011),
2287 ICE_PTT_UNUSED_ENTRY(1012),
2288 ICE_PTT_UNUSED_ENTRY(1013),
2289 ICE_PTT_UNUSED_ENTRY(1014),
2290 ICE_PTT_UNUSED_ENTRY(1015),
2291 ICE_PTT_UNUSED_ENTRY(1016),
2292 ICE_PTT_UNUSED_ENTRY(1017),
2293 ICE_PTT_UNUSED_ENTRY(1018),
2294 ICE_PTT_UNUSED_ENTRY(1019),
2296 ICE_PTT_UNUSED_ENTRY(1020),
2297 ICE_PTT_UNUSED_ENTRY(1021),
2298 ICE_PTT_UNUSED_ENTRY(1022),
2299 ICE_PTT_UNUSED_ENTRY(1023),
2302 static inline struct ice_rx_ptype_decoded ice_decode_rx_desc_ptype(u16 ptype)
2304 return ice_ptype_lkup[ptype];
2307 #define ICE_LINK_SPEED_UNKNOWN 0
2308 #define ICE_LINK_SPEED_10MBPS 10
2309 #define ICE_LINK_SPEED_100MBPS 100
2310 #define ICE_LINK_SPEED_1000MBPS 1000
2311 #define ICE_LINK_SPEED_2500MBPS 2500
2312 #define ICE_LINK_SPEED_5000MBPS 5000
2313 #define ICE_LINK_SPEED_10000MBPS 10000
2314 #define ICE_LINK_SPEED_20000MBPS 20000
2315 #define ICE_LINK_SPEED_25000MBPS 25000
2316 #define ICE_LINK_SPEED_40000MBPS 40000
2317 #define ICE_LINK_SPEED_50000MBPS 50000
2318 #define ICE_LINK_SPEED_100000MBPS 100000
2320 #endif /* _ICE_LAN_TX_RX_H_ */