From 8ee5479a28df0a3f3019419e46e9ee5c119a27bd Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Fri, 19 Feb 2016 09:18:43 +0100 Subject: driver: Fix return check of dev_request_mem_region dev_request_mem_region returns an ERR_PTR, fix places which check for a NULL pointer instead. This patch has been generated with this semantic patch, written by me and improved by Andrey Smirnov: // @@ expression e; expression e1; @@ e = dev_request_mem_region(...); ... -if (!e) - return e1; +if (IS_ERR(e)) + return PTR_ERR(e); @ rule1 @ expression e; @@ e = dev_request_mem_region(...); @@ expression rule1.e; identifier ret, label; constant errno; @@ if (!e) { ... ( - ret = -errno; + ret = PTR_ERR(e); ... goto label; | - return -errno; + return PTR_ERR(e); ) } @depends on rule1@ expression rule1.e; @@ - if (e == NULL) + if (IS_ERR(e)) { ... } // Signed-off-by: Sascha Hauer Signed-off-by: Andrey Smirnov --- drivers/mtd/devices/mtdram.c | 4 ++-- drivers/mtd/nand/atmel_nand.c | 10 +++++----- drivers/mtd/nand/nand_imx.c | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) (limited to 'drivers/mtd') diff --git a/drivers/mtd/devices/mtdram.c b/drivers/mtd/devices/mtdram.c index d1eaafdab5..fbcccd0398 100644 --- a/drivers/mtd/devices/mtdram.c +++ b/drivers/mtd/devices/mtdram.c @@ -71,8 +71,8 @@ static int mtdram_probe(struct device_d *dev) } base = dev_request_mem_region(dev, 0); - if (!base) { - ret = -EBUSY; + if (IS_ERR(base)) { + ret = PTR_ERR(base); goto nobase; } diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c index 4ddabda572..48d1783a96 100644 --- a/drivers/mtd/nand/atmel_nand.c +++ b/drivers/mtd/nand/atmel_nand.c @@ -873,20 +873,20 @@ static int __init atmel_pmecc_nand_init_params(struct device_d *dev, cap, sector_size); host->ecc = dev_request_mem_region(dev, 1); - if (host->ecc == NULL) { + if (IS_ERR(host->ecc)) { dev_err(host->dev, "ioremap failed\n"); return -EIO; } host->pmerrloc_base = dev_request_mem_region(dev, 2); - if (!host->pmerrloc_base) { + if (IS_ERR(host->pmerrloc_base)) { dev_err(host->dev, "Can not get I/O resource for PMECC ERRLOC controller!\n"); - return -EIO; + return PTR_ERR(host->pmerrloc_base); } host->pmecc_rom_base = dev_request_mem_region(dev, 3); - if (!host->pmecc_rom_base) { + if (IS_ERR(host->pmecc_rom_base)) { /* Set pmecc_rom_base as the begin of gf table */ int size = sector_size == 512 ? 0x2000 : 0x4000; pmecc_galois_table = xzalloc(2 * size * sizeof(uint16_t)); @@ -1249,7 +1249,7 @@ static int atmel_hw_nand_init_params(struct device_d *dev, struct nand_chip *nand_chip = &host->nand_chip; host->ecc = dev_request_mem_region(dev, 1); - if (host->ecc == NULL) { + if (IS_ERR(host->ecc)) { dev_err(host->dev, "ioremap failed\n"); return -EIO; } diff --git a/drivers/mtd/nand/nand_imx.c b/drivers/mtd/nand/nand_imx.c index 00c05d00af..6cabae06a9 100644 --- a/drivers/mtd/nand/nand_imx.c +++ b/drivers/mtd/nand/nand_imx.c @@ -1168,9 +1168,9 @@ static int __init imxnd_probe(struct device_d *dev) host->base = dev_request_mem_region(dev, 1); host->main_area0 = host->base; - if (!host->regs_ip) { + if (IS_ERR(host->regs_ip)) { dev_err(dev, "no second mem region\n"); - err = -ENODEV; + err = PTR_ERR(host->regs_ip); goto escan; } -- cgit v1.2.3