ice: Don't call ice_cfg_itr() for SR-IOV
authorBrett Creeley <brett.creeley@intel.com>
Tue, 16 Apr 2019 17:30:42 +0000 (10:30 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 29 May 2019 09:40:30 +0000 (02:40 -0700)
ice_cfg_itr() sets the ITR granularity and default ITR values for the
PF's interrupt vectors. For VF's this will be done in the AVF driver
flow. Fix this by not calling ice_cfg_itr() for SR-IOV.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ice/ice_lib.c

index f14fa51cc7047c82126353bd7f60b1f5a3687b73..749d36add524e1c29866b5b2908677fc858d6e66 100644 (file)
@@ -1856,7 +1856,8 @@ void ice_vsi_cfg_msix(struct ice_vsi *vsi)
                struct ice_q_vector *q_vector = vsi->q_vectors[i];
                u16 reg_idx = q_vector->reg_idx;
 
-               ice_cfg_itr(hw, q_vector);
+               if (vsi->type != ICE_VSI_VF)
+                       ice_cfg_itr(hw, q_vector);
 
                wr32(hw, GLINT_RATE(reg_idx),
                     ice_intrl_usec_to_reg(q_vector->intrl, hw->intrl_gran));