net/mlx5: fix suffix flow creation in metadata split
[dpdk.git] / drivers / net / nfp / nfp_net_pmd.h
index 3c80702..bc288be 100644 (file)
@@ -34,7 +34,7 @@
  *
  * @file dpdk/pmd/nfp_net_pmd.h
  *
- * Netronome NFP_NET PDM driver
+ * Netronome NFP_NET PMD driver
  */
 
 #ifndef _NFP_NET_PMD_H_
@@ -185,18 +185,28 @@ static inline void nn_writeq(uint64_t val, volatile void *addr)
 struct nfp_net_tx_desc {
        union {
                struct {
-                       uint8_t dma_addr_hi;   /* High bits of host buf address */
+                       uint8_t dma_addr_hi; /* High bits of host buf address */
                        __le16 dma_len;     /* Length to DMA for this desc */
-                       uint8_t offset_eop;    /* Offset in buf where pkt starts +
+                       uint8_t offset_eop; /* Offset in buf where pkt starts +
                                             * highest bit is eop flag.
                                             */
                        __le32 dma_addr_lo; /* Low 32bit of host buf addr */
 
-                       __le16 lso;         /* MSS to be used for LSO */
-                       uint8_t l4_offset;     /* LSO, where the L4 data starts */
-                       uint8_t flags;         /* TX Flags, see @PCIE_DESC_TX_* */
-
-                       __le16 vlan;        /* VLAN tag to add if indicated */
+                       __le16 mss;         /* MSS to be used for LSO */
+                       uint8_t lso_hdrlen; /* LSO, where the data starts */
+                       uint8_t flags;      /* TX Flags, see @PCIE_DESC_TX_* */
+
+                       union {
+                               struct {
+                                       /*
+                                        * L3 and L4 header offsets required
+                                        * for TSOv2
+                                        */
+                                       uint8_t l3_offset;
+                                       uint8_t l4_offset;
+                               };
+                               __le16 vlan; /* VLAN tag to add if indicated */
+                       };
                        __le16 data_len;    /* Length of frame + meta data */
                } __attribute__((__packed__));
                __le32 vals[4];
@@ -230,7 +240,7 @@ struct nfp_net_txq {
        uint32_t tx_free_thresh;
 
        /*
-        * For each descriptor keep a reference to the mbuff and
+        * For each descriptor keep a reference to the mbuf and
         * DMA address used until completion is signalled.
         */
        struct {
@@ -283,6 +293,8 @@ struct nfp_net_txq {
 #define PCIE_DESC_RX_UDP_CSUM_OK        (1 <<  1)
 #define PCIE_DESC_RX_VLAN               (1 <<  0)
 
+#define PCIE_DESC_RX_L4_CSUM_OK         (PCIE_DESC_RX_TCP_CSUM_OK | \
+                                        PCIE_DESC_RX_UDP_CSUM_OK)
 struct nfp_net_rx_desc {
        union {
                /* Freelist descriptor */
@@ -424,7 +436,7 @@ struct nfp_net_hw {
 #endif
 #endif
 
-       uint8_t mac_addr[ETHER_ADDR_LEN];
+       uint8_t mac_addr[RTE_ETHER_ADDR_LEN];
 
        /* Records starting point for counters */
        struct rte_eth_stats eth_stats_base;
@@ -444,6 +456,7 @@ struct nfp_net_hw {
 
        struct nfp_hwinfo *hwinfo;
        struct nfp_rtsym_table *sym_tbl;
+       uint32_t nfp_cpp_service_id;
 };
 
 struct nfp_net_adapter {