2009-12-11 23:55:35

by Hartley Sweeten

[permalink] [raw]
Subject: [PATCH] sm501.c: use resource_size()

The requested memory region is smaller than the actual ioremap().
Use resource_size() to get the correct size.

Signed-off-by: H Hartley Sweeten <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Samuel Ortiz <[email protected]>

---

diff --git a/drivers/mfd/sm501.c b/drivers/mfd/sm501.c
index 0cc5eef..dc9ea95 100644
--- a/drivers/mfd/sm501.c
+++ b/drivers/mfd/sm501.c
@@ -1430,7 +1430,7 @@ static int __devinit sm501_plat_probe(struct platform_device *dev)
}

sm->regs_claim = request_mem_region(sm->io_res->start,
- 0x100, "sm501");
+ resource_size(sm->io_res), "sm501");

if (sm->regs_claim == NULL) {
dev_err(&dev->dev, "cannot claim registers\n");
@@ -1440,8 +1440,7 @@ static int __devinit sm501_plat_probe(struct platform_device *dev)

platform_set_drvdata(dev, sm);

- sm->regs = ioremap(sm->io_res->start,
- (sm->io_res->end - sm->io_res->start) - 1);
+ sm->regs = ioremap(sm->io_res->start, resource_size(sm->io_res));

if (sm->regs == NULL) {
dev_err(&dev->dev, "cannot remap registers\n");
@@ -1645,7 +1644,7 @@ static int __devinit sm501_pci_probe(struct pci_dev *dev,
sm->mem_res = &dev->resource[0];

sm->regs_claim = request_mem_region(sm->io_res->start,
- 0x100, "sm501");
+ resource_size(sm->io_res), "sm501");
if (sm->regs_claim == NULL) {
dev_err(&dev->dev, "cannot claim registers\n");
err= -EBUSY;


2010-01-05 19:01:10

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [PATCH] sm501.c: use resource_size()

On Fri, Dec 11, 2009 at 06:55:41PM -0500, H Hartley Sweeten wrote:
> The requested memory region is smaller than the actual ioremap().
> Use resource_size() to get the correct size.
Patch applied, thanks.


> Signed-off-by: H Hartley Sweeten <[email protected]>
> Cc: Ben Dooks <[email protected]>
> Cc: Samuel Ortiz <[email protected]>
>
> ---
>
> diff --git a/drivers/mfd/sm501.c b/drivers/mfd/sm501.c
> index 0cc5eef..dc9ea95 100644
> --- a/drivers/mfd/sm501.c
> +++ b/drivers/mfd/sm501.c
> @@ -1430,7 +1430,7 @@ static int __devinit sm501_plat_probe(struct platform_device *dev)
> }
>
> sm->regs_claim = request_mem_region(sm->io_res->start,
> - 0x100, "sm501");
> + resource_size(sm->io_res), "sm501");
>
> if (sm->regs_claim == NULL) {
> dev_err(&dev->dev, "cannot claim registers\n");
> @@ -1440,8 +1440,7 @@ static int __devinit sm501_plat_probe(struct platform_device *dev)
>
> platform_set_drvdata(dev, sm);
>
> - sm->regs = ioremap(sm->io_res->start,
> - (sm->io_res->end - sm->io_res->start) - 1);
> + sm->regs = ioremap(sm->io_res->start, resource_size(sm->io_res));
>
> if (sm->regs == NULL) {
> dev_err(&dev->dev, "cannot remap registers\n");
> @@ -1645,7 +1644,7 @@ static int __devinit sm501_pci_probe(struct pci_dev *dev,
> sm->mem_res = &dev->resource[0];
>
> sm->regs_claim = request_mem_region(sm->io_res->start,
> - 0x100, "sm501");
> + resource_size(sm->io_res), "sm501");
> if (sm->regs_claim == NULL) {
> dev_err(&dev->dev, "cannot claim registers\n");
> err= -EBUSY;

--
Intel Open Source Technology Centre
http://oss.intel.com/