aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/touchscreen/atmel_tsadcc.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2009-07-08 01:04:55 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2009-07-08 01:48:14 -0400
commit72398e4b1a4cf55d3698a4f265b638093a470b04 (patch)
tree497fd88ccf5d3984b9585f52139e2e3b35bf8798 /drivers/input/touchscreen/atmel_tsadcc.c
parent666cbe342622c959ad95515918a1c1f8210c93f2 (diff)
Input: use resource_size when allocating resources
Use the function resource_size, which reduces the chance of introducing off-by-one errors in calculating the resource size. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ struct resource *res; @@ - (res->end - res->start) + 1 + resource_size(res) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/touchscreen/atmel_tsadcc.c')
-rw-r--r--drivers/input/touchscreen/atmel_tsadcc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/input/touchscreen/atmel_tsadcc.c b/drivers/input/touchscreen/atmel_tsadcc.c
index 055969e8be13..9c7fce4d74d0 100644
--- a/drivers/input/touchscreen/atmel_tsadcc.c
+++ b/drivers/input/touchscreen/atmel_tsadcc.c
@@ -204,14 +204,14 @@ static int __devinit atmel_tsadcc_probe(struct platform_device *pdev)
204 goto err_free_dev; 204 goto err_free_dev;
205 } 205 }
206 206
207 if (!request_mem_region(res->start, res->end - res->start + 1, 207 if (!request_mem_region(res->start, resource_size(res),
208 "atmel tsadcc regs")) { 208 "atmel tsadcc regs")) {
209 dev_err(&pdev->dev, "resources is unavailable.\n"); 209 dev_err(&pdev->dev, "resources is unavailable.\n");
210 err = -EBUSY; 210 err = -EBUSY;
211 goto err_free_dev; 211 goto err_free_dev;
212 } 212 }
213 213
214 tsc_base = ioremap(res->start, res->end - res->start + 1); 214 tsc_base = ioremap(res->start, resource_size(res));
215 if (!tsc_base) { 215 if (!tsc_base) {
216 dev_err(&pdev->dev, "failed to map registers.\n"); 216 dev_err(&pdev->dev, "failed to map registers.\n");
217 err = -ENOMEM; 217 err = -ENOMEM;
@@ -286,7 +286,7 @@ err_free_irq:
286err_unmap_regs: 286err_unmap_regs:
287 iounmap(tsc_base); 287 iounmap(tsc_base);
288err_release_mem: 288err_release_mem:
289 release_mem_region(res->start, res->end - res->start + 1); 289 release_mem_region(res->start, resource_size(res));
290err_free_dev: 290err_free_dev:
291 input_free_device(ts_dev->input); 291 input_free_device(ts_dev->input);
292err_free_mem: 292err_free_mem:
@@ -305,7 +305,7 @@ static int __devexit atmel_tsadcc_remove(struct platform_device *pdev)
305 305
306 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 306 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
307 iounmap(tsc_base); 307 iounmap(tsc_base);
308 release_mem_region(res->start, res->end - res->start + 1); 308 release_mem_region(res->start, resource_size(res));
309 309
310 clk_disable(ts_dev->clk); 310 clk_disable(ts_dev->clk);
311 clk_put(ts_dev->clk); 311 clk_put(ts_dev->clk);