Skip to content

Commit

Permalink
i40e: remove redundant AQ enable
Browse files Browse the repository at this point in the history
The admin queue length register is updated in
config_a<sq|rq>_regs functions.  We should not update it again,
as we will trigger firmware to init the AQ again. In this case
firmware will lose the information about the AQ Rx tail position
and will see Rx queue as full (no free desc for FW to use).

Signed-off-by: Kamil Krawczyk <kamil.krawczyk@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
  • Loading branch information
Kamil Krawczyk authored and Jeff Kirsher committed Jan 8, 2014
1 parent c354229 commit 071b8de
Showing 1 changed file with 0 additions and 6 deletions.
6 changes: 0 additions & 6 deletions drivers/net/ethernet/intel/i40e/i40e_adminq.c
Original file line number Diff line number Diff line change
Expand Up @@ -957,20 +957,14 @@ i40e_status i40e_clean_arq_element(struct i40e_hw *hw,

static void i40e_resume_aq(struct i40e_hw *hw)
{
u32 reg = 0;

/* Registers are reset after PF reset */
hw->aq.asq.next_to_use = 0;
hw->aq.asq.next_to_clean = 0;

i40e_config_asq_regs(hw);
reg = hw->aq.num_asq_entries | I40E_PF_ATQLEN_ATQENABLE_MASK;
wr32(hw, hw->aq.asq.len, reg);

hw->aq.arq.next_to_use = 0;
hw->aq.arq.next_to_clean = 0;

i40e_config_arq_regs(hw);
reg = hw->aq.num_arq_entries | I40E_PF_ATQLEN_ATQENABLE_MASK;
wr32(hw, hw->aq.arq.len, reg);
}

0 comments on commit 071b8de

Please sign in to comment.