[PATCH v5 07/25] net/intel/common: merge ice and i40e Tx queue struct
Bruce Richardson
bruce.richardson at intel.com
Fri Jan 24 10:24:54 CET 2025
On Fri, Jan 24, 2025 at 09:39:13AM +0100, David Marchand wrote:
> On Mon, Jan 20, 2025 at 1:00 PM Bruce Richardson
> <bruce.richardson at intel.com> wrote:
> >
> > The queue structures of i40e and ice drivers are virtually identical, so
> > merge them into a common struct. This should allow easier function
> > merging in future using that common struct.
> >
> > Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> > ---
> > drivers/net/intel/common/tx.h | 55 +++++++++++++++++
> > drivers/net/intel/i40e/i40e_ethdev.c | 4 +-
> > drivers/net/intel/i40e/i40e_ethdev.h | 4 +-
> > drivers/net/intel/i40e/i40e_fdir.c | 4 +-
> > .../i40e/i40e_recycle_mbufs_vec_common.c | 2 +-
> > drivers/net/intel/i40e/i40e_rxtx.c | 58 +++++++++---------
> > drivers/net/intel/i40e/i40e_rxtx.h | 50 ++--------------
> > .../net/intel/i40e/i40e_rxtx_vec_altivec.c | 4 +-
> > drivers/net/intel/i40e/i40e_rxtx_vec_avx2.c | 4 +-
> > drivers/net/intel/i40e/i40e_rxtx_vec_avx512.c | 6 +-
> > drivers/net/intel/i40e/i40e_rxtx_vec_common.h | 2 +-
> > drivers/net/intel/i40e/i40e_rxtx_vec_neon.c | 4 +-
> > drivers/net/intel/i40e/i40e_rxtx_vec_sse.c | 4 +-
> > drivers/net/intel/ice/ice_dcf.c | 4 +-
> > drivers/net/intel/ice/ice_dcf_ethdev.c | 10 ++--
> > drivers/net/intel/ice/ice_diagnose.c | 2 +-
> > drivers/net/intel/ice/ice_ethdev.c | 2 +-
> > drivers/net/intel/ice/ice_ethdev.h | 4 +-
> > drivers/net/intel/ice/ice_rxtx.c | 60 +++++++++----------
> > drivers/net/intel/ice/ice_rxtx.h | 41 +------------
> > drivers/net/intel/ice/ice_rxtx_vec_avx2.c | 4 +-
> > drivers/net/intel/ice/ice_rxtx_vec_avx512.c | 8 +--
> > drivers/net/intel/ice/ice_rxtx_vec_common.h | 8 +--
> > drivers/net/intel/ice/ice_rxtx_vec_sse.c | 6 +-
> > 24 files changed, 165 insertions(+), 185 deletions(-)
> >
> > diff --git a/drivers/net/intel/common/tx.h b/drivers/net/intel/common/tx.h
> > index 5397007411..c965f5ee6c 100644
> > --- a/drivers/net/intel/common/tx.h
> > +++ b/drivers/net/intel/common/tx.h
> > @@ -8,6 +8,9 @@
> > #include <stdint.h>
> > #include <rte_mbuf.h>
> >
> > +/* forward declaration of the common intel (ci) queue structure */
> > +struct ci_tx_queue;
> > +
> > /**
> > * Structure associated with each descriptor of the TX ring of a TX queue.
> > */
> > @@ -24,6 +27,58 @@ struct ci_tx_entry_vec {
> > struct rte_mbuf *mbuf; /* mbuf associated with TX desc, if any. */
> > };
> >
> > +typedef void (*ice_tx_release_mbufs_t)(struct ci_tx_queue *txq);
> > +
> > +struct ci_tx_queue {
> > + union { /* TX ring virtual address */
> > + volatile struct ice_tx_desc *ice_tx_ring;
> > + volatile struct i40e_tx_desc *i40e_tx_ring;
> > + };
>
> Minor nit.. this gets alphabetically sorted in a later patch.
>
Right. I'll get that sorted (pun very much intended!) in v6. :-)
/Bruce
More information about the dev
mailing list