From: Satha Rao <skotesh...@marvell.com> To support lower pps in packet mode we are changing adjust value, same needs to be consider for burst size calculations.
When both peak and committed rates requested, then peak rate should be larger than committed rate. Signed-off-by: Satha Rao <skotesh...@marvell.com> --- drivers/common/cnxk/roc_nix_tm_ops.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/common/cnxk/roc_nix_tm_ops.c b/drivers/common/cnxk/roc_nix_tm_ops.c index eee80d5..b80c77c 100644 --- a/drivers/common/cnxk/roc_nix_tm_ops.c +++ b/drivers/common/cnxk/roc_nix_tm_ops.c @@ -124,6 +124,11 @@ profile->pkt_mode_adj += adjust; profile->commit.rate += (adjust * profile->commit.rate); profile->peak.rate += (adjust * profile->peak.rate); + /* Number of tokens freed after scheduling was proportional + * to adjust value + */ + profile->commit.size *= adjust; + profile->peak.size *= adjust; } return 0; @@ -181,6 +186,10 @@ return NIX_ERR_TM_INVALID_PEAK_RATE; } + /* If PIR and CIR are requested, PIR should always be larger than CIR */ + if (peak_rate && commit_rate && (commit_rate > peak_rate)) + return NIX_ERR_TM_INVALID_PEAK_RATE; + if (!skip_ins) TAILQ_INSERT_TAIL(&nix->shaper_profile_list, profile, shaper); -- 1.8.3.1