patch 'net/cnxk: fix Rx offloads to handle timestamp' has been queued to stable release 21.11.9
Kevin Traynor
ktraynor at redhat.com
Wed Nov 27 18:17:28 CET 2024
Hi,
FYI, your patch has been queued to stable release 21.11.9
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/02/24. So please
shout if anyone has objections.
Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.
Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable
This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/b65e408f0d05dd46ea8f183ca1092fd3da23c32e
Thanks.
Kevin
---
>From b65e408f0d05dd46ea8f183ca1092fd3da23c32e Mon Sep 17 00:00:00 2001
From: Rakesh Kudurumalla <rkudurumalla at marvell.com>
Date: Tue, 1 Oct 2024 11:30:41 +0530
Subject: [PATCH] net/cnxk: fix Rx offloads to handle timestamp
[ upstream commit f12dab814f0898c661d32f6cdaaae6a11bbacb6e ]
RX offloads flags are updated to handle timestamp
in VF when PTP is enabled in respective PF in kernel.
Fixes: c7c7c8ed7d47 ("net/cnxk: get PTP status")
Signed-off-by: Rakesh Kudurumalla <rkudurumalla at marvell.com>
---
drivers/net/cnxk/cn10k_ethdev.c | 6 +++++-
drivers/net/cnxk/cn9k_ethdev.c | 5 ++++-
drivers/net/cnxk/cnxk_ethdev.h | 7 +++++++
3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/drivers/net/cnxk/cn10k_ethdev.c b/drivers/net/cnxk/cn10k_ethdev.c
index fed447c874..c06af766db 100644
--- a/drivers/net/cnxk/cn10k_ethdev.c
+++ b/drivers/net/cnxk/cn10k_ethdev.c
@@ -31,5 +31,5 @@ nix_rx_offload_flags(struct rte_eth_dev *eth_dev)
flags |= NIX_RX_MULTI_SEG_F;
- if ((dev->rx_offloads & RTE_ETH_RX_OFFLOAD_TIMESTAMP))
+ if ((dev->rx_offloads & RTE_ETH_RX_OFFLOAD_TIMESTAMP) || dev->ptp_en)
flags |= NIX_RX_OFFLOAD_TSTAMP_F;
@@ -405,4 +405,8 @@ cn10k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
rte_eth_fp_ops[eth_dev->data->port_id].rx_pkt_burst = eth_dev->rx_pkt_burst;
rte_mb();
+ if (dev->cnxk_sso_ptp_tstamp_cb)
+ dev->cnxk_sso_ptp_tstamp_cb(eth_dev->data->port_id,
+ NIX_RX_OFFLOAD_TSTAMP_F, dev->ptp_en);
+
}
diff --git a/drivers/net/cnxk/cn9k_ethdev.c b/drivers/net/cnxk/cn9k_ethdev.c
index 9ec5d7fe89..c45e5d4f6d 100644
--- a/drivers/net/cnxk/cn9k_ethdev.c
+++ b/drivers/net/cnxk/cn9k_ethdev.c
@@ -31,5 +31,5 @@ nix_rx_offload_flags(struct rte_eth_dev *eth_dev)
flags |= NIX_RX_MULTI_SEG_F;
- if ((dev->rx_offloads & RTE_ETH_RX_OFFLOAD_TIMESTAMP))
+ if ((dev->rx_offloads & RTE_ETH_RX_OFFLOAD_TIMESTAMP) || dev->ptp_en)
flags |= NIX_RX_OFFLOAD_TSTAMP_F;
@@ -396,4 +396,7 @@ cn9k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
rte_eth_fp_ops[eth_dev->data->port_id].rx_pkt_burst = eth_dev->rx_pkt_burst;
rte_mb();
+ if (dev->cnxk_sso_ptp_tstamp_cb)
+ dev->cnxk_sso_ptp_tstamp_cb(eth_dev->data->port_id,
+ NIX_RX_OFFLOAD_TSTAMP_F, dev->ptp_en);
}
diff --git a/drivers/net/cnxk/cnxk_ethdev.h b/drivers/net/cnxk/cnxk_ethdev.h
index ccdc5f04ee..4f65462b78 100644
--- a/drivers/net/cnxk/cnxk_ethdev.h
+++ b/drivers/net/cnxk/cnxk_ethdev.h
@@ -399,4 +399,11 @@ struct cnxk_eth_dev {
struct cnxk_eth_dev_sec_inb inb;
struct cnxk_eth_dev_sec_outb outb;
+
+ /* SSO event dev */
+ void *evdev_priv;
+
+ /* SSO event dev ptp */
+ void (*cnxk_sso_ptp_tstamp_cb)
+ (uint16_t port_id, uint16_t flags, bool ptp_en);
};
--
2.47.0
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2024-11-27 17:17:38.975009289 +0000
+++ 0021-net-cnxk-fix-Rx-offloads-to-handle-timestamp.patch 2024-11-27 17:17:38.177269124 +0000
@@ -1 +1 @@
-From f12dab814f0898c661d32f6cdaaae6a11bbacb6e Mon Sep 17 00:00:00 2001
+From b65e408f0d05dd46ea8f183ca1092fd3da23c32e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit f12dab814f0898c661d32f6cdaaae6a11bbacb6e ]
+
@@ -10 +11,0 @@
-Cc: stable at dpdk.org
@@ -20 +21 @@
-index 46476e386a..f5b485650e 100644
+index fed447c874..c06af766db 100644
@@ -30 +31 @@
-@@ -509,4 +509,8 @@ cn10k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
+@@ -405,4 +405,8 @@ cn10k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
@@ -40 +41 @@
-index 5417628368..c419593a23 100644
+index 9ec5d7fe89..c45e5d4f6d 100644
@@ -50 +51 @@
-@@ -468,4 +468,7 @@ cn9k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
+@@ -396,4 +396,7 @@ cn9k_nix_ptp_info_update_cb(struct roc_nix *nix, bool ptp_en)
@@ -59 +60 @@
-index 687c60c27d..5920488e1a 100644
+index ccdc5f04ee..4f65462b78 100644
@@ -62,3 +63,3 @@
-@@ -434,4 +434,11 @@ struct cnxk_eth_dev {
- /* Eswitch domain ID */
- uint16_t switch_domain_id;
+@@ -399,4 +399,11 @@ struct cnxk_eth_dev {
+ struct cnxk_eth_dev_sec_inb inb;
+ struct cnxk_eth_dev_sec_outb outb;
More information about the stable
mailing list