[dpdk-dev] [PATCH 3/5] i40e: support double vlan stripping and insertion
Zhang, Helin
helin.zhang at intel.com
Tue Jun 2 04:45:11 CEST 2015
> -----Original Message-----
> From: Olivier MATZ [mailto:olivier.matz at 6wind.com]
> Sent: Monday, June 1, 2015 4:51 PM
> To: Zhang, Helin; dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 3/5] i40e: support double vlan stripping and
> insertion
>
> Hi Helin,
>
> On 05/26/2015 10:36 AM, Helin Zhang wrote:
> > It configures specific registers to enable double vlan stripping on RX
> > side and insertion on TX side.
> > The RX descriptors will be parsed, the vlan tags and flags will be
> > saved to corresponding mbuf fields if vlan tag is detected.
> > The TX descriptors will be configured according to the configurations
> > in mbufs, to trigger the hardware insertion of double vlan tags for
> > each packets sent out.
> >
> > Signed-off-by: Helin Zhang <helin.zhang at intel.com>
>
> > [...]
>
> > diff --git a/lib/librte_ether/rte_ethdev.h
> > b/lib/librte_ether/rte_ethdev.h index 16dbe00..b26670e 100644
> > --- a/lib/librte_ether/rte_ethdev.h
> > +++ b/lib/librte_ether/rte_ethdev.h
> > @@ -882,23 +882,25 @@ struct rte_eth_conf {
> > /**
> > * RX offload capabilities of a device.
> > */
> > -#define DEV_RX_OFFLOAD_VLAN_STRIP 0x00000001 -#define
> > DEV_RX_OFFLOAD_IPV4_CKSUM 0x00000002
> > -#define DEV_RX_OFFLOAD_UDP_CKSUM 0x00000004
> > -#define DEV_RX_OFFLOAD_TCP_CKSUM 0x00000008
> > -#define DEV_RX_OFFLOAD_TCP_LRO 0x00000010
> > +#define DEV_RX_OFFLOAD_VLAN_STRIP 0x00000001
> > +#define DEV_RX_OFFLOAD_QINQ_STRIP 0x00000002
> > +#define DEV_RX_OFFLOAD_IPV4_CKSUM 0x00000004
> > +#define DEV_RX_OFFLOAD_UDP_CKSUM 0x00000008
> > +#define DEV_RX_OFFLOAD_TCP_CKSUM 0x00000010
> > +#define DEV_RX_OFFLOAD_TCP_LRO 0x00000020
> >
> > /**
> > * TX offload capabilities of a device.
> > */
> > -#define DEV_TX_OFFLOAD_VLAN_INSERT 0x00000001 -#define
> > DEV_TX_OFFLOAD_IPV4_CKSUM 0x00000002
> > -#define DEV_TX_OFFLOAD_UDP_CKSUM 0x00000004
> > -#define DEV_TX_OFFLOAD_TCP_CKSUM 0x00000008
> > -#define DEV_TX_OFFLOAD_SCTP_CKSUM 0x00000010
> > -#define DEV_TX_OFFLOAD_TCP_TSO 0x00000020
> > -#define DEV_TX_OFFLOAD_UDP_TSO 0x00000040
> > -#define DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM 0x00000080 /**< Used for
> > tunneling packet. */
> > +#define DEV_TX_OFFLOAD_VLAN_INSERT 0x00000001
> > +#define DEV_TX_OFFLOAD_QINQ_INSERT 0x00000002
> > +#define DEV_TX_OFFLOAD_IPV4_CKSUM 0x00000004
> > +#define DEV_TX_OFFLOAD_UDP_CKSUM 0x00000008
> > +#define DEV_TX_OFFLOAD_TCP_CKSUM 0x00000010
> > +#define DEV_TX_OFFLOAD_SCTP_CKSUM 0x00000020
> > +#define DEV_TX_OFFLOAD_TCP_TSO 0x00000040
> > +#define DEV_TX_OFFLOAD_UDP_TSO 0x00000080
> > +#define DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM 0x00000100
> >
> > struct rte_eth_dev_info {
> > struct rte_pci_device *pci_dev; /**< Device PCI information. */
> >
>
> It's probably better to add the new flags after the others for ABI compat reasons.
Agree, will fix it.
Thanks,
Helin
>
>
> Regards,
> Olivier
More information about the dev
mailing list