net/octeontx2: set max vtag insertion size
diff mbox series

Message ID 20200821065930.191028-1-kirankumark@marvell.com
State Accepted
Delegated to: Jerin Jacob
Headers show
Series
  • net/octeontx2: set max vtag insertion size
Related show

Checks

Context Check Description
ci/Intel-compilation success Compilation OK
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/checkpatch success coding style OK

Commit Message

Kiran Kumar Kokkilagadda Aug. 21, 2020, 6:59 a.m. UTC
From: Kiran Kumar K <kirankumark@marvell.com>

When TX side VTAG insertion is enabled, As we are not setting the max
vtag insertion size an interrupt has been received. This patch will fix
the issue by configuring the max vtag insertion size to 8B.

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
---
 drivers/net/octeontx2/otx2_tm.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Jerin Jacob Sept. 29, 2020, 8:03 a.m. UTC | #1
On Fri, Aug 21, 2020 at 12:29 PM <kirankumark@marvell.com> wrote:
>
> From: Kiran Kumar K <kirankumark@marvell.com>
>
> When TX side VTAG insertion is enabled, As we are not setting the max
> vtag insertion size an interrupt has been received. This patch will fix
> the issue by configuring the max vtag insertion size to 8B.
>
> Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>

Updated git comment to provide more detail while applying:
``
    net/octeontx2: set max vtag insertion size

    When TX side VTAG insertion is enabled, SMQ should be configured with
    the maximum VTAG insertion size to avoid generating NIX_SQINT_SEND_ERR
    interrupt. Since the default value is zero, This patch configures the
    VTAG insertion size to the max supported value.

    Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
    Acked-by: Jerin Jacob <jerinj@marvell.com>
``

Applied to dpdk-next-net-mrvl/main. Thanks


> ---
>  drivers/net/octeontx2/otx2_tm.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/octeontx2/otx2_tm.c b/drivers/net/octeontx2/otx2_tm.c
> index 8ed059549..b76242a60 100644
> --- a/drivers/net/octeontx2/otx2_tm.c
> +++ b/drivers/net/octeontx2/otx2_tm.c
> @@ -560,8 +560,9 @@ populate_tm_reg(struct otx2_eth_dev *dev,
>                  * smaller
>                  */
>                 reg[k] = NIX_AF_SMQX_CFG(schq);
> -               regval[k] = BIT_ULL(50) | NIX_MIN_HW_FRS;
> -               regval_mask[k] = ~(BIT_ULL(50) | 0x7f);
> +               regval[k] = BIT_ULL(50) | ((uint64_t)NIX_MAX_VTAG_INS << 36) |
> +                       NIX_MIN_HW_FRS;
> +               regval_mask[k] = ~(BIT_ULL(50) | (0x7ULL << 36) | 0x7f);
>                 k++;
>
>                 /* Parent and schedule conf */
> --
> 2.25.1
>

Patch
diff mbox series

diff --git a/drivers/net/octeontx2/otx2_tm.c b/drivers/net/octeontx2/otx2_tm.c
index 8ed059549..b76242a60 100644
--- a/drivers/net/octeontx2/otx2_tm.c
+++ b/drivers/net/octeontx2/otx2_tm.c
@@ -560,8 +560,9 @@  populate_tm_reg(struct otx2_eth_dev *dev,
 		 * smaller
 		 */
 		reg[k] = NIX_AF_SMQX_CFG(schq);
-		regval[k] = BIT_ULL(50) | NIX_MIN_HW_FRS;
-		regval_mask[k] = ~(BIT_ULL(50) | 0x7f);
+		regval[k] = BIT_ULL(50) | ((uint64_t)NIX_MAX_VTAG_INS << 36) |
+			NIX_MIN_HW_FRS;
+		regval_mask[k] = ~(BIT_ULL(50) | (0x7ULL << 36) | 0x7f);
 		k++;
 
 		/* Parent and schedule conf */