ice: Add support for unified NVM update flow capability
authorJacek Naczyk <jacek.naczyk@intel.com>
Fri, 24 Jul 2020 00:22:00 +0000 (17:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 29 Jul 2020 00:07:06 +0000 (17:07 -0700)
Extends function parsing response from Discover Device
Capability AQC to check if the device supports unified NVM update flow.

Signed-off-by: Jacek Naczyk <jacek.naczyk@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/intel/ice/ice_adminq_cmd.h
drivers/net/ethernet/intel/ice/ice_common.c
drivers/net/ethernet/intel/ice/ice_type.h

index b363e02..b97f50e 100644 (file)
@@ -109,6 +109,7 @@ struct ice_aqc_list_caps_elem {
 #define ICE_AQC_CAPS_MSIX                              0x0043
 #define ICE_AQC_CAPS_FD                                        0x0045
 #define ICE_AQC_CAPS_MAX_MTU                           0x0047
+#define ICE_AQC_CAPS_NVM_MGMT                          0x0080
 
        u8 major_ver;
        u8 minor_ver;
index c72cc77..249526f 100644 (file)
@@ -1857,6 +1857,13 @@ ice_parse_common_caps(struct ice_hw *hw, struct ice_hw_common_caps *caps,
                          "%s: msix_vector_first_id = %d\n", prefix,
                          caps->msix_vector_first_id);
                break;
+       case ICE_AQC_CAPS_NVM_MGMT:
+               caps->nvm_unified_update =
+                       (number & ICE_NVM_MGMT_UNIFIED_UPD_SUPPORT) ?
+                       true : false;
+               ice_debug(hw, ICE_DBG_INIT, "%s: nvm_unified_update = %d\n", prefix,
+                         caps->nvm_unified_update);
+               break;
        case ICE_AQC_CAPS_MAX_MTU:
                caps->max_mtu = number;
                ice_debug(hw, ICE_DBG_INIT, "%s: max_mtu = %d\n",
index 08c616d..8eb1f18 100644 (file)
@@ -244,6 +244,9 @@ struct ice_hw_common_caps {
        u8 rss_table_entry_width;       /* RSS Entry width in bits */
 
        u8 dcb;
+
+       bool nvm_unified_update;
+#define ICE_NVM_MGMT_UNIFIED_UPD_SUPPORT       BIT(3)
 };
 
 /* Function specific capabilities */