jz4740-battery: Use devm_request_and_ioremap

No functional changes. Just a cleanup.

Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
This commit is contained in:
Marcos Paulo de Souza 2012-11-06 21:11:12 -02:00 committed by Anton Vorontsov
parent ec073c9b31
commit 9790f98fdc
1 changed files with 6 additions and 27 deletions

View File

@ -33,7 +33,6 @@ struct jz_battery {
struct jz_battery_platform_data *pdata;
struct platform_device *pdev;
struct resource *mem;
void __iomem *base;
int irq;
@ -244,6 +243,7 @@ static int __devinit jz_battery_probe(struct platform_device *pdev)
struct jz_battery_platform_data *pdata = pdev->dev.parent->platform_data;
struct jz_battery *jz_battery;
struct power_supply *battery;
struct resource *mem;
if (!pdata) {
dev_err(&pdev->dev, "No platform_data supplied\n");
@ -264,26 +264,11 @@ static int __devinit jz_battery_probe(struct platform_device *pdev)
return jz_battery->irq;
}
jz_battery->mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!jz_battery->mem) {
dev_err(&pdev->dev, "Failed to get platform mmio resource\n");
return -ENOENT;
}
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
jz_battery->mem = request_mem_region(jz_battery->mem->start,
resource_size(jz_battery->mem), pdev->name);
if (!jz_battery->mem) {
dev_err(&pdev->dev, "Failed to request mmio memory region\n");
jz_battery->base = devm_request_and_ioremap(&pdev->dev, mem);
if (!jz_battery->base)
return -EBUSY;
}
jz_battery->base = ioremap_nocache(jz_battery->mem->start,
resource_size(jz_battery->mem));
if (!jz_battery->base) {
ret = -EBUSY;
dev_err(&pdev->dev, "Failed to ioremap mmio memory\n");
goto err_release_mem_region;
}
battery = &jz_battery->battery;
battery->name = pdata->info.name;
@ -306,7 +291,7 @@ static int __devinit jz_battery_probe(struct platform_device *pdev)
jz_battery);
if (ret) {
dev_err(&pdev->dev, "Failed to request irq %d\n", ret);
goto err_iounmap;
goto err;
}
disable_irq(jz_battery->irq);
@ -363,11 +348,8 @@ static int __devinit jz_battery_probe(struct platform_device *pdev)
gpio_free(jz_battery->pdata->gpio_charge);
err_free_irq:
free_irq(jz_battery->irq, jz_battery);
err_iounmap:
err:
platform_set_drvdata(pdev, NULL);
iounmap(jz_battery->base);
err_release_mem_region:
release_mem_region(jz_battery->mem->start, resource_size(jz_battery->mem));
return ret;
}
@ -387,9 +369,6 @@ static int __devexit jz_battery_remove(struct platform_device *pdev)
free_irq(jz_battery->irq, jz_battery);
iounmap(jz_battery->base);
release_mem_region(jz_battery->mem->start, resource_size(jz_battery->mem));
return 0;
}