* [PATCH 4/4] net/dpaa: fix ethernet event queue de-attach
[not found] <20220422045729.3320637-1-g.singh@nxp.com>
@ 2022-04-22 4:57 ` Gagandeep Singh
0 siblings, 0 replies; only message in thread
From: Gagandeep Singh @ 2022-04-22 4:57 UTC (permalink / raw)
To: dev; +Cc: Gagandeep Singh, stable
Calling the correct qman queue free APIs to de-attach the queue.
Fixes: 5e7455931442 ("net/dpaa: support Rx queue configurations with eventdev")
Cc: stable@dpdk.org
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
---
drivers/net/dpaa/dpaa_ethdev.c | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)
diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
index bddb3bb15c..e5a072cf49 100644
--- a/drivers/net/dpaa/dpaa_ethdev.c
+++ b/drivers/net/dpaa/dpaa_ethdev.c
@@ -1211,23 +1211,17 @@ int
dpaa_eth_eventq_detach(const struct rte_eth_dev *dev,
int eth_rx_queue_id)
{
- struct qm_mcc_initfq opts;
+ struct qm_mcc_initfq opts = {0};
int ret;
u32 flags = 0;
struct dpaa_if *dpaa_intf = dev->data->dev_private;
struct qman_fq *rxq = &dpaa_intf->rx_queues[eth_rx_queue_id];
- dpaa_poll_queue_default_config(&opts);
-
- if (dpaa_intf->cgr_rx) {
- opts.we_mask |= QM_INITFQ_WE_CGID;
- opts.fqd.cgid = dpaa_intf->cgr_rx[eth_rx_queue_id].cgrid;
- opts.fqd.fq_ctrl |= QM_FQCTRL_CGE;
- }
-
+ qman_retire_fq(rxq, NULL);
+ qman_oos_fq(rxq);
ret = qman_init_fq(rxq, flags, &opts);
if (ret) {
- DPAA_PMD_ERR("init rx fqid %d failed with ret: %d",
+ DPAA_PMD_ERR("detach rx fqid %d failed with ret: %d",
rxq->fqid, ret);
}
--
2.25.1
^ permalink raw reply [flat|nested] only message in thread