of: mdio: Fix a signedness bug in of_phy_get_and_connect()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 25 Sep 2019 11:01:00 +0000 (14:01 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 27 Jan 2020 13:46:48 +0000 (14:46 +0100)
[ Upstream commit d7eb651212fdbafa82d485d8e76095ac3b14c193 ]

The "iface" variable is an enum and in this context GCC treats it as
an unsigned int so the error handling is never triggered.

Fixes: b78624125304 ("of_mdio: Abstract a general interface for phy connect")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/of/of_mdio.c

index 8c1819230ed2377d6726d33265c1a9b44b7cbf1e..fe26697d3bd724d048df132d95ab74797fc0f100 100644 (file)
@@ -358,7 +358,7 @@ struct phy_device *of_phy_get_and_connect(struct net_device *dev,
        struct phy_device *phy;
 
        iface = of_get_phy_mode(np);
-       if (iface < 0)
+       if ((int)iface < 0)
                return NULL;
 
        phy_np = of_parse_phandle(np, "phy-handle", 0);