For the subject, since this patch is about acquire + disable, how about net/ice: support DCF capability acquire/disable
On 03/10, Haiyue Wang wrote: >Since the DCF (Device Config Function) controls the flow setting of >other VFs by the mailbox with PF, for security, it needs to acquire >the DCF capability from PF when starts, and exits to disable it. s/exits to disable it/disable it when exits > >Signed-off-by: Haiyue Wang <haiyue.w...@intel.com> >--- > drivers/net/ice/ice_dcf.c | 28 +++++++++++++++++++++++++++- > 1 file changed, 27 insertions(+), 1 deletion(-) > >diff --git a/drivers/net/ice/ice_dcf.c b/drivers/net/ice/ice_dcf.c >index efb258a5a..7a3626939 100644 >--- a/drivers/net/ice/ice_dcf.c >+++ b/drivers/net/ice/ice_dcf.c >@@ -227,7 +227,7 @@ ice_dcf_get_vf_resource(struct ice_dcf_hw *hw) > int err, i; > > caps = VIRTCHNL_VF_OFFLOAD_WB_ON_ITR | VIRTCHNL_VF_OFFLOAD_RX_POLLING | >- VIRTCHNL_VF_CAP_ADV_LINK_SPEED | >+ VIRTCHNL_VF_CAP_ADV_LINK_SPEED | VIRTCHNL_VF_CAP_DCF | > VF_BASE_MODE_OFFLOADS; > > err = ice_dcf_send_cmd_req_no_irq(hw, VIRTCHNL_OP_GET_VF_RESOURCES, >@@ -264,6 +264,31 @@ ice_dcf_get_vf_resource(struct ice_dcf_hw *hw) > return 0; > } > >+static int >+ice_dcf_mode_disable(struct ice_dcf_hw *hw) >+{ >+ int err; >+ >+ err = ice_dcf_send_cmd_req_no_irq(hw, VIRTCHNL_OP_DCF_DISABLE, >+ NULL, 0); >+ if (err) { >+ PMD_DRV_LOG(ERR, "Fail to send msg OP_DCF_DISABLE"); >+ return err; >+ } >+ >+ err = ice_dcf_recv_cmd_rsp_no_irq(hw, VIRTCHNL_OP_DCF_DISABLE, >+ (uint8_t *)hw->arq_buf, >+ ICE_DCF_AQ_BUF_SZ, NULL); >+ if (err) { >+ PMD_DRV_LOG(ERR, >+ "Fail to get response of OP_DCF_DISABLE %d", >+ err); >+ return -1; >+ } >+ >+ return 0; >+} >+ > static int > ice_dcf_check_reset_done(struct ice_dcf_hw *hw) > { >@@ -467,6 +492,7 @@ ice_dcf_uninit_hw(struct rte_eth_dev *eth_dev, struct >ice_dcf_hw *hw) > rte_intr_callback_unregister(intr_handle, > ice_dcf_dev_interrupt_handler, hw); > >+ ice_dcf_mode_disable(hw); > iavf_shutdown_adminq(&hw->avf); > > rte_free(hw->arq_buf); >-- >2.25.1 > For the patch, Reviewed-by: Xiaolong Ye <xiaolong...@intel.com>