From: Satha Rao <skotesh...@marvell.com>

Create a new default tree for the SDP interface if more than one TX
queue is requested. This helps to backpressure each queue independently
when they are created with separate channels.

Signed-off-by: Satha Rao <skotesh...@marvell.com>
---
 drivers/net/cnxk/cnxk_ethdev.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/cnxk/cnxk_ethdev.c b/drivers/net/cnxk/cnxk_ethdev.c
index 6c723c9cec..bfef06ae4a 100644
--- a/drivers/net/cnxk/cnxk_ethdev.c
+++ b/drivers/net/cnxk/cnxk_ethdev.c
@@ -1451,7 +1451,10 @@ cnxk_nix_configure(struct rte_eth_dev *eth_dev)
                goto free_nix_lf;
        }
 
-       rc = roc_nix_tm_hierarchy_enable(nix, ROC_NIX_TM_DEFAULT, false);
+       if (roc_nix_is_sdp(&dev->nix) && nb_txq > 1)
+               rc = roc_nix_tm_hierarchy_enable(nix, ROC_NIX_TM_SDP, false);
+       else
+               rc = roc_nix_tm_hierarchy_enable(nix, ROC_NIX_TM_DEFAULT, 
false);
        if (rc) {
                plt_err("Failed to enable default tm hierarchy, rc=%d", rc);
                goto tm_fini;
-- 
2.34.1

Reply via email to