summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mtd/nand')
-rw-r--r--drivers/mtd/nand/atmel_nand.c3
-rw-r--r--drivers/mtd/nand/nand_mxs.c5
-rw-r--r--drivers/mtd/nand/nand_orion.c4
3 files changed, 10 insertions, 2 deletions
diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c
index 1e7c6c6662..524606a407 100644
--- a/drivers/mtd/nand/atmel_nand.c
+++ b/drivers/mtd/nand/atmel_nand.c
@@ -34,6 +34,7 @@
#include <linux/mtd/mtd.h>
#include <linux/mtd/nand.h>
+#include <linux/err.h>
#include <io.h>
#include <mach/board.h>
@@ -1199,6 +1200,8 @@ static int __init atmel_nand_probe(struct device_d *dev)
return -ENOMEM;
host->io_base = dev_request_mem_region(dev, 0);
+ if (IS_ERR(host->io_base))
+ return PTR_ERR(host->io_base);
mtd = &host->mtd;
nand_chip = &host->nand_chip;
diff --git a/drivers/mtd/nand/nand_mxs.c b/drivers/mtd/nand/nand_mxs.c
index 5a4449d032..8989de0272 100644
--- a/drivers/mtd/nand/nand_mxs.c
+++ b/drivers/mtd/nand/nand_mxs.c
@@ -1254,7 +1254,12 @@ static int mxs_nand_probe(struct device_d *dev)
nand_info->type = type;
nand_info->io_base = dev_request_mem_region(dev, 0);
+ if (IS_ERR(nand_info->io_base))
+ return PTR_ERR(nand_info->io_base);
+
nand_info->bch_base = dev_request_mem_region(dev, 1);
+ if (IS_ERR(nand_info->bch_base))
+ return PTR_ERR(nand_info->bch_base);
nand_info->clk = clk_get(dev, NULL);
if (IS_ERR(nand_info->clk))
diff --git a/drivers/mtd/nand/nand_orion.c b/drivers/mtd/nand/nand_orion.c
index a1c77b32ce..2c9707d04f 100644
--- a/drivers/mtd/nand/nand_orion.c
+++ b/drivers/mtd/nand/nand_orion.c
@@ -94,8 +94,8 @@ static int orion_nand_probe(struct device_d *dev)
chip = &priv->chip;
io_base = dev_request_mem_region(dev, 0);
- if (!io_base)
- return -EBUSY;
+ if (IS_ERR(io_base))
+ return PTR_ERR(io_base);
if (!of_property_read_u32(dev_node, "cle", &val))
priv->cle = (u8)val;