mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-04-15 23:37:56 +07:00
i2c: Use resource_size
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: Ben Dooks <ben-linux@fluff.org>
This commit is contained in:
parent
7605fa3b0a
commit
593308259b
@ -515,7 +515,7 @@ static int davinci_i2c_probe(struct platform_device *pdev)
|
|||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
|
|
||||||
ioarea = request_mem_region(mem->start, (mem->end - mem->start) + 1,
|
ioarea = request_mem_region(mem->start, resource_size(mem),
|
||||||
pdev->name);
|
pdev->name);
|
||||||
if (!ioarea) {
|
if (!ioarea) {
|
||||||
dev_err(&pdev->dev, "I2C region already claimed\n");
|
dev_err(&pdev->dev, "I2C region already claimed\n");
|
||||||
@ -578,7 +578,7 @@ static int davinci_i2c_probe(struct platform_device *pdev)
|
|||||||
put_device(&pdev->dev);
|
put_device(&pdev->dev);
|
||||||
kfree(dev);
|
kfree(dev);
|
||||||
err_release_region:
|
err_release_region:
|
||||||
release_mem_region(mem->start, (mem->end - mem->start) + 1);
|
release_mem_region(mem->start, resource_size(mem));
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
@ -601,7 +601,7 @@ static int davinci_i2c_remove(struct platform_device *pdev)
|
|||||||
kfree(dev);
|
kfree(dev);
|
||||||
|
|
||||||
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||||
release_mem_region(mem->start, (mem->end - mem->start) + 1);
|
release_mem_region(mem->start, resource_size(mem));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -806,7 +806,7 @@ omap_i2c_probe(struct platform_device *pdev)
|
|||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
|
|
||||||
ioarea = request_mem_region(mem->start, (mem->end - mem->start) + 1,
|
ioarea = request_mem_region(mem->start, resource_size(mem),
|
||||||
pdev->name);
|
pdev->name);
|
||||||
if (!ioarea) {
|
if (!ioarea) {
|
||||||
dev_err(&pdev->dev, "I2C region already claimed\n");
|
dev_err(&pdev->dev, "I2C region already claimed\n");
|
||||||
@ -905,7 +905,7 @@ omap_i2c_probe(struct platform_device *pdev)
|
|||||||
platform_set_drvdata(pdev, NULL);
|
platform_set_drvdata(pdev, NULL);
|
||||||
kfree(dev);
|
kfree(dev);
|
||||||
err_release_region:
|
err_release_region:
|
||||||
release_mem_region(mem->start, (mem->end - mem->start) + 1);
|
release_mem_region(mem->start, resource_size(mem));
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
@ -925,7 +925,7 @@ omap_i2c_remove(struct platform_device *pdev)
|
|||||||
iounmap(dev->base);
|
iounmap(dev->base);
|
||||||
kfree(dev);
|
kfree(dev);
|
||||||
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||||
release_mem_region(mem->start, (mem->end - mem->start) + 1);
|
release_mem_region(mem->start, resource_size(mem));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -563,7 +563,7 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
|
|||||||
goto err_irq;
|
goto err_irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
size = (res->end - res->start) + 1;
|
size = resource_size(res);
|
||||||
|
|
||||||
pd->reg = ioremap(res->start, size);
|
pd->reg = ioremap(res->start, size);
|
||||||
if (pd->reg == NULL) {
|
if (pd->reg == NULL) {
|
||||||
|
@ -92,7 +92,7 @@ static int simtec_i2c_probe(struct platform_device *dev)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
size = (res->end-res->start)+1;
|
size = resource_size(res);
|
||||||
|
|
||||||
pd->ioarea = request_mem_region(res->start, size, dev->name);
|
pd->ioarea = request_mem_region(res->start, size, dev->name);
|
||||||
if (pd->ioarea == NULL) {
|
if (pd->ioarea == NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user