net: axienet: fix a signedness bug in probe
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 25 Sep 2019 10:59:11 +0000 (13:59 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 27 Jan 2020 13:51:15 +0000 (14:51 +0100)
[ Upstream commit 73e211e11be86715d66bd3c9d38b3c34b05fca9a ]

The "lp->phy_mode" is an enum but in this context GCC treats it as an
unsigned int so the error handling is never triggered.

Fixes: ee06b1728b95 ("net: axienet: add support for standard phy-mode binding")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/xilinx/xilinx_axienet_main.c

index 2876426..b093f14 100644 (file)
@@ -1573,7 +1573,7 @@ static int axienet_probe(struct platform_device *pdev)
                }
        } else {
                lp->phy_mode = of_get_phy_mode(pdev->dev.of_node);
-               if (lp->phy_mode < 0) {
+               if ((int)lp->phy_mode < 0) {
                        ret = -EINVAL;
                        goto free_netdev;
                }