net/ice/base: fix adding PPPoE switch rule
[dpdk.git] / drivers / net / ice / ice_ethdev.h
index c4444f9..182c6f6 100644 (file)
 #define ICE_ETH_OVERHEAD \
        (RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN + ICE_VLAN_TAG_SIZE * 2)
 
+/* DDP package type */
+enum ice_pkg_type {
+       ICE_PKG_TYPE_UNKNOWN,
+       ICE_PKG_TYPE_OS_DEFAULT,
+       ICE_PKG_TYPE_COMMS,
+};
+
 struct ice_adapter;
 
 /**
@@ -263,6 +270,7 @@ struct ice_pf {
        uint16_t lan_nb_qp_max;
        uint16_t lan_nb_qps; /* The number of queue pairs of LAN */
        uint16_t base_queue; /* The base queue pairs index  in the device */
+       uint8_t *proto_xtr; /* Protocol extraction type for all queues */
        struct ice_hw_port_stats stats_offset;
        struct ice_hw_port_stats stats;
        /* internal packet statistics, it should be excluded from the total */
@@ -273,11 +281,14 @@ struct ice_pf {
        struct ice_flow_list flow_list;
 };
 
+#define ICE_MAX_QUEUE_NUM  2048
+
 /**
  * Cache devargs parse result.
  */
 struct ice_devargs {
        int safe_mode_support;
+       uint8_t proto_xtr[ICE_MAX_QUEUE_NUM];
 };
 
 /**
@@ -296,6 +307,7 @@ struct ice_adapter {
        uint32_t ptype_tbl[ICE_MAX_PKT_TYPE] __rte_cache_min_aligned;
        bool is_safe_mode;
        struct ice_devargs devargs;
+       enum ice_pkg_type active_pkg_type; /* loaded ddp package type */
 };
 
 struct ice_vsi_vlan_pvid_info {