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