mirror of https://gitee.com/openkylin/linux.git
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
Jeff Kirsher says: ==================== Intel Wired LAN Driver Updates This series contains updates to igb, igbvf, ixgbe, i40e and i40evf. Jacob provides eight patches to cleanup the ixgbe driver to resolve various checkpatch.pl warnings/errors as well as minor coding style issues. Stephen Hemminger and I provide simple cleanups of void functions which had useless return statements at the end of the function which are not needed. v2: Dropped Emil's patch "ixgbe: fix the detection of SFP+ capable interfaces" while I wait for his updated patch to be validated. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
0c3592b821
|
@ -6836,7 +6836,6 @@ static void i40e_vsi_delete(struct i40e_vsi *vsi)
|
|||
return;
|
||||
|
||||
i40e_aq_delete_element(&vsi->back->hw, vsi->seid, NULL);
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -7576,8 +7575,6 @@ void i40e_veb_release(struct i40e_veb *veb)
|
|||
|
||||
i40e_aq_delete_element(&pf->hw, veb->seid, NULL);
|
||||
i40e_veb_clear(veb);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -8058,7 +8055,6 @@ static void i40e_determine_queue_usage(struct i40e_pf *pf)
|
|||
}
|
||||
|
||||
pf->queues_left = queues_left;
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -693,7 +693,6 @@ static void i40evf_del_vlan(struct i40evf_adapter *adapter, u16 vlan)
|
|||
f->remove = true;
|
||||
adapter->aq_required |= I40EVF_FLAG_AQ_DEL_VLAN_FILTER;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1232,8 +1231,6 @@ void i40evf_reset_interrupt_capability(struct i40evf_adapter *adapter)
|
|||
pci_disable_msix(adapter->pdev);
|
||||
kfree(adapter->msix_entries);
|
||||
adapter->msix_entries = NULL;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2158,7 +2155,6 @@ static void i40evf_init_task(struct work_struct *work)
|
|||
return; /* do not reschedule */
|
||||
}
|
||||
schedule_delayed_work(&adapter->init_task, HZ * 3);
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -798,5 +798,4 @@ void igb_get_fw_version(struct e1000_hw *hw, struct e1000_fw_version *fw_vers)
|
|||
fw_vers->etrack_id = (eeprom_verh << NVM_ETRACK_SHIFT)
|
||||
| eeprom_verl;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -2139,7 +2139,6 @@ void igb_set_fw_version(struct igb_adapter *adapter)
|
|||
}
|
||||
break;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -119,7 +119,6 @@ static int igbvf_set_settings(struct net_device *netdev,
|
|||
static void igbvf_get_pauseparam(struct net_device *netdev,
|
||||
struct ethtool_pauseparam *pause)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
static int igbvf_set_pauseparam(struct net_device *netdev,
|
||||
|
|
|
@ -1278,8 +1278,6 @@ static void ixgbe_set_rxpba_82598(struct ixgbe_hw *hw, int num_pb,
|
|||
/* Setup Tx packet buffer sizes */
|
||||
for (i = 0; i < IXGBE_MAX_PACKET_BUFFERS; i++)
|
||||
IXGBE_WRITE_REG(hw, IXGBE_TXPBSIZE(i), IXGBE_TXPBSIZE_40KB);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static struct ixgbe_mac_operations mac_ops_82598 = {
|
||||
|
|
|
@ -1271,6 +1271,7 @@ s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw)
|
|||
{
|
||||
int i;
|
||||
u32 fdirctrl = IXGBE_READ_REG(hw, IXGBE_FDIRCTRL);
|
||||
|
||||
fdirctrl &= ~IXGBE_FDIRCTRL_INIT_DONE;
|
||||
|
||||
/*
|
||||
|
@ -1284,8 +1285,7 @@ s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw)
|
|||
udelay(10);
|
||||
}
|
||||
if (i >= IXGBE_FDIRCMD_CMD_POLL) {
|
||||
hw_dbg(hw, "Flow Director previous command isn't complete, "
|
||||
"aborting table re-initialization.\n");
|
||||
hw_dbg(hw, "Flow Director previous command isn't complete, aborting table re-initialization.\n");
|
||||
return IXGBE_ERR_FDIR_REINIT_FAILED;
|
||||
}
|
||||
|
||||
|
@ -1453,7 +1453,7 @@ do { \
|
|||
bucket_hash ^= hi_hash_dword >> n; \
|
||||
else if (IXGBE_ATR_SIGNATURE_HASH_KEY & (0x01 << (n + 16))) \
|
||||
sig_hash ^= hi_hash_dword << (16 - n); \
|
||||
} while (0);
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* ixgbe_atr_compute_sig_hash_82599 - Compute the signature hash
|
||||
|
@ -1579,7 +1579,7 @@ do { \
|
|||
bucket_hash ^= lo_hash_dword >> n; \
|
||||
if (IXGBE_ATR_BUCKET_HASH_KEY & (0x01 << (n + 16))) \
|
||||
bucket_hash ^= hi_hash_dword >> n; \
|
||||
} while (0);
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* ixgbe_atr_compute_perfect_hash_82599 - Compute the perfect filter hash
|
||||
|
@ -1651,6 +1651,7 @@ void ixgbe_atr_compute_perfect_hash_82599(union ixgbe_atr_input *input,
|
|||
static u32 ixgbe_get_fdirtcpm_82599(union ixgbe_atr_input *input_mask)
|
||||
{
|
||||
u32 mask = ntohs(input_mask->formatted.dst_port);
|
||||
|
||||
mask <<= IXGBE_FDIRTCPM_DPORTM_SHIFT;
|
||||
mask |= ntohs(input_mask->formatted.src_port);
|
||||
mask = ((mask & 0x55555555) << 1) | ((mask & 0xAAAAAAAA) >> 1);
|
||||
|
|
|
@ -818,9 +818,8 @@ s32 ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw)
|
|||
eeprom->address_bits = 16;
|
||||
else
|
||||
eeprom->address_bits = 8;
|
||||
hw_dbg(hw, "Eeprom params: type = %d, size = %d, address bits: "
|
||||
"%d\n", eeprom->type, eeprom->word_size,
|
||||
eeprom->address_bits);
|
||||
hw_dbg(hw, "Eeprom params: type = %d, size = %d, address bits: %d\n",
|
||||
eeprom->type, eeprom->word_size, eeprom->address_bits);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -1392,8 +1391,7 @@ static s32 ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw)
|
|||
}
|
||||
|
||||
if (i == timeout) {
|
||||
hw_dbg(hw, "Driver can't access the Eeprom - SMBI Semaphore "
|
||||
"not granted.\n");
|
||||
hw_dbg(hw, "Driver can't access the Eeprom - SMBI Semaphore not granted.\n");
|
||||
/*
|
||||
* this release is particularly important because our attempts
|
||||
* above to get the semaphore may have succeeded, and if there
|
||||
|
@ -1438,14 +1436,12 @@ static s32 ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw)
|
|||
* was not granted because we don't have access to the EEPROM
|
||||
*/
|
||||
if (i >= timeout) {
|
||||
hw_dbg(hw, "SWESMBI Software EEPROM semaphore "
|
||||
"not granted.\n");
|
||||
hw_dbg(hw, "SWESMBI Software EEPROM semaphore not granted.\n");
|
||||
ixgbe_release_eeprom_semaphore(hw);
|
||||
status = IXGBE_ERR_EEPROM;
|
||||
}
|
||||
} else {
|
||||
hw_dbg(hw, "Software semaphore SMBI between device drivers "
|
||||
"not granted.\n");
|
||||
hw_dbg(hw, "Software semaphore SMBI between device drivers not granted.\n");
|
||||
}
|
||||
|
||||
return status;
|
||||
|
@ -2663,8 +2659,7 @@ s32 ixgbe_disable_rx_buff_generic(struct ixgbe_hw *hw)
|
|||
|
||||
/* For informational purposes only */
|
||||
if (i >= IXGBE_MAX_SECRX_POLL)
|
||||
hw_dbg(hw, "Rx unit being enabled before security "
|
||||
"path fully disabled. Continuing with init.\n");
|
||||
hw_dbg(hw, "Rx unit being enabled before security path fully disabled. Continuing with init.\n");
|
||||
|
||||
return 0;
|
||||
|
||||
|
@ -3199,10 +3194,10 @@ s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind,
|
|||
* Ignore it. */
|
||||
vfta_changed = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
} else {
|
||||
IXGBE_WRITE_REG(hw, IXGBE_VLVF(vlvf_index), 0);
|
||||
}
|
||||
}
|
||||
|
||||
if (vfta_changed)
|
||||
IXGBE_WRITE_REG(hw, IXGBE_VFTA(regindex), vfta);
|
||||
|
|
|
@ -389,7 +389,6 @@ static void ixgbe_dcb_read_rtrup2tc_82599(struct ixgbe_hw *hw, u8 *map)
|
|||
for (i = 0; i < MAX_USER_PRIORITY; i++)
|
||||
map[i] = IXGBE_RTRUP2TC_UP_MASK &
|
||||
(reg >> (i * IXGBE_RTRUP2TC_UP_SHIFT));
|
||||
return;
|
||||
}
|
||||
|
||||
void ixgbe_dcb_read_rtrup2tc(struct ixgbe_hw *hw, u8 *map)
|
||||
|
|
|
@ -253,7 +253,6 @@ void ixgbe_dbg_adapter_init(struct ixgbe_adapter *adapter)
|
|||
**/
|
||||
void ixgbe_dbg_adapter_exit(struct ixgbe_adapter *adapter)
|
||||
{
|
||||
if (adapter->ixgbe_dbg_adapter)
|
||||
debugfs_remove_recursive(adapter->ixgbe_dbg_adapter);
|
||||
adapter->ixgbe_dbg_adapter = NULL;
|
||||
}
|
||||
|
|
|
@ -1357,8 +1357,7 @@ static bool reg_pattern_test(struct ixgbe_adapter *adapter, u64 *data, int reg,
|
|||
ixgbe_write_reg(&adapter->hw, reg, test_pattern[pat] & write);
|
||||
val = ixgbe_read_reg(&adapter->hw, reg);
|
||||
if (val != (test_pattern[pat] & write & mask)) {
|
||||
e_err(drv, "pattern test reg %04X failed: got "
|
||||
"0x%08X expected 0x%08X\n",
|
||||
e_err(drv, "pattern test reg %04X failed: got 0x%08X expected 0x%08X\n",
|
||||
reg, val, (test_pattern[pat] & write & mask));
|
||||
*data = reg;
|
||||
ixgbe_write_reg(&adapter->hw, reg, before);
|
||||
|
@ -1382,8 +1381,8 @@ static bool reg_set_and_check(struct ixgbe_adapter *adapter, u64 *data, int reg,
|
|||
ixgbe_write_reg(&adapter->hw, reg, write & mask);
|
||||
val = ixgbe_read_reg(&adapter->hw, reg);
|
||||
if ((write & mask) != (val & mask)) {
|
||||
e_err(drv, "set/check reg %04X test failed: got 0x%08X "
|
||||
"expected 0x%08X\n", reg, (val & mask), (write & mask));
|
||||
e_err(drv, "set/check reg %04X test failed: got 0x%08X expected 0x%08X\n",
|
||||
reg, (val & mask), (write & mask));
|
||||
*data = reg;
|
||||
ixgbe_write_reg(&adapter->hw, reg, before);
|
||||
return true;
|
||||
|
@ -1430,8 +1429,8 @@ static int ixgbe_reg_test(struct ixgbe_adapter *adapter, u64 *data)
|
|||
ixgbe_write_reg(&adapter->hw, IXGBE_STATUS, toggle);
|
||||
after = ixgbe_read_reg(&adapter->hw, IXGBE_STATUS) & toggle;
|
||||
if (value != after) {
|
||||
e_err(drv, "failed STATUS register test got: 0x%08X "
|
||||
"expected: 0x%08X\n", after, value);
|
||||
e_err(drv, "failed STATUS register test got: 0x%08X expected: 0x%08X\n",
|
||||
after, value);
|
||||
*data = 1;
|
||||
return 1;
|
||||
}
|
||||
|
@ -1987,10 +1986,7 @@ static void ixgbe_diag_test(struct net_device *netdev,
|
|||
int i;
|
||||
for (i = 0; i < adapter->num_vfs; i++) {
|
||||
if (adapter->vfinfo[i].clear_to_send) {
|
||||
netdev_warn(netdev, "%s",
|
||||
"offline diagnostic is not "
|
||||
"supported when VFs are "
|
||||
"present\n");
|
||||
netdev_warn(netdev, "offline diagnostic is not supported when VFs are present\n");
|
||||
data[0] = 1;
|
||||
data[1] = 1;
|
||||
data[2] = 1;
|
||||
|
@ -2037,8 +2033,7 @@ static void ixgbe_diag_test(struct net_device *netdev,
|
|||
* loopback diagnostic. */
|
||||
if (adapter->flags & (IXGBE_FLAG_SRIOV_ENABLED |
|
||||
IXGBE_FLAG_VMDQ_ENABLED)) {
|
||||
e_info(hw, "Skip MAC loopback diagnostic in VT "
|
||||
"mode\n");
|
||||
e_info(hw, "Skip MAC loopback diagnostic in VT mode\n");
|
||||
data[3] = 0;
|
||||
goto skip_loopback;
|
||||
}
|
||||
|
@ -2222,8 +2217,7 @@ static bool ixgbe_update_rsc(struct ixgbe_adapter *adapter)
|
|||
adapter->rx_itr_setting > IXGBE_MIN_RSC_ITR) {
|
||||
if (!(adapter->flags2 & IXGBE_FLAG2_RSC_ENABLED)) {
|
||||
adapter->flags2 |= IXGBE_FLAG2_RSC_ENABLED;
|
||||
e_info(probe, "rx-usecs value high enough "
|
||||
"to re-enable RSC\n");
|
||||
e_info(probe, "rx-usecs value high enough to re-enable RSC\n");
|
||||
return true;
|
||||
}
|
||||
/* if interrupt rate is too high then disable RSC */
|
||||
|
@ -2421,9 +2415,11 @@ static int ixgbe_get_rss_hash_opts(struct ixgbe_adapter *adapter,
|
|||
switch (cmd->flow_type) {
|
||||
case TCP_V4_FLOW:
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
/* fallthrough */
|
||||
case UDP_V4_FLOW:
|
||||
if (adapter->flags2 & IXGBE_FLAG2_RSS_FIELD_IPV4_UDP)
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
/* fallthrough */
|
||||
case SCTP_V4_FLOW:
|
||||
case AH_ESP_V4_FLOW:
|
||||
case AH_V4_FLOW:
|
||||
|
@ -2433,9 +2429,11 @@ static int ixgbe_get_rss_hash_opts(struct ixgbe_adapter *adapter,
|
|||
break;
|
||||
case TCP_V6_FLOW:
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
/* fallthrough */
|
||||
case UDP_V6_FLOW:
|
||||
if (adapter->flags2 & IXGBE_FLAG2_RSS_FIELD_IPV6_UDP)
|
||||
cmd->data |= RXH_L4_B_0_1 | RXH_L4_B_2_3;
|
||||
/* fallthrough */
|
||||
case SCTP_V6_FLOW:
|
||||
case AH_ESP_V6_FLOW:
|
||||
case AH_V6_FLOW:
|
||||
|
@ -2787,8 +2785,7 @@ static int ixgbe_set_rss_hash_opt(struct ixgbe_adapter *adapter,
|
|||
|
||||
if ((flags2 & UDP_RSS_FLAGS) &&
|
||||
!(adapter->flags2 & UDP_RSS_FLAGS))
|
||||
e_warn(drv, "enabling UDP RSS: fragmented packets"
|
||||
" may arrive out of order to the stack above\n");
|
||||
e_warn(drv, "enabling UDP RSS: fragmented packets may arrive out of order to the stack above\n");
|
||||
|
||||
adapter->flags2 = flags2;
|
||||
|
||||
|
|
|
@ -1113,8 +1113,8 @@ static void ixgbe_set_interrupt_capability(struct ixgbe_adapter *adapter)
|
|||
err = pci_enable_msi(adapter->pdev);
|
||||
if (err) {
|
||||
netif_printk(adapter, hw, KERN_DEBUG, adapter->netdev,
|
||||
"Unable to allocate MSI interrupt, "
|
||||
"falling back to legacy. Error: %d\n", err);
|
||||
"Unable to allocate MSI interrupt, falling back to legacy. Error: %d\n",
|
||||
err);
|
||||
return;
|
||||
}
|
||||
adapter->flags |= IXGBE_FLAG_MSI_ENABLED;
|
||||
|
|
|
@ -712,8 +712,7 @@ static s32 ixgbe_get_swfw_sync_semaphore(struct ixgbe_hw *hw)
|
|||
udelay(50);
|
||||
}
|
||||
} else {
|
||||
hw_dbg(hw, "Software semaphore SMBI between device drivers "
|
||||
"not granted.\n");
|
||||
hw_dbg(hw, "Software semaphore SMBI between device drivers not granted.\n");
|
||||
}
|
||||
|
||||
return status;
|
||||
|
|
Loading…
Reference in New Issue