1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2020 Intel Corporation
8 #include <rte_ethdev_driver.h>
10 #include <iavf_prototype.h>
11 #include <iavf_adminq_cmd.h>
12 #include <iavf_type.h>
16 struct dcf_virtchnl_cmd {
17 TAILQ_ENTRY(dcf_virtchnl_cmd) next;
19 enum virtchnl_ops v_op;
20 enum iavf_status v_ret;
35 rte_spinlock_t vc_cmd_send_lock;
36 rte_spinlock_t vc_cmd_queue_lock;
37 TAILQ_HEAD(, dcf_virtchnl_cmd) vc_cmd_queue;
40 struct virtchnl_version_info virtchnl_version;
41 struct virtchnl_vf_resource *vf_res; /* VF resource */
42 struct virtchnl_vsi_resource *vsi_res; /* LAN VSI */
46 int ice_dcf_execute_virtchnl_cmd(struct ice_dcf_hw *hw,
47 struct dcf_virtchnl_cmd *cmd);
49 int ice_dcf_init_hw(struct rte_eth_dev *eth_dev, struct ice_dcf_hw *hw);
50 void ice_dcf_uninit_hw(struct rte_eth_dev *eth_dev, struct ice_dcf_hw *hw);
52 #endif /* _ICE_DCF_H_ */