patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] [PATCH] net/octeontx2: move PF-func location for egress
@ 2021-01-18 10:50 lironh
  2021-01-25 18:24 ` [dpdk-stable] [dpdk-dev] " Jerin Jacob
  0 siblings, 1 reply; 2+ messages in thread
From: lironh @ 2021-01-18 10:50 UTC (permalink / raw)
  To: jerinj; +Cc: dev, stable, Liron Himi, Kiran Kumar Kokkilagadda

From: Liron Himi <lironh@marvell.com>

pf-func is 16bit but the current reserved location
used in tx action is 8bits. moved it to bits 63-48.

Fixes: 32e6aaa97 ("net/octeontx2: support flow parse actions")
Cc: stable@dpdk.org

Signed-off-by: Liron Himi <lironh@marvell.com>
Reviewed-by: Kiran Kumar Kokkilagadda <kirankumark@marvell.com>
---
 drivers/net/octeontx2/otx2_flow_parse.c | 5 ++++-
 drivers/net/octeontx2/otx2_flow_utils.c | 2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/net/octeontx2/otx2_flow_parse.c b/drivers/net/octeontx2/otx2_flow_parse.c
index 476195d63..e9b940f6c 100644
--- a/drivers/net/octeontx2/otx2_flow_parse.c
+++ b/drivers/net/octeontx2/otx2_flow_parse.c
@@ -1090,7 +1090,10 @@ otx2_flow_parse_actions(struct rte_eth_dev *dev,
 
 set_pf_func:
 	/* Ideally AF must ensure that correct pf_func is set */
-	flow->npc_action |= (uint64_t)pf_func << 4;
+	if (attr->egress)
+		flow->npc_action |= (uint64_t)pf_func << 48;
+	else
+		flow->npc_action |= (uint64_t)pf_func << 4;
 
 	return 0;
 
diff --git a/drivers/net/octeontx2/otx2_flow_utils.c b/drivers/net/octeontx2/otx2_flow_utils.c
index 9a0a5f9fb..7ed86ba74 100644
--- a/drivers/net/octeontx2/otx2_flow_utils.c
+++ b/drivers/net/octeontx2/otx2_flow_utils.c
@@ -944,7 +944,7 @@ otx2_flow_mcam_alloc_and_write(struct rte_flow *flow, struct otx2_mbox *mbox,
 		req->entry_data.kw[0] |= flow_info->channel;
 		req->entry_data.kw_mask[0] |=  (BIT_ULL(12) - 1);
 	} else {
-		uint16_t pf_func = (flow->npc_action >> 4) & 0xffff;
+		uint16_t pf_func = (flow->npc_action >> 48) & 0xffff;
 
 		pf_func = htons(pf_func);
 		req->entry_data.kw[0] |= ((uint64_t)pf_func << 32);
-- 
2.28.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [dpdk-stable] [dpdk-dev] [PATCH] net/octeontx2: move PF-func location for egress
  2021-01-18 10:50 [dpdk-stable] [PATCH] net/octeontx2: move PF-func location for egress lironh
@ 2021-01-25 18:24 ` Jerin Jacob
  0 siblings, 0 replies; 2+ messages in thread
From: Jerin Jacob @ 2021-01-25 18:24 UTC (permalink / raw)
  To: Liron Himi; +Cc: Jerin Jacob, dpdk-dev, dpdk stable, Kiran Kumar Kokkilagadda

On Mon, Jan 18, 2021 at 4:20 PM <lironh@marvell.com> wrote:
>
> From: Liron Himi <lironh@marvell.com>
>
> pf-func is 16bit but the current reserved location
> used in tx action is 8bits. moved it to bits 63-48.
>
> Fixes: 32e6aaa97 ("net/octeontx2: support flow parse actions")
> Cc: stable@dpdk.org
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
> Reviewed-by: Kiran Kumar Kokkilagadda <kirankumark@marvell.com>


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



> ---
>  drivers/net/octeontx2/otx2_flow_parse.c | 5 ++++-
>  drivers/net/octeontx2/otx2_flow_utils.c | 2 +-
>  2 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/octeontx2/otx2_flow_parse.c b/drivers/net/octeontx2/otx2_flow_parse.c
> index 476195d63..e9b940f6c 100644
> --- a/drivers/net/octeontx2/otx2_flow_parse.c
> +++ b/drivers/net/octeontx2/otx2_flow_parse.c
> @@ -1090,7 +1090,10 @@ otx2_flow_parse_actions(struct rte_eth_dev *dev,
>
>  set_pf_func:
>         /* Ideally AF must ensure that correct pf_func is set */
> -       flow->npc_action |= (uint64_t)pf_func << 4;
> +       if (attr->egress)
> +               flow->npc_action |= (uint64_t)pf_func << 48;
> +       else
> +               flow->npc_action |= (uint64_t)pf_func << 4;
>
>         return 0;
>
> diff --git a/drivers/net/octeontx2/otx2_flow_utils.c b/drivers/net/octeontx2/otx2_flow_utils.c
> index 9a0a5f9fb..7ed86ba74 100644
> --- a/drivers/net/octeontx2/otx2_flow_utils.c
> +++ b/drivers/net/octeontx2/otx2_flow_utils.c
> @@ -944,7 +944,7 @@ otx2_flow_mcam_alloc_and_write(struct rte_flow *flow, struct otx2_mbox *mbox,
>                 req->entry_data.kw[0] |= flow_info->channel;
>                 req->entry_data.kw_mask[0] |=  (BIT_ULL(12) - 1);
>         } else {
> -               uint16_t pf_func = (flow->npc_action >> 4) & 0xffff;
> +               uint16_t pf_func = (flow->npc_action >> 48) & 0xffff;
>
>                 pf_func = htons(pf_func);
>                 req->entry_data.kw[0] |= ((uint64_t)pf_func << 32);
> --
> 2.28.0
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-01-25 18:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-18 10:50 [dpdk-stable] [PATCH] net/octeontx2: move PF-func location for egress lironh
2021-01-25 18:24 ` [dpdk-stable] [dpdk-dev] " Jerin Jacob

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git