net/hns3: support VXLAN-GPE TSO and checksum
[dpdk.git] / drivers / net / ice / ice_dcf.h
index eea4b28..ff02996 100644 (file)
@@ -43,6 +43,7 @@ struct ice_dcf_hw {
 
        uint16_t num_vfs;
        uint16_t *vf_vsi_map;
+       uint16_t pf_vsi_id;
 
        struct virtchnl_version_info virtchnl_version;
        struct virtchnl_vf_resource *vf_res; /* VF resource */
@@ -54,6 +55,11 @@ struct ice_dcf_hw {
        uint8_t *rss_key;
        uint64_t supported_rxdid;
        uint16_t num_queue_pairs;
+
+       uint16_t msix_base;
+       uint16_t nb_msix;
+       uint16_t rxq_map[16];
+       struct virtchnl_eth_stats eth_stats_offset;
 };
 
 int ice_dcf_execute_virtchnl_cmd(struct ice_dcf_hw *hw,
@@ -64,5 +70,12 @@ int ice_dcf_handle_vsi_update_event(struct ice_dcf_hw *hw);
 int ice_dcf_init_hw(struct rte_eth_dev *eth_dev, struct ice_dcf_hw *hw);
 void ice_dcf_uninit_hw(struct rte_eth_dev *eth_dev, struct ice_dcf_hw *hw);
 int ice_dcf_init_rss(struct ice_dcf_hw *hw);
+int ice_dcf_configure_queues(struct ice_dcf_hw *hw);
+int ice_dcf_config_irq_map(struct ice_dcf_hw *hw);
+int ice_dcf_switch_queue(struct ice_dcf_hw *hw, uint16_t qid, bool rx, bool on);
+int ice_dcf_disable_queues(struct ice_dcf_hw *hw);
+int ice_dcf_query_stats(struct ice_dcf_hw *hw,
+                       struct virtchnl_eth_stats *pstats);
+int ice_dcf_add_del_all_mac_addr(struct ice_dcf_hw *hw, bool add);
 
 #endif /* _ICE_DCF_H_ */