net/liquidio: fix jumbo frame flag condition for MTU set
[dpdk.git] / drivers / net / iavf / iavf_generic_flow.h
index 978d071..0ccf590 100644 (file)
@@ -34,6 +34,7 @@
 #define IAVF_PROT_AH               (1ULL << 23)
 #define IAVF_PROT_L2TPV3OIP        (1ULL << 24)
 #define IAVF_PROT_PFCP             (1ULL << 25)
+#define IAVF_PROT_ECPRI                    (1ULL << 26)
 
 
 /* field */
@@ -59,6 +60,7 @@
 #define IAVF_L2TPV3OIP_SESSION_ID   (1ULL << 45)
 #define IAVF_PFCP_S_FIELD          (1ULL << 44)
 #define IAVF_PFCP_SEID             (1ULL << 43)
+#define IAVF_ECPRI_PC_RTC_ID       (1ULL << 42)
 
 /* input set */
 
        (IAVF_PROT_PFCP | IAVF_PFCP_S_FIELD)
 #define IAVF_INSET_PFCP_SEID \
        (IAVF_PROT_PFCP | IAVF_PFCP_S_FIELD | IAVF_PFCP_SEID)
-
+#define IAVF_INSET_ECPRI \
+       (IAVF_PROT_ECPRI | IAVF_ECPRI_PC_RTC_ID)
 
 /* empty pattern */
 extern enum rte_flow_item_type iavf_pattern_empty[];
@@ -182,15 +185,68 @@ extern enum rte_flow_item_type iavf_pattern_eth_ipv6_icmp6[];
 extern enum rte_flow_item_type iavf_pattern_eth_vlan_ipv6_icmp6[];
 extern enum rte_flow_item_type iavf_pattern_eth_qinq_ipv6_icmp6[];
 
-/* GTPU */
+/* IPv4 GTPC */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpc[];
+
+/* IPv4 GTPU (EH) */
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu[];
-extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh[];
+
+/* IPv6 GTPC */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpc[];
+
+/* IPv6 GTPU (EH) */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh[];
+
+/* IPv4 GTPU IPv4 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4_icmp[];
+
+/* IPv4 GTPU IPv6 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv6[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv6_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv6_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv6_icmp[];
+
+/* IPv6 GTPU IPv4 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv4[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv4_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv4_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv4_icmp[];
+
+/* IPv6 GTPU IPv6 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv6[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv6_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv6_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_ipv6_icmp[];
+
+/* IPv4 GTPU EH IPv4 */
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4_udp[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4_tcp[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4_icmp[];
 
+/* IPv4 GTPU EH IPv6 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv6[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv6_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv6_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv6_icmp[];
+
+/* IPv6 GTPU EH IPv4 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv4[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv4_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv4_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv4_icmp[];
+
+/* IPv6 GTPU EH IPv6 */
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv6[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv6_udp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv6_tcp[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh_ipv6_icmp[];
+
 /* ESP */
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_esp[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_udp_esp[];
@@ -209,6 +265,9 @@ extern enum rte_flow_item_type iavf_pattern_eth_ipv6_l2tpv3[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv4_pfcp[];
 extern enum rte_flow_item_type iavf_pattern_eth_ipv6_pfcp[];
 
+/* ECPRI */
+extern enum rte_flow_item_type iavf_pattern_eth_ecpri[];
+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_ecpri[];
 
 extern const struct rte_flow_ops iavf_flow_ops;