diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2016-02-19 09:18:43 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-02-23 08:14:16 +0100 |
commit | 8ee5479a28df0a3f3019419e46e9ee5c119a27bd (patch) | |
tree | ed1fb39fb0a39e89525581a1feeeede937556bb5 /drivers/gpio | |
parent | f1f8f5556ab94f4f8bedb97ad0199b2e63958c8b (diff) | |
download | barebox-8ee5479a28df0a3f3019419e46e9ee5c119a27bd.tar.gz barebox-8ee5479a28df0a3f3019419e46e9ee5c119a27bd.tar.xz |
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:
// <smpl>
@@
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))
{
...
}
// </smpl>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Diffstat (limited to 'drivers/gpio')
-rw-r--r-- | drivers/gpio/gpio-orion.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpio/gpio-orion.c b/drivers/gpio/gpio-orion.c index 3deeac126f..5348395d58 100644 --- a/drivers/gpio/gpio-orion.c +++ b/drivers/gpio/gpio-orion.c @@ -97,9 +97,9 @@ static int orion_gpio_probe(struct device_d *dev) gpio = xzalloc(sizeof(*gpio)); gpio->regs = dev_request_mem_region(dev, 0); - if (!gpio->regs) { + if (IS_ERR(gpio->regs)) { free(gpio); - return -EINVAL; + return PTR_ERR(gpio->regs); } gpio->chip.dev = dev; gpio->chip.ops = &orion_gpio_ops; |