The enetfec PMD currently supports only a single TX queue. This patch
adds a check to prevent users from configuring more than one queue,
ensuring predictable behavior and avoiding unsupported configurations.

Fixes: bb5b5bf1e5c6 ("net/enetfec: support queue configuration")
Cc: [email protected]

Signed-off-by: Hemant Agrawal <[email protected]>
---
 drivers/net/enetfec/enet_ethdev.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/enetfec/enet_ethdev.c 
b/drivers/net/enetfec/enet_ethdev.c
index 16f36a53f1..bcecab828e 100644
--- a/drivers/net/enetfec/enet_ethdev.c
+++ b/drivers/net/enetfec/enet_ethdev.c
@@ -1,5 +1,5 @@
 /* SPDX-License-Identifier: BSD-3-Clause
- * Copyright 2020-2021 NXP
+ * Copyright 2020-2021,2023 NXP
  */
 
 #include <inttypes.h>
@@ -377,6 +377,11 @@ enetfec_tx_queue_setup(struct rte_eth_dev *dev,
                sizeof(struct bufdesc);
        unsigned int dsize_log2 = rte_fls_u64(dsize) - 1;
 
+       if (queue_idx > 0) {
+               ENETFEC_PMD_ERR("Multi queue not supported");
+               return -EINVAL;
+       }
+
        /* allocate transmit queue */
        txq = rte_zmalloc(NULL, sizeof(*txq), RTE_CACHE_LINE_SIZE);
        if (txq == NULL) {
-- 
2.25.1

Reply via email to