]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net/qed: allow old cards not supporting "num_images" to work
authorLouis Leseur <louis.leseur@gmail.com>
Thu, 28 Nov 2024 08:33:58 +0000 (09:33 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 19:03:05 +0000 (20:03 +0100)
[ Upstream commit 7a0ea70da56ee8c2716d0b79e9959d3c47efab62 ]

Commit 43645ce03e00 ("qed: Populate nvm image attribute shadow.")
added support for populating flash image attributes, notably
"num_images". However, some cards were not able to return this
information. In such cases, the driver would return EINVAL, causing the
driver to exit.

Add check to return EOPNOTSUPP instead of EINVAL when the card is not
able to return these information. The caller function already handles
EOPNOTSUPP without error.

Fixes: 43645ce03e00 ("qed: Populate nvm image attribute shadow.")
Co-developed-by: Florian Forestier <florian@forestier.re>
Signed-off-by: Florian Forestier <florian@forestier.re>
Signed-off-by: Louis Leseur <louis.leseur@gmail.com>
Link: https://patch.msgid.link/20241128083633.26431-1-louis.leseur@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/qlogic/qed/qed_mcp.c

index 16e6bd4661433f9b6d4c216eed055605df4bfe3c..6218d9c2685546facb87521fc048be757b4f4599 100644 (file)
@@ -3314,7 +3314,9 @@ int qed_mcp_bist_nvm_get_num_images(struct qed_hwfn *p_hwfn,
        if (rc)
                return rc;
 
-       if (((rsp & FW_MSG_CODE_MASK) != FW_MSG_CODE_OK))
+       if (((rsp & FW_MSG_CODE_MASK) == FW_MSG_CODE_UNSUPPORTED))
+               rc = -EOPNOTSUPP;
+       else if (((rsp & FW_MSG_CODE_MASK) != FW_MSG_CODE_OK))
                rc = -EINVAL;
 
        return rc;