bool offset_loaded;
};
+extern const struct rte_flow_ops ice_flow_ops;
+
/* Struct to store flow created. */
struct rte_flow {
TAILQ_ENTRY(rte_flow) node;
void *rule;
};
+TAILQ_HEAD(ice_flow_list, rte_flow);
+
struct ice_pf {
struct ice_adapter *adapter; /* The adapter this PF associate to */
struct ice_vsi *main_vsi; /* pointer to main VSI structure */
struct ice_eth_stats internal_stats;
bool offset_loaded;
bool adapter_stopped;
+ struct ice_flow_list flow_list;
+};
+
+/**
+ * Cache devargs parse result.
+ */
+struct ice_devargs {
+ int safe_mode_support;
};
/**
struct rte_eth_dev *eth_dev;
struct ice_pf pf;
bool rx_bulk_alloc_allowed;
+ bool rx_vec_allowed;
+ bool tx_vec_allowed;
bool tx_simple_allowed;
/* ptype mapping table */
uint32_t ptype_tbl[ICE_MAX_PKT_TYPE] __rte_cache_min_aligned;
bool is_safe_mode;
+ struct ice_devargs devargs;
};
struct ice_vsi_vlan_pvid_info {