[dpdk-stable] [PATCH 19.11 6/9] net/bnxt: fix timesync when PTP is not supported
Kalesh A P
kalesh-anakkur.purayil at broadcom.com
Thu May 20 12:16:51 CEST 2021
From: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
[ upstream commit ab15dd5a1c4d563e80b10e42e39c4d2f010fa389 ]
Fixed to return error when PTP support is not supported on the port.
Also, removed an unnecessary check inside bnxt_get_rx_ts().
Fixes: b11cceb83a34 ("net/bnxt: support timesync")
Signed-off-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
---
drivers/net/bnxt/bnxt_ethdev.c | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index ed02cf0..08f56a3 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -3505,9 +3505,6 @@ static int bnxt_get_rx_ts(struct bnxt *bp, uint64_t *ts)
uint16_t port_id;
uint32_t fifo;
- if (!ptp)
- return -ENODEV;
-
fifo = rte_le_to_cpu_32(rte_read32((uint8_t *)bp->bar0 +
ptp->rx_mapped_regs[BNXT_PTP_RX_FIFO]));
if (!(fifo & BNXT_PTP_RX_FIFO_PENDING))
@@ -3538,7 +3535,7 @@ bnxt_timesync_write_time(struct rte_eth_dev *dev, const struct timespec *ts)
struct bnxt_ptp_cfg *ptp = bp->ptp_cfg;
if (!ptp)
- return 0;
+ return -ENOTSUP;
ns = rte_timespec_to_ns(ts);
/* Set the timecounters to a new value. */
@@ -3558,7 +3555,7 @@ bnxt_timesync_read_time(struct rte_eth_dev *dev, struct timespec *ts)
int rc = 0;
if (!ptp)
- return 0;
+ return -ENOTSUP;
if (BNXT_CHIP_THOR(bp))
rc = bnxt_hwrm_port_ts_query(bp, BNXT_PTP_FLAGS_CURRENT_TIME,
@@ -3580,7 +3577,7 @@ bnxt_timesync_enable(struct rte_eth_dev *dev)
int rc;
if (!ptp)
- return 0;
+ return -ENOTSUP;
ptp->rx_filter = 1;
ptp->tx_tstamp_en = 1;
@@ -3619,7 +3616,7 @@ bnxt_timesync_disable(struct rte_eth_dev *dev)
struct bnxt_ptp_cfg *ptp = bp->ptp_cfg;
if (!ptp)
- return 0;
+ return -ENOTSUP;
ptp->rx_filter = 0;
ptp->tx_tstamp_en = 0;
@@ -3644,7 +3641,7 @@ bnxt_timesync_read_rx_timestamp(struct rte_eth_dev *dev,
uint64_t ns;
if (!ptp)
- return 0;
+ return -ENOTSUP;
if (BNXT_CHIP_THOR(bp))
rx_tstamp_cycles = ptp->rx_timestamp;
@@ -3667,7 +3664,7 @@ bnxt_timesync_read_tx_timestamp(struct rte_eth_dev *dev,
int rc = 0;
if (!ptp)
- return 0;
+ return -ENOTSUP;
if (BNXT_CHIP_THOR(bp))
rc = bnxt_hwrm_port_ts_query(bp, BNXT_PTP_FLAGS_PATH_TX,
@@ -3688,7 +3685,7 @@ bnxt_timesync_adjust_time(struct rte_eth_dev *dev, int64_t delta)
struct bnxt_ptp_cfg *ptp = bp->ptp_cfg;
if (!ptp)
- return 0;
+ return -ENOTSUP;
ptp->tc.nsec += delta;
ptp->tx_tstamp_tc.nsec += delta;
--
2.10.1
More information about the stable
mailing list