mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 02:05:20 +07:00
i40e: fix write-back-on-itr to work with legacy itr
We were not doing write-back on interrupt throttle for Legacy case in X722. This patch fixes that, so we do WB_ON_ITR for Legacy as well. Plus the issue that we should still be setting NO_ITR if we are touching the DYN_CTLN register since we do not want to change ITR setting here. Change-ID: I5db8491ee1544118a389db839cecc93e1bbc480e Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
071c859b87
commit
a3d772a392
@ -789,12 +789,20 @@ void i40e_force_wb(struct i40e_vsi *vsi, struct i40e_q_vector *q_vector)
|
||||
if (q_vector->arm_wb_state)
|
||||
return;
|
||||
|
||||
val = I40E_PFINT_DYN_CTLN_WB_ON_ITR_MASK;
|
||||
if (vsi->back->flags & I40E_FLAG_MSIX_ENABLED) {
|
||||
val = I40E_PFINT_DYN_CTLN_WB_ON_ITR_MASK |
|
||||
I40E_PFINT_DYN_CTLN_ITR_INDX_MASK; /* set noitr */
|
||||
|
||||
wr32(&vsi->back->hw,
|
||||
I40E_PFINT_DYN_CTLN(q_vector->v_idx +
|
||||
vsi->base_vector - 1),
|
||||
val);
|
||||
wr32(&vsi->back->hw,
|
||||
I40E_PFINT_DYN_CTLN(q_vector->v_idx +
|
||||
vsi->base_vector - 1),
|
||||
val);
|
||||
} else {
|
||||
val = I40E_PFINT_DYN_CTL0_WB_ON_ITR_MASK |
|
||||
I40E_PFINT_DYN_CTL0_ITR_INDX_MASK; /* set noitr */
|
||||
|
||||
wr32(&vsi->back->hw, I40E_PFINT_DYN_CTL0, val);
|
||||
}
|
||||
q_vector->arm_wb_state = true;
|
||||
} else if (vsi->back->flags & I40E_FLAG_MSIX_ENABLED) {
|
||||
u32 val = I40E_PFINT_DYN_CTLN_INTENA_MASK |
|
||||
|
@ -307,7 +307,8 @@ static void i40evf_force_wb(struct i40e_vsi *vsi, struct i40e_q_vector *q_vector
|
||||
if (q_vector->arm_wb_state)
|
||||
return;
|
||||
|
||||
val = I40E_VFINT_DYN_CTLN1_WB_ON_ITR_MASK;
|
||||
val = I40E_VFINT_DYN_CTLN1_WB_ON_ITR_MASK |
|
||||
I40E_VFINT_DYN_CTLN1_ITR_INDX_MASK; /* set noitr */
|
||||
|
||||
wr32(&vsi->back->hw,
|
||||
I40E_VFINT_DYN_CTLN1(q_vector->v_idx +
|
||||
|
Loading…
Reference in New Issue
Block a user