Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / drivers / net / ethernet / intel / ixgbevf / vf.c
index 0c94557b53df9b656dafd2e1a96f56c3803c8288..387b52635bc051259a5e5b99d9740c69bcca687a 100644 (file)
@@ -109,7 +109,12 @@ static s32 ixgbevf_reset_hw_vf(struct ixgbe_hw *hw)
        if (ret_val)
                return ret_val;
 
-       if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK))
+       /* New versions of the PF may NACK the reset return message
+        * to indicate that no MAC address has yet been assigned for
+        * the VF.
+        */
+       if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK) &&
+           msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_NACK))
                return IXGBE_ERR_INVALID_MAC_ADDR;
 
        memcpy(hw->mac.perm_addr, addr, ETH_ALEN);