diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2014-07-31 10:38:08 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2014-09-16 08:32:10 +0200 |
commit | ed6e965824303255cacc1c1a195d3684caa26bce (patch) | |
tree | 26e2b1b78498675ceae4dd2e990836c26ec1d5ec /drivers/i2c | |
parent | 5bdc82c54a3306f2ae151a00f2df54f9240395b8 (diff) | |
download | barebox-ed6e965824303255cacc1c1a195d3684caa26bce.tar.gz barebox-ed6e965824303255cacc1c1a195d3684caa26bce.tar.xz |
resource: Let dev_request_mem_region return an error pointer
For all users fix or add the error check.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-imx.c | 3 | ||||
-rw-r--r-- | drivers/i2c/busses/i2c-omap.c | 2 | ||||
-rw-r--r-- | drivers/i2c/busses/i2c-versatile.c | 5 |
3 files changed, 8 insertions, 2 deletions
diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c index 6b390478fa..714e83c4b9 100644 --- a/drivers/i2c/busses/i2c-imx.c +++ b/drivers/i2c/busses/i2c-imx.c @@ -548,6 +548,9 @@ static int __init i2c_fsl_probe(struct device_d *pdev) i2c_fsl->adapter.dev.parent = pdev; i2c_fsl->adapter.dev.device_node = pdev->device_node; i2c_fsl->base = dev_request_mem_region(pdev, 0); + if (IS_ERR(i2c_fsl->base)) + return PTR_ERR(i2c_fsl->base); + i2c_fsl->dfsrr = -1; /* Set up clock divider */ diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index adc952b043..0d714cc940 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c @@ -1023,6 +1023,8 @@ i2c_omap_probe(struct device_d *pdev) i2c_omap->speed = speed; i2c_omap->base = dev_request_mem_region(pdev, 0); + if (IS_ERR(i2c_omap->base)) + return PTR_ERR(i2c_omap->base); /* * Read the Rev hi bit-[15:14] ie scheme this is 1 indicates ver2. diff --git a/drivers/i2c/busses/i2c-versatile.c b/drivers/i2c/busses/i2c-versatile.c index 4fead61513..bfabc78312 100644 --- a/drivers/i2c/busses/i2c-versatile.c +++ b/drivers/i2c/busses/i2c-versatile.c @@ -15,6 +15,7 @@ #include <init.h> #include <malloc.h> #include <io.h> +#include <linux/err.h> #define I2C_CONTROL 0x00 #define I2C_CONTROLS 0x00 @@ -75,8 +76,8 @@ static int i2c_versatile_probe(struct device_d *dev) } i2c->base = dev_request_mem_region(dev, 0); - if (!i2c->base) { - ret = -ENOMEM; + if (IS_ERR(i2c->base)) { + ret = PTR_ERR(i2c->base); goto err_free; } |