hwmon: (jz4740) Use devm_ioremap_resource()

Use devm_ioremap_resource() in order to make the code simpler,
and move 'struct resource *mem' from 'struct jz4740_hwmon' to
jz4740_hwmon_probe() because the 'mem' variable is used only in
jz4740_hwmon_probe(). Also the redundant return value check of
platform_get_resource() is removed, because the value is checked
by devm_ioremap_resource().

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
Jingoo Han 2014-02-11 21:10:50 +09:00 committed by Guenter Roeck
parent 6700ce035f
commit 939a0a3fe9

View file

@ -28,7 +28,6 @@
#include <linux/hwmon.h> #include <linux/hwmon.h>
struct jz4740_hwmon { struct jz4740_hwmon {
struct resource *mem;
void __iomem *base; void __iomem *base;
int irq; int irq;
@ -106,6 +105,7 @@ static int jz4740_hwmon_probe(struct platform_device *pdev)
{ {
int ret; int ret;
struct jz4740_hwmon *hwmon; struct jz4740_hwmon *hwmon;
struct resource *mem;
hwmon = devm_kzalloc(&pdev->dev, sizeof(*hwmon), GFP_KERNEL); hwmon = devm_kzalloc(&pdev->dev, sizeof(*hwmon), GFP_KERNEL);
if (!hwmon) if (!hwmon)
@ -120,25 +120,10 @@ static int jz4740_hwmon_probe(struct platform_device *pdev)
return hwmon->irq; return hwmon->irq;
} }
hwmon->mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!hwmon->mem) { hwmon->base = devm_ioremap_resource(&pdev->dev, mem);
dev_err(&pdev->dev, "Failed to get platform mmio resource\n"); if (IS_ERR(hwmon->base))
return -ENOENT; return PTR_ERR(hwmon->base);
}
hwmon->mem = devm_request_mem_region(&pdev->dev, hwmon->mem->start,
resource_size(hwmon->mem), pdev->name);
if (!hwmon->mem) {
dev_err(&pdev->dev, "Failed to request mmio memory region\n");
return -EBUSY;
}
hwmon->base = devm_ioremap_nocache(&pdev->dev, hwmon->mem->start,
resource_size(hwmon->mem));
if (!hwmon->base) {
dev_err(&pdev->dev, "Failed to ioremap mmio memory\n");
return -EBUSY;
}
init_completion(&hwmon->read_completion); init_completion(&hwmon->read_completion);
mutex_init(&hwmon->lock); mutex_init(&hwmon->lock);