From 448e2400fa8a2dd6169b6cb40a98b18d4e28fca9 Mon Sep 17 00:00:00 2001 From: Shijith Thotton Date: Fri, 20 May 2022 12:41:05 +0530 Subject: [PATCH] event/cnxk: fix QoS parameter handling Fixed QoS parameters getting over written and IAQ/TAQ threshold calculation. Fixes: 910da32c53a9 ("event/cnxk: add device start") Cc: stable@dpdk.org Signed-off-by: Shijith Thotton --- drivers/common/cnxk/roc_sso.c | 4 ++-- drivers/event/cnxk/cnxk_eventdev.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/common/cnxk/roc_sso.c b/drivers/common/cnxk/roc_sso.c index d986abe573..7c86474809 100644 --- a/drivers/common/cnxk/roc_sso.c +++ b/drivers/common/cnxk/roc_sso.c @@ -406,10 +406,10 @@ roc_sso_hwgrp_qos_config(struct roc_sso *roc_sso, struct roc_sso_hwgrp_qos *qos, } req->grp = qos[i].hwgrp; req->xaq_limit = (nb_xaq * (xaq_prcnt ? xaq_prcnt : 100)) / 100; - req->taq_thr = (SSO_HWGRP_IAQ_MAX_THR_MASK * + req->iaq_thr = (SSO_HWGRP_IAQ_MAX_THR_MASK * (iaq_prcnt ? iaq_prcnt : 100)) / 100; - req->iaq_thr = (SSO_HWGRP_TAQ_MAX_THR_MASK * + req->taq_thr = (SSO_HWGRP_TAQ_MAX_THR_MASK * (taq_prcnt ? taq_prcnt : 100)) / 100; } diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c index a9e4201ed8..97dcf7b66e 100644 --- a/drivers/event/cnxk/cnxk_eventdev.c +++ b/drivers/event/cnxk/cnxk_eventdev.c @@ -540,10 +540,10 @@ cnxk_sso_start(struct rte_eventdev *event_dev, cnxk_sso_hws_reset_t reset_fn, plt_sso_dbg(); for (i = 0; i < dev->qos_queue_cnt; i++) { - qos->hwgrp = dev->qos_parse_data[i].queue; - qos->iaq_prcnt = dev->qos_parse_data[i].iaq_prcnt; - qos->taq_prcnt = dev->qos_parse_data[i].taq_prcnt; - qos->xaq_prcnt = dev->qos_parse_data[i].xaq_prcnt; + qos[i].hwgrp = dev->qos_parse_data[i].queue; + qos[i].iaq_prcnt = dev->qos_parse_data[i].iaq_prcnt; + qos[i].taq_prcnt = dev->qos_parse_data[i].taq_prcnt; + qos[i].xaq_prcnt = dev->qos_parse_data[i].xaq_prcnt; } rc = roc_sso_hwgrp_qos_config(&dev->sso, qos, dev->qos_queue_cnt, dev->xae_cnt); -- 2.39.5