]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: Fix static checker warnings
authorVenkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Thu, 29 Sep 2022 04:56:05 +0000 (10:26 +0530)
committerMichal Simek <michal.simek@amd.com>
Wed, 5 Oct 2022 09:36:54 +0000 (11:36 +0200)
Here are the smatch warning messages:

drivers/net/xilinx_axi_emac.c:324 axiemac_phy_init()
error: 'phydev' dereferencing possible ERR_PTR()

drivers/net/zynq_gem.c:340 zynq_phy_init()
error: 'priv->phydev' dereferencing possible ERR_PTR()

Fix by adding error checking before dereferencing the pointer.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20220929045605.23964-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
drivers/net/xilinx_axi_emac.c
drivers/net/zynq_gem.c

index d48e342ea08eeac10ddf9f410be7887057906f23..5f5bc650bef3de6101a5c56193f59d668acdb7cc 100644 (file)
@@ -11,6 +11,7 @@
 #include <cpu_func.h>
 #include <display_options.h>
 #include <dm.h>
+#include <dm/device_compat.h>
 #include <log.h>
 #include <net.h>
 #include <malloc.h>
@@ -317,6 +318,10 @@ static int axiemac_phy_init(struct udevice *dev)
 
        /* Interface - look at tsec */
        phydev = phy_connect(priv->bus, priv->phyaddr, dev, priv->interface);
+       if (IS_ERR_OR_NULL(phydev)) {
+               dev_err(dev, "phy_connect() failed\n");
+               return -ENODEV;
+       }
 
        phydev->supported &= supported;
        phydev->advertising = phydev->supported;
index 61a6c83e335dbc9e01b7f788d809b292b7e09f41..3f4357ec80b380754132d05648ed0026895d07f6 100644 (file)
@@ -328,7 +328,7 @@ static int zynq_phy_init(struct udevice *dev)
 
        priv->phydev = phy_connect(priv->bus, priv->phyaddr, dev,
                                   priv->interface);
-       if (!priv->phydev)
+       if (IS_ERR_OR_NULL(priv->phydev))
                return -ENODEV;
 
        if (priv->max_speed) {