net: dwmac-sun8i: fix a missing check of of_get_phy_mode
authorKangjie Lu <kjlu@umn.edu>
Tue, 12 Mar 2019 07:50:40 +0000 (02:50 -0500)
committerDavid S. Miller <davem@davemloft.net>
Tue, 12 Mar 2019 21:52:00 +0000 (14:52 -0700)
of_get_phy_mode may fail and return a negative error code;
the fix checks the return value of of_get_phy_mode and
returns -EINVAL of it fails.

Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c

index 0f660af01a4b86cd1066e35873e2c75e074d806f..195669f550f02e7f81cdc5dc6b807d8cbf0a8435 100644 (file)
@@ -1147,7 +1147,10 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
                return ret;
        }
 
-       plat_dat->interface = of_get_phy_mode(dev->of_node);
+       ret = of_get_phy_mode(dev->of_node);
+       if (ret < 0)
+               return -EINVAL;
+       plat_dat->interface = ret;
 
        /* platform data specifying hardware features and callbacks.
         * hardware features were copied from Allwinner drivers.