aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-spear-spics.c
diff options
context:
space:
mode:
authorJulia Lawall <Julia.Lawall@lip6.fr>2013-08-14 05:11:07 -0400
committerLinus Walleij <linus.walleij@linaro.org>2013-08-16 11:16:31 -0400
commit08a67a58af3c361ae3e8d6fcf23a1489213309a9 (patch)
tree136b76ddd11fc9d42d0424600ee9a3884209213e /drivers/gpio/gpio-spear-spics.c
parent388f4308412574268d38010d877575f8caebad79 (diff)
drivers/gpio: simplify use of devm_ioremap_resource
Remove unneeded error handling on the result of a call to platform_get_resource when the value is passed to devm_ioremap_resource. Move the call to platform_get_resource adjacent to the call to devm_ioremap_resource to make the connection between them more clear. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression pdev,res,n,e,e1; expression ret != 0; identifier l; @@ - res = platform_get_resource(pdev, IORESOURCE_MEM, n); ... when != res - if (res == NULL) { ... \(goto l;\|return ret;\) } ... when != res + res = platform_get_resource(pdev, IORESOURCE_MEM, n); e = devm_ioremap_resource(e1, res); // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-spear-spics.c')
-rw-r--r--drivers/gpio/gpio-spear-spics.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/gpio/gpio-spear-spics.c b/drivers/gpio/gpio-spear-spics.c
index 7a4bf7c0d98f..e9a0415834ea 100644
--- a/drivers/gpio/gpio-spear-spics.c
+++ b/drivers/gpio/gpio-spear-spics.c
@@ -128,18 +128,13 @@ static int spics_gpio_probe(struct platform_device *pdev)
128 struct resource *res; 128 struct resource *res;
129 int ret; 129 int ret;
130 130
131 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
132 if (!res) {
133 dev_err(&pdev->dev, "invalid IORESOURCE_MEM\n");
134 return -EBUSY;
135 }
136
137 spics = devm_kzalloc(&pdev->dev, sizeof(*spics), GFP_KERNEL); 131 spics = devm_kzalloc(&pdev->dev, sizeof(*spics), GFP_KERNEL);
138 if (!spics) { 132 if (!spics) {
139 dev_err(&pdev->dev, "memory allocation fail\n"); 133 dev_err(&pdev->dev, "memory allocation fail\n");
140 return -ENOMEM; 134 return -ENOMEM;
141 } 135 }
142 136
137 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
143 spics->base = devm_ioremap_resource(&pdev->dev, res); 138 spics->base = devm_ioremap_resource(&pdev->dev, res);
144 if (IS_ERR(spics->base)) 139 if (IS_ERR(spics->base))
145 return PTR_ERR(spics->base); 140 return PTR_ERR(spics->base);