[PATCH v2] ethdev: add GTP PSC QFI field

Dariusz Sosnowski dsosnowski at nvidia.com
Wed Sep 21 16:32:02 CEST 2022


This patch introduces the GTP PSC QFI modify field support and adds
the testpmd CLI command support.

An example for copying GTP QFI field using modify_field action:

	modify_field op set
	             dst_type meta
	             src_type gtp_psc_qfi
	             width 8

An example of setting GTP QFI field value to 0x1f using modify_field
action:

	modify_field op set
	             dst_type gtp_psc_qfi
	             src_type value src_value 1f
	             width 8

Signed-off-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
Acked-by: Ori Kam <orika at nvidia.com>
---

v2:

* Squashed ethdev and testpmd commits.

 app/test-pmd/cmdline_flow.c | 2 +-
 lib/ethdev/rte_flow.h       | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 7f50028eb7..b9673314b1 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -796,7 +796,7 @@ static const char *const modify_field_ids[] = {
 	"udp_port_src", "udp_port_dst",
 	"vxlan_vni", "geneve_vni", "gtp_teid",
 	"tag", "mark", "meta", "pointer", "value",
-	"ipv4_ecn", "ipv6_ecn", NULL
+	"ipv4_ecn", "ipv6_ecn", "gtp_psc_qfi", NULL
 };
 
 /** Maximum number of subsequent tokens and arguments on the stack. */
diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
index a79f1e7ef0..e64831f8f1 100644
--- a/lib/ethdev/rte_flow.h
+++ b/lib/ethdev/rte_flow.h
@@ -3689,6 +3689,7 @@ enum rte_flow_field_id {
 	RTE_FLOW_FIELD_VALUE,		/**< Immediate value. */
 	RTE_FLOW_FIELD_IPV4_ECN,	/**< IPv4 ECN. */
 	RTE_FLOW_FIELD_IPV6_ECN,	/**< IPv6 ECN. */
+	RTE_FLOW_FIELD_GTP_PSC_QFI,	/**< GTP QFI. */
 };
 
 /**
-- 
2.25.1



More information about the dev mailing list