summaryrefslogtreecommitdiffstats
path: root/drivers/net/gianfar.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2014-07-31 09:02:47 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2014-09-16 08:32:10 +0200
commit29b7f95f3bd244a4b4d036e1b3a94a7bfbe3581c (patch)
tree282c0036b7127af4ecb76e6fb214de8a2077bcfb /drivers/net/gianfar.c
parent9d518ba397712add7fa06ff3ab056a26a3c46de6 (diff)
downloadbarebox-29b7f95f3bd244a4b4d036e1b3a94a7bfbe3581c.tar.gz
barebox-29b7f95f3bd244a4b4d036e1b3a94a7bfbe3581c.tar.xz
resource: Let dev_get_mem_region return an error pointer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Diffstat (limited to 'drivers/net/gianfar.c')
-rw-r--r--drivers/net/gianfar.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/net/gianfar.c b/drivers/net/gianfar.c
index a308035ff2..5e47c64e0f 100644
--- a/drivers/net/gianfar.c
+++ b/drivers/net/gianfar.c
@@ -21,6 +21,7 @@
#include <errno.h>
#include <asm/io.h>
#include <linux/phy.h>
+#include <linux/err.h>
#include "gianfar.h"
/* 2 seems to be the minimum number of TX descriptors to make it work. */
@@ -489,6 +490,8 @@ static int gfar_probe(struct device_d *dev)
priv->mdiobus_tbi = gfar_info->mdiobus_tbi;
priv->regs = dev_get_mem_region(dev, 0);
+ if (IS_ERR(priv->regs))
+ return PTR_ERR(priv->regs);
priv->phyaddr = gfar_info->phyaddr;
priv->tbicr = gfar_info->tbicr;
priv->tbiana = gfar_info->tbiana;
@@ -553,8 +556,8 @@ static int gfar_phy_probe(struct device_d *dev)
phy = xzalloc(sizeof(*phy));
phy->dev = dev;
phy->regs = dev_get_mem_region(dev, 0);
- if (!phy->regs)
- return -ENOMEM;
+ if (IS_ERR(phy->regs))
+ return PTR_ERR(phy->regs);
phy->miibus.read = gfar_miiphy_read;
phy->miibus.write = gfar_miiphy_write;
@@ -584,8 +587,8 @@ static int gfar_tbiphy_probe(struct device_d *dev)
phy = xzalloc(sizeof(*phy));
phy->dev = dev;
phy->regs = dev_get_mem_region(dev, 0);
- if (!phy->regs)
- return -ENOMEM;
+ if (IS_ERR(phy->regs))
+ return PTR_ERR(phy->regs);
phy->miibus.read = gfar_miiphy_read;
phy->miibus.write = gfar_miiphy_write;