On Sat, Nov 23, 2019 at 5:58 PM <pbhagavat...@marvell.com> wrote: > > From: Pavan Nikhilesh <pbhagavat...@marvell.com> > > Enable Ptype parsing by default, only disable when `rte_eth_dev_set_ptypes` > is called with ptype_mask as 0. > This would enable applications that are dependent on packet type parsing > like l3fwd. > > Fixes: d2706e15e6fb ("net/octeontx2: support reduced set of packet types") > > Signed-off-by: Pavan Nikhilesh <pbhagavat...@marvell.com>
Acked-by: Jerin Jacob <jer...@marvell.com> Applied to dpdk-next-net-mrvl/master. Thanks > --- > drivers/net/octeontx2/otx2_ethdev.c | 4 ++++ > drivers/net/octeontx2/otx2_ethdev.h | 1 + > drivers/net/octeontx2/otx2_lookup.c | 7 +++++-- > 3 files changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/octeontx2/otx2_ethdev.c > b/drivers/net/octeontx2/otx2_ethdev.c > index ddab3aa06..eaf7ba917 100644 > --- a/drivers/net/octeontx2/otx2_ethdev.c > +++ b/drivers/net/octeontx2/otx2_ethdev.c > @@ -622,6 +622,9 @@ nix_rx_offload_flags(struct rte_eth_dev *eth_dev) > if ((dev->rx_offloads & DEV_RX_OFFLOAD_TIMESTAMP)) > flags |= NIX_RX_OFFLOAD_TSTAMP_F; > > + if (!dev->ptype_disable) > + flags |= NIX_RX_OFFLOAD_PTYPE_F; > + > return flags; > } > > @@ -2168,6 +2171,7 @@ otx2_eth_dev_init(struct rte_eth_dev *eth_dev) > > dev->configured = 0; > dev->drv_inited = true; > + dev->ptype_disable = 0; > dev->base = dev->bar2 + (RVU_BLOCK_ADDR_NIX0 << 20); > dev->lmt_addr = dev->bar2 + (RVU_BLOCK_ADDR_LMT << 20); > > diff --git a/drivers/net/octeontx2/otx2_ethdev.h > b/drivers/net/octeontx2/otx2_ethdev.h > index eb1626309..987e7607c 100644 > --- a/drivers/net/octeontx2/otx2_ethdev.h > +++ b/drivers/net/octeontx2/otx2_ethdev.h > @@ -276,6 +276,7 @@ struct otx2_eth_dev { > uint8_t configured_cints; > uint8_t configured_nb_rx_qs; > uint8_t configured_nb_tx_qs; > + uint8_t ptype_disable; > uint16_t nix_msixoff; > uintptr_t base; > uintptr_t lmt_addr; > diff --git a/drivers/net/octeontx2/otx2_lookup.c > b/drivers/net/octeontx2/otx2_lookup.c > index 17c44e20e..bcf2ff4e8 100644 > --- a/drivers/net/octeontx2/otx2_lookup.c > +++ b/drivers/net/octeontx2/otx2_lookup.c > @@ -67,10 +67,13 @@ otx2_nix_ptypes_set(struct rte_eth_dev *eth_dev, uint32_t > ptype_mask) > { > struct otx2_eth_dev *dev = otx2_eth_pmd_priv(eth_dev); > > - if (ptype_mask) > + if (ptype_mask) { > dev->rx_offload_flags |= NIX_RX_OFFLOAD_PTYPE_F; > - else > + dev->ptype_disable = 0; > + } else { > dev->rx_offload_flags &= ~NIX_RX_OFFLOAD_PTYPE_F; > + dev->ptype_disable = 1; > + } > > otx2_eth_set_rx_function(eth_dev); > > -- > 2.17.1 >