|
|
|
|
@@ -1822,8 +1822,8 @@ static int i40e_set_mac(struct net_device *netdev, void *p)
|
|
|
|
|
ret = i40e_aq_mac_address_write(hw, I40E_AQC_WRITE_TYPE_LAA_WOL,
|
|
|
|
|
addr->sa_data, NULL);
|
|
|
|
|
if (ret)
|
|
|
|
|
netdev_info(netdev, "Ignoring error from firmware on LAA update, status %s, AQ ret %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
netdev_info(netdev, "Ignoring error from firmware on LAA update, status %d, AQ ret %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -1854,8 +1854,8 @@ static int i40e_config_rss_aq(struct i40e_vsi *vsi, const u8 *seed,
|
|
|
|
|
ret = i40e_aq_set_rss_key(hw, vsi->id, seed_dw);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot set RSS key, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Cannot set RSS key, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -1866,8 +1866,8 @@ static int i40e_config_rss_aq(struct i40e_vsi *vsi, const u8 *seed,
|
|
|
|
|
ret = i40e_aq_set_rss_lut(hw, vsi->id, pf_lut, lut, lut_size);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot set RSS lut, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Cannot set RSS lut, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -2358,8 +2358,8 @@ void i40e_aqc_del_filters(struct i40e_vsi *vsi, const char *vsi_name,
|
|
|
|
|
if (aq_ret && !(aq_status == I40E_AQ_RC_ENOENT)) {
|
|
|
|
|
*retval = -EIO;
|
|
|
|
|
dev_info(&vsi->back->pdev->dev,
|
|
|
|
|
"ignoring delete macvlan error on %s, err %s, aq_err %s\n",
|
|
|
|
|
vsi_name, i40e_stat_str(hw, aq_ret),
|
|
|
|
|
"ignoring delete macvlan error on %s, err %d, aq_err %s\n",
|
|
|
|
|
vsi_name, aq_ret,
|
|
|
|
|
i40e_aq_str(hw, aq_status));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -2488,8 +2488,8 @@ static int i40e_set_promiscuous(struct i40e_pf *pf, bool promisc)
|
|
|
|
|
NULL);
|
|
|
|
|
if (aq_ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Set default VSI failed, err %s, aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, aq_ret),
|
|
|
|
|
"Set default VSI failed, err %d, aq_err %s\n",
|
|
|
|
|
aq_ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
@@ -2500,8 +2500,8 @@ static int i40e_set_promiscuous(struct i40e_pf *pf, bool promisc)
|
|
|
|
|
true);
|
|
|
|
|
if (aq_ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"set unicast promisc failed, err %s, aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, aq_ret),
|
|
|
|
|
"set unicast promisc failed, err %d, aq_err %s\n",
|
|
|
|
|
aq_ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
aq_ret = i40e_aq_set_vsi_multicast_promiscuous(
|
|
|
|
|
@@ -2510,8 +2510,8 @@ static int i40e_set_promiscuous(struct i40e_pf *pf, bool promisc)
|
|
|
|
|
promisc, NULL);
|
|
|
|
|
if (aq_ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"set multicast promisc failed, err %s, aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, aq_ret),
|
|
|
|
|
"set multicast promisc failed, err %d, aq_err %s\n",
|
|
|
|
|
aq_ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -2814,9 +2814,9 @@ int i40e_sync_vsi_filters(struct i40e_vsi *vsi)
|
|
|
|
|
retval = i40e_aq_rc_to_posix(aq_ret,
|
|
|
|
|
hw->aq.asq_last_status);
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"set multi promisc failed on %s, err %s aq_err %s\n",
|
|
|
|
|
"set multi promisc failed on %s, err %d aq_err %s\n",
|
|
|
|
|
vsi_name,
|
|
|
|
|
i40e_stat_str(hw, aq_ret),
|
|
|
|
|
aq_ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
} else {
|
|
|
|
|
dev_info(&pf->pdev->dev, "%s allmulti mode.\n",
|
|
|
|
|
@@ -2834,10 +2834,10 @@ int i40e_sync_vsi_filters(struct i40e_vsi *vsi)
|
|
|
|
|
retval = i40e_aq_rc_to_posix(aq_ret,
|
|
|
|
|
hw->aq.asq_last_status);
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Setting promiscuous %s failed on %s, err %s aq_err %s\n",
|
|
|
|
|
"Setting promiscuous %s failed on %s, err %d aq_err %s\n",
|
|
|
|
|
cur_promisc ? "on" : "off",
|
|
|
|
|
vsi_name,
|
|
|
|
|
i40e_stat_str(hw, aq_ret),
|
|
|
|
|
aq_ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -2985,8 +2985,8 @@ void i40e_vlan_stripping_enable(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(&vsi->back->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&vsi->back->pdev->dev,
|
|
|
|
|
"update vlan stripping failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&vsi->back->hw, ret),
|
|
|
|
|
"update vlan stripping failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&vsi->back->hw,
|
|
|
|
|
vsi->back->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -3020,8 +3020,8 @@ void i40e_vlan_stripping_disable(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(&vsi->back->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&vsi->back->pdev->dev,
|
|
|
|
|
"update vlan stripping failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&vsi->back->hw, ret),
|
|
|
|
|
"update vlan stripping failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&vsi->back->hw,
|
|
|
|
|
vsi->back->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -3265,8 +3265,8 @@ int i40e_vsi_add_pvid(struct i40e_vsi *vsi, u16 vid)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(&vsi->back->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&vsi->back->pdev->dev,
|
|
|
|
|
"add pvid failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&vsi->back->hw, ret),
|
|
|
|
|
"add pvid failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&vsi->back->hw,
|
|
|
|
|
vsi->back->hw.aq.asq_last_status));
|
|
|
|
|
return -ENOENT;
|
|
|
|
|
@@ -5533,8 +5533,8 @@ static int i40e_vsi_get_bw_info(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_query_vsi_bw_config(hw, vsi->seid, &bw_config, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get PF vsi bw config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get PF vsi bw config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return -EINVAL;
|
|
|
|
|
}
|
|
|
|
|
@@ -5544,8 +5544,8 @@ static int i40e_vsi_get_bw_info(struct i40e_vsi *vsi)
|
|
|
|
|
NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get PF vsi ets bw config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get PF vsi ets bw config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return -EINVAL;
|
|
|
|
|
}
|
|
|
|
|
@@ -5734,8 +5734,8 @@ int i40e_update_adq_vsi_queues(struct i40e_vsi *vsi, int vsi_offset)
|
|
|
|
|
|
|
|
|
|
ret = i40e_aq_update_vsi_params(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev, "Update vsi config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
dev_info(&pf->pdev->dev, "Update vsi config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -5790,8 +5790,8 @@ static int i40e_vsi_config_tc(struct i40e_vsi *vsi, u8 enabled_tc)
|
|
|
|
|
&bw_config, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Failed querying vsi bw info, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Failed querying vsi bw info, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -5857,8 +5857,8 @@ static int i40e_vsi_config_tc(struct i40e_vsi *vsi, u8 enabled_tc)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Update vsi tc config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Update vsi tc config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -5870,8 +5870,8 @@ static int i40e_vsi_config_tc(struct i40e_vsi *vsi, u8 enabled_tc)
|
|
|
|
|
ret = i40e_vsi_get_bw_info(vsi);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Failed updating vsi bw info, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Failed updating vsi bw info, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -5962,8 +5962,8 @@ int i40e_set_bw_limit(struct i40e_vsi *vsi, u16 seid, u64 max_tx_rate)
|
|
|
|
|
I40E_MAX_BW_INACTIVE_ACCUM, NULL);
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"Failed set tx rate (%llu Mbps) for vsi->seid %u, err %s aq_err %s\n",
|
|
|
|
|
max_tx_rate, seid, i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Failed set tx rate (%llu Mbps) for vsi->seid %u, err %d aq_err %s\n",
|
|
|
|
|
max_tx_rate, seid, ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -6038,8 +6038,8 @@ static void i40e_remove_queue_channels(struct i40e_vsi *vsi)
|
|
|
|
|
last_aq_status = pf->hw.aq.asq_last_status;
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Failed to delete cloud filter, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Failed to delete cloud filter, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, last_aq_status));
|
|
|
|
|
kfree(cfilter);
|
|
|
|
|
}
|
|
|
|
|
@@ -6173,8 +6173,8 @@ static int i40e_vsi_reconfig_rss(struct i40e_vsi *vsi, u16 rss_size)
|
|
|
|
|
ret = i40e_config_rss(vsi, seed, lut, vsi->rss_table_size);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot set RSS lut, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Cannot set RSS lut, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
kfree(lut);
|
|
|
|
|
return ret;
|
|
|
|
|
@@ -6272,8 +6272,8 @@ static int i40e_add_channel(struct i40e_pf *pf, u16 uplink_seid,
|
|
|
|
|
ret = i40e_aq_add_vsi(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"add new vsi failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"add new vsi failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return -ENOENT;
|
|
|
|
|
@@ -6518,8 +6518,8 @@ static int i40e_validate_and_set_switch_mode(struct i40e_vsi *vsi)
|
|
|
|
|
mode, NULL);
|
|
|
|
|
if (ret && hw->aq.asq_last_status != I40E_AQ_RC_ESRCH)
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"couldn't set switch config bits, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"couldn't set switch config bits, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw,
|
|
|
|
|
hw->aq.asq_last_status));
|
|
|
|
|
|
|
|
|
|
@@ -6719,8 +6719,8 @@ int i40e_veb_config_tc(struct i40e_veb *veb, u8 enabled_tc)
|
|
|
|
|
&bw_data, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"VEB bw config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"VEB bw config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -6729,8 +6729,8 @@ int i40e_veb_config_tc(struct i40e_veb *veb, u8 enabled_tc)
|
|
|
|
|
ret = i40e_veb_get_bw_info(veb);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Failed getting veb bw config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Failed getting veb bw config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -6813,8 +6813,8 @@ static int i40e_resume_port_tx(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_resume_port_tx(hw, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Resume Port Tx failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Resume Port Tx failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
/* Schedule PF reset to recover */
|
|
|
|
|
set_bit(__I40E_PF_RESET_REQUESTED, pf->state);
|
|
|
|
|
@@ -6838,8 +6838,8 @@ static int i40e_suspend_port_tx(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_suspend_port_tx(hw, pf->mac_seid, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Suspend Port Tx failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Suspend Port Tx failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
/* Schedule PF reset to recover */
|
|
|
|
|
set_bit(__I40E_PF_RESET_REQUESTED, pf->state);
|
|
|
|
|
@@ -6878,8 +6878,8 @@ static int i40e_hw_set_dcb_config(struct i40e_pf *pf,
|
|
|
|
|
ret = i40e_set_dcb_config(&pf->hw);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Set DCB Config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Set DCB Config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -6995,8 +6995,8 @@ int i40e_hw_dcb_config(struct i40e_pf *pf, struct i40e_dcbx_config *new_cfg)
|
|
|
|
|
i40e_aqc_opc_modify_switching_comp_ets, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Modify Port ETS failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Modify Port ETS failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -7033,8 +7033,8 @@ int i40e_hw_dcb_config(struct i40e_pf *pf, struct i40e_dcbx_config *new_cfg)
|
|
|
|
|
ret = i40e_aq_dcb_updated(&pf->hw, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"DCB Updated failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"DCB Updated failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -7117,8 +7117,8 @@ int i40e_dcb_sw_default_config(struct i40e_pf *pf)
|
|
|
|
|
i40e_aqc_opc_enable_switching_comp_ets, NULL);
|
|
|
|
|
if (err) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Enable Port ETS failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
"Enable Port ETS failed, err %d aq_err %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
err = -ENOENT;
|
|
|
|
|
goto out;
|
|
|
|
|
@@ -7197,8 +7197,8 @@ static int i40e_init_pf_dcb(struct i40e_pf *pf)
|
|
|
|
|
pf->flags |= I40E_FLAG_DISABLE_FW_LLDP;
|
|
|
|
|
} else {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Query for DCB configuration failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
"Query for DCB configuration failed, err %d aq_err %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -7436,8 +7436,8 @@ static i40e_status i40e_force_link_state(struct i40e_pf *pf, bool is_up)
|
|
|
|
|
NULL);
|
|
|
|
|
if (err) {
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"failed to get phy cap., ret = %s last_status = %s\n",
|
|
|
|
|
i40e_stat_str(hw, err),
|
|
|
|
|
"failed to get phy cap., ret = %d last_status = %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return err;
|
|
|
|
|
}
|
|
|
|
|
@@ -7448,8 +7448,8 @@ static i40e_status i40e_force_link_state(struct i40e_pf *pf, bool is_up)
|
|
|
|
|
NULL);
|
|
|
|
|
if (err) {
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"failed to get phy cap., ret = %s last_status = %s\n",
|
|
|
|
|
i40e_stat_str(hw, err),
|
|
|
|
|
"failed to get phy cap., ret = %d last_status = %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return err;
|
|
|
|
|
}
|
|
|
|
|
@@ -7493,8 +7493,8 @@ static i40e_status i40e_force_link_state(struct i40e_pf *pf, bool is_up)
|
|
|
|
|
|
|
|
|
|
if (err) {
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"set phy config ret = %s last_status = %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
"set phy config ret = %d last_status = %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return err;
|
|
|
|
|
}
|
|
|
|
|
@@ -7834,8 +7834,8 @@ static int i40e_fwd_ring_up(struct i40e_vsi *vsi, struct net_device *vdev,
|
|
|
|
|
rx_ring->netdev = NULL;
|
|
|
|
|
}
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Error adding mac filter on macvlan err %s, aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Error adding mac filter on macvlan err %d, aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, aq_err));
|
|
|
|
|
netdev_err(vdev, "L2fwd offload disabled to L2 filter error\n");
|
|
|
|
|
}
|
|
|
|
|
@@ -7907,8 +7907,8 @@ static int i40e_setup_macvlans(struct i40e_vsi *vsi, u16 macvlan_cnt, u16 qcnt,
|
|
|
|
|
ret = i40e_aq_update_vsi_params(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Update vsi tc config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Update vsi tc config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -8123,8 +8123,8 @@ static void i40e_fwd_del(struct net_device *netdev, void *vdev)
|
|
|
|
|
ch->fwd = NULL;
|
|
|
|
|
} else {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Error deleting mac filter on macvlan err %s, aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
"Error deleting mac filter on macvlan err %d, aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, aq_err));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
@@ -8875,8 +8875,7 @@ static int i40e_delete_clsflower(struct i40e_vsi *vsi,
|
|
|
|
|
kfree(filter);
|
|
|
|
|
if (err) {
|
|
|
|
|
dev_err(&pf->pdev->dev,
|
|
|
|
|
"Failed to delete cloud filter, err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err));
|
|
|
|
|
"Failed to delete cloud filter, err %d\n", err);
|
|
|
|
|
return i40e_aq_rc_to_posix(err, pf->hw.aq.asq_last_status);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -9438,8 +9437,8 @@ static int i40e_handle_lldp_event(struct i40e_pf *pf,
|
|
|
|
|
pf->flags &= ~I40E_FLAG_DCB_CAPABLE;
|
|
|
|
|
} else {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Failed querying DCB configuration data from firmware, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Failed querying DCB configuration data from firmware, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -10265,8 +10264,8 @@ static void i40e_enable_pf_switch_lb(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_get_vsi_params(&pf->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get PF vsi config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get PF vsi config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
@@ -10277,8 +10276,8 @@ static void i40e_enable_pf_switch_lb(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(&vsi->back->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"update vsi switch failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"update vsi switch failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -10301,8 +10300,8 @@ static void i40e_disable_pf_switch_lb(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_get_vsi_params(&pf->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get PF vsi config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get PF vsi config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
@@ -10313,8 +10312,8 @@ static void i40e_disable_pf_switch_lb(struct i40e_pf *pf)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(&vsi->back->hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"update vsi switch failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"update vsi switch failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -10458,8 +10457,8 @@ static int i40e_get_capabilities(struct i40e_pf *pf,
|
|
|
|
|
buf_len = data_size;
|
|
|
|
|
} else if (pf->hw.aq.asq_last_status != I40E_AQ_RC_OK || err) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"capability discovery failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
"capability discovery failed, err %d aq_err %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return -ENODEV;
|
|
|
|
|
@@ -10596,8 +10595,8 @@ static int i40e_rebuild_cloud_filters(struct i40e_vsi *vsi, u16 seid)
|
|
|
|
|
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_dbg(&pf->pdev->dev,
|
|
|
|
|
"Failed to rebuild cloud filter, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Failed to rebuild cloud filter, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
@@ -10837,8 +10836,8 @@ static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired)
|
|
|
|
|
/* rebuild the basics for the AdminQ, HMC, and initial HW switch */
|
|
|
|
|
ret = i40e_init_adminq(&pf->hw);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev, "Rebuild AdminQ failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
dev_info(&pf->pdev->dev, "Rebuild AdminQ failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
goto clear_recovery;
|
|
|
|
|
}
|
|
|
|
|
@@ -10949,8 +10948,8 @@ static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired)
|
|
|
|
|
I40E_AQ_EVENT_MEDIA_NA |
|
|
|
|
|
I40E_AQ_EVENT_MODULE_QUAL_FAIL), NULL);
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_info(&pf->pdev->dev, "set phy mask fail, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
dev_info(&pf->pdev->dev, "set phy mask fail, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
|
|
|
|
|
/* Rebuild the VSIs and VEBs that existed before reset.
|
|
|
|
|
@@ -11053,8 +11052,8 @@ static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired)
|
|
|
|
|
msleep(75);
|
|
|
|
|
ret = i40e_aq_set_link_restart_an(&pf->hw, true, NULL);
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_info(&pf->pdev->dev, "link restart failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
dev_info(&pf->pdev->dev, "link restart failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -11082,9 +11081,9 @@ static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired)
|
|
|
|
|
ret = i40e_set_promiscuous(pf, pf->cur_promisc);
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_warn(&pf->pdev->dev,
|
|
|
|
|
"Failed to restore promiscuous setting: %s, err %s aq_err %s\n",
|
|
|
|
|
"Failed to restore promiscuous setting: %s, err %d aq_err %s\n",
|
|
|
|
|
pf->cur_promisc ? "on" : "off",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
|
|
|
|
|
i40e_reset_all_vfs(pf, true);
|
|
|
|
|
@@ -12218,8 +12217,8 @@ static int i40e_get_rss_aq(struct i40e_vsi *vsi, const u8 *seed,
|
|
|
|
|
(struct i40e_aqc_get_set_rss_key_data *)seed);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot get RSS key, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Cannot get RSS key, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
@@ -12232,8 +12231,8 @@ static int i40e_get_rss_aq(struct i40e_vsi *vsi, const u8 *seed,
|
|
|
|
|
ret = i40e_aq_get_rss_lut(hw, vsi->id, pf_lut, lut, lut_size);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot get RSS lut, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Cannot get RSS lut, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
@@ -12573,8 +12572,8 @@ i40e_status i40e_commit_partition_bw_setting(struct i40e_pf *pf)
|
|
|
|
|
last_aq_status = pf->hw.aq.asq_last_status;
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot acquire NVM for read access, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Cannot acquire NVM for read access, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, last_aq_status));
|
|
|
|
|
goto bw_commit_out;
|
|
|
|
|
}
|
|
|
|
|
@@ -12590,8 +12589,8 @@ i40e_status i40e_commit_partition_bw_setting(struct i40e_pf *pf)
|
|
|
|
|
last_aq_status = pf->hw.aq.asq_last_status;
|
|
|
|
|
i40e_release_nvm(&pf->hw);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev, "NVM read error, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
dev_info(&pf->pdev->dev, "NVM read error, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, last_aq_status));
|
|
|
|
|
goto bw_commit_out;
|
|
|
|
|
}
|
|
|
|
|
@@ -12604,8 +12603,8 @@ i40e_status i40e_commit_partition_bw_setting(struct i40e_pf *pf)
|
|
|
|
|
last_aq_status = pf->hw.aq.asq_last_status;
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"Cannot acquire NVM for write access, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"Cannot acquire NVM for write access, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, last_aq_status));
|
|
|
|
|
goto bw_commit_out;
|
|
|
|
|
}
|
|
|
|
|
@@ -12624,8 +12623,8 @@ i40e_status i40e_commit_partition_bw_setting(struct i40e_pf *pf)
|
|
|
|
|
i40e_release_nvm(&pf->hw);
|
|
|
|
|
if (ret)
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"BW settings NOT SAVED, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"BW settings NOT SAVED, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, last_aq_status));
|
|
|
|
|
bw_commit_out:
|
|
|
|
|
|
|
|
|
|
@@ -12679,8 +12678,8 @@ static bool i40e_is_total_port_shutdown_enabled(struct i40e_pf *pf)
|
|
|
|
|
|
|
|
|
|
err_nvm:
|
|
|
|
|
dev_warn(&pf->pdev->dev,
|
|
|
|
|
"total-port-shutdown feature is off due to read nvm error: %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, read_status));
|
|
|
|
|
"total-port-shutdown feature is off due to read nvm error: %d\n",
|
|
|
|
|
read_status);
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -13033,8 +13032,8 @@ static int i40e_udp_tunnel_set_port(struct net_device *netdev,
|
|
|
|
|
ret = i40e_aq_add_udp_tunnel(hw, ntohs(ti->port), type, &filter_index,
|
|
|
|
|
NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
netdev_info(netdev, "add UDP port failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
netdev_info(netdev, "add UDP port failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return -EIO;
|
|
|
|
|
}
|
|
|
|
|
@@ -13053,8 +13052,8 @@ static int i40e_udp_tunnel_unset_port(struct net_device *netdev,
|
|
|
|
|
|
|
|
|
|
ret = i40e_aq_del_udp_tunnel(hw, ti->hw_priv, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
netdev_info(netdev, "delete UDP port failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(hw, ret),
|
|
|
|
|
netdev_info(netdev, "delete UDP port failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(hw, hw->aq.asq_last_status));
|
|
|
|
|
return -EIO;
|
|
|
|
|
}
|
|
|
|
|
@@ -13941,8 +13940,8 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
ctxt.flags = I40E_AQ_VSI_TYPE_PF;
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get PF vsi config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get PF vsi config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
return -ENOENT;
|
|
|
|
|
@@ -13971,8 +13970,8 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"update vsi failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"update vsi failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
ret = -ENOENT;
|
|
|
|
|
@@ -13991,8 +13990,8 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_update_vsi_params(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"update vsi failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"update vsi failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
ret = -ENOENT;
|
|
|
|
|
@@ -14014,9 +14013,9 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
* message and continue
|
|
|
|
|
*/
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"failed to configure TCs for main VSI tc_map 0x%08x, err %s aq_err %s\n",
|
|
|
|
|
"failed to configure TCs for main VSI tc_map 0x%08x, err %d aq_err %s\n",
|
|
|
|
|
enabled_tc,
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -14110,8 +14109,8 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_aq_add_vsi(hw, &ctxt, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&vsi->back->pdev->dev,
|
|
|
|
|
"add vsi failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"add vsi failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
ret = -ENOENT;
|
|
|
|
|
@@ -14142,8 +14141,8 @@ static int i40e_add_vsi(struct i40e_vsi *vsi)
|
|
|
|
|
ret = i40e_vsi_get_bw_info(vsi);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get vsi bw info, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get vsi bw info, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
/* VSI is already added so not tearing that up */
|
|
|
|
|
ret = 0;
|
|
|
|
|
@@ -14589,8 +14588,8 @@ static int i40e_veb_get_bw_info(struct i40e_veb *veb)
|
|
|
|
|
&bw_data, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"query veb bw config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"query veb bw config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, hw->aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -14599,8 +14598,8 @@ static int i40e_veb_get_bw_info(struct i40e_veb *veb)
|
|
|
|
|
&ets_data, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"query veb bw ets config failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"query veb bw ets config failed, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, hw->aq.asq_last_status));
|
|
|
|
|
goto out;
|
|
|
|
|
}
|
|
|
|
|
@@ -14796,8 +14795,8 @@ static int i40e_add_veb(struct i40e_veb *veb, struct i40e_vsi *vsi)
|
|
|
|
|
/* get a VEB from the hardware */
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't add VEB, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't add VEB, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return -EPERM;
|
|
|
|
|
}
|
|
|
|
|
@@ -14807,16 +14806,16 @@ static int i40e_add_veb(struct i40e_veb *veb, struct i40e_vsi *vsi)
|
|
|
|
|
&veb->stats_idx, NULL, NULL, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get VEB statistics idx, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get VEB statistics idx, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return -EPERM;
|
|
|
|
|
}
|
|
|
|
|
ret = i40e_veb_get_bw_info(veb);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't get VEB bw info, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't get VEB bw info, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
i40e_aq_delete_element(&pf->hw, veb->seid, NULL);
|
|
|
|
|
return -ENOENT;
|
|
|
|
|
@@ -15026,8 +15025,8 @@ int i40e_fetch_switch_configuration(struct i40e_pf *pf, bool printconfig)
|
|
|
|
|
&next_seid, NULL);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"get switch config failed err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"get switch config failed err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
kfree(aq_buf);
|
|
|
|
|
@@ -15072,8 +15071,8 @@ static int i40e_setup_pf_switch(struct i40e_pf *pf, bool reinit, bool lock_acqui
|
|
|
|
|
ret = i40e_fetch_switch_configuration(pf, false);
|
|
|
|
|
if (ret) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't fetch switch config, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't fetch switch config, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
@@ -15099,8 +15098,8 @@ static int i40e_setup_pf_switch(struct i40e_pf *pf, bool reinit, bool lock_acqui
|
|
|
|
|
NULL);
|
|
|
|
|
if (ret && pf->hw.aq.asq_last_status != I40E_AQ_RC_ESRCH) {
|
|
|
|
|
dev_info(&pf->pdev->dev,
|
|
|
|
|
"couldn't set switch config bits, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, ret),
|
|
|
|
|
"couldn't set switch config bits, err %d aq_err %s\n",
|
|
|
|
|
ret,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
/* not a fatal problem, just keep going */
|
|
|
|
|
@@ -16002,8 +16001,8 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
I40E_AQ_EVENT_MEDIA_NA |
|
|
|
|
|
I40E_AQ_EVENT_MODULE_QUAL_FAIL), NULL);
|
|
|
|
|
if (err)
|
|
|
|
|
dev_info(&pf->pdev->dev, "set phy mask fail, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
dev_info(&pf->pdev->dev, "set phy mask fail, err %d aq_err %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
|
|
|
|
|
/* Reconfigure hardware for allowing smaller MSS in the case
|
|
|
|
|
@@ -16021,8 +16020,8 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
msleep(75);
|
|
|
|
|
err = i40e_aq_set_link_restart_an(&pf->hw, true, NULL);
|
|
|
|
|
if (err)
|
|
|
|
|
dev_info(&pf->pdev->dev, "link restart failed, err %s aq_err %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
dev_info(&pf->pdev->dev, "link restart failed, err %d aq_err %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw,
|
|
|
|
|
pf->hw.aq.asq_last_status));
|
|
|
|
|
}
|
|
|
|
|
@@ -16154,8 +16153,8 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
/* get the requested speeds from the fw */
|
|
|
|
|
err = i40e_aq_get_phy_capabilities(hw, false, false, &abilities, NULL);
|
|
|
|
|
if (err)
|
|
|
|
|
dev_dbg(&pf->pdev->dev, "get requested speeds ret = %s last_status = %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
dev_dbg(&pf->pdev->dev, "get requested speeds ret = %d last_status = %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
pf->hw.phy.link_info.requested_speeds = abilities.link_speed;
|
|
|
|
|
|
|
|
|
|
@@ -16165,8 +16164,8 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
/* get the supported phy types from the fw */
|
|
|
|
|
err = i40e_aq_get_phy_capabilities(hw, false, true, &abilities, NULL);
|
|
|
|
|
if (err)
|
|
|
|
|
dev_dbg(&pf->pdev->dev, "get supported phy types ret = %s last_status = %s\n",
|
|
|
|
|
i40e_stat_str(&pf->hw, err),
|
|
|
|
|
dev_dbg(&pf->pdev->dev, "get supported phy types ret = %d last_status = %s\n",
|
|
|
|
|
err,
|
|
|
|
|
i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status));
|
|
|
|
|
|
|
|
|
|
/* make sure the MFS hasn't been set lower than the default */
|
|
|
|
|
|