aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/ice/ice_main.c
diff options
context:
space:
mode:
authorDave Ertman <david.m.ertman@intel.com>2020-02-06 01:19:59 -0800
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2020-02-12 11:48:10 -0800
commit242b5e068b25119d6f1d63dac076b79d89580b4b (patch)
tree9375eed346604c7a8c02504a1e3ca2e9806abde8 /drivers/net/ethernet/intel/ice/ice_main.c
parentnet: ethernet: ave: Add capability of rgmii-id mode (diff)
downloadlinux-dev-242b5e068b25119d6f1d63dac076b79d89580b4b.tar.xz
linux-dev-242b5e068b25119d6f1d63dac076b79d89580b4b.zip
ice: Fix DCB rebuild after reset
The function ice_dcb_rebuild had some logic flaws in it, and also didn't differentiate between FW and SW modes needs. For FW flow, the willing setting was being forced to OFF and left that way. Unwilling in DCB FW mode is not a supported model. Leave the config alone and use the return value from the set command to determine if setting the config was successful. The SW DCB flow does not need to need to register for MIB change events (as they are not used in SW mode). Use !is_sw_lldp checks to only perform FW specific task while in FW mode. Also adding a reapplication of the current DCB config after a link event. Some NVMs are not maintaining their DCB configs across link events. Signed-off-by: Dave Ertman <david.m.ertman@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to '')
-rw-r--r--drivers/net/ethernet/intel/ice/ice_main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
index 5ae671609f98..4075d5379b23 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -841,6 +841,7 @@ ice_link_event(struct ice_pf *pf, struct ice_port_info *pi, bool link_up,
}
}
+ ice_dcb_rebuild(pf);
ice_vsi_link_event(vsi, link_up);
ice_print_link_msg(vsi, link_up);