xref: /linux/include/linux/net/intel/libie/pctype.h (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /* Copyright (C) 2025 Intel Corporation */
3 
4 #ifndef __LIBIE_PCTYPE_H
5 #define __LIBIE_PCTYPE_H
6 
7 /* Packet Classifier Type indexes, used to set the xxQF_HENA registers. Also
8  * communicated over the virtchnl API as part of struct virtchnl_rss_hashena.
9  */
10 enum libie_filter_pctype {
11 	/* Note: Values 0-28 are reserved for future use.
12 	 * Value 29, 30, 32 are not supported on XL710 and X710.
13 	 */
14 	LIBIE_FILTER_PCTYPE_NONF_UNICAST_IPV4_UDP	= 29,
15 	LIBIE_FILTER_PCTYPE_NONF_MULTICAST_IPV4_UDP	= 30,
16 	LIBIE_FILTER_PCTYPE_NONF_IPV4_UDP		= 31,
17 	LIBIE_FILTER_PCTYPE_NONF_IPV4_TCP_SYN_NO_ACK	= 32,
18 	LIBIE_FILTER_PCTYPE_NONF_IPV4_TCP		= 33,
19 	LIBIE_FILTER_PCTYPE_NONF_IPV4_SCTP		= 34,
20 	LIBIE_FILTER_PCTYPE_NONF_IPV4_OTHER		= 35,
21 	LIBIE_FILTER_PCTYPE_FRAG_IPV4			= 36,
22 	/* Note: Values 37-38 are reserved for future use.
23 	 * Value 39, 40, 42 are not supported on XL710 and X710.
24 	 */
25 	LIBIE_FILTER_PCTYPE_NONF_UNICAST_IPV6_UDP	= 39,
26 	LIBIE_FILTER_PCTYPE_NONF_MULTICAST_IPV6_UDP	= 40,
27 	LIBIE_FILTER_PCTYPE_NONF_IPV6_UDP		= 41,
28 	LIBIE_FILTER_PCTYPE_NONF_IPV6_TCP_SYN_NO_ACK	= 42,
29 	LIBIE_FILTER_PCTYPE_NONF_IPV6_TCP		= 43,
30 	LIBIE_FILTER_PCTYPE_NONF_IPV6_SCTP		= 44,
31 	LIBIE_FILTER_PCTYPE_NONF_IPV6_OTHER		= 45,
32 	LIBIE_FILTER_PCTYPE_FRAG_IPV6			= 46,
33 	/* Note: Value 47 is reserved for future use */
34 	LIBIE_FILTER_PCTYPE_FCOE_OX			= 48,
35 	LIBIE_FILTER_PCTYPE_FCOE_RX			= 49,
36 	LIBIE_FILTER_PCTYPE_FCOE_OTHER			= 50,
37 	/* Note: Values 51-62 are reserved for future use */
38 	LIBIE_FILTER_PCTYPE_L2_PAYLOAD			= 63
39 };
40 
41 #endif /* __LIBIE_PCTYPE_H */
42