ice: don't always return an error for Get PHY Abilities AQ command
authorPaul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Thu, 17 Sep 2020 20:13:40 +0000 (13:13 -0700)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Wed, 9 Dec 2020 16:11:54 +0000 (08:11 -0800)
There are times when the driver shouldn't return an error when the Get
PHY abilities AQ command (0x0600) returns an error. Instead the driver
should log that the error occurred and continue on. This allows the
driver to load even though the AQ command failed. The user can then
later determine the reason for the failure and correct it.

Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_common.c

index 7db5fd9..ab9d7ae 100644 (file)
@@ -925,7 +925,8 @@ enum ice_status ice_init_hw(struct ice_hw *hw)
                                     ICE_AQC_REPORT_TOPO_CAP, pcaps, NULL);
        devm_kfree(ice_hw_to_dev(hw), pcaps);
        if (status)
-               goto err_unroll_sched;
+               dev_warn(ice_hw_to_dev(hw), "Get PHY capabilities failed status = %d, continuing anyway\n",
+                        status);
 
        /* Initialize port_info struct with link information */
        status = ice_aq_get_link_info(hw->port_info, false, NULL, NULL);