Commit 25fd0bfd authored by Mark Brown's avatar Mark Brown

ASoC: samsung-ac97: Convert to devm_ioremap_resource()

Reviewed-by: default avatarJingoo Han <jg1.han@samsung.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 5d45ee3c
...@@ -417,11 +417,9 @@ static int s3c_ac97_probe(struct platform_device *pdev) ...@@ -417,11 +417,9 @@ static int s3c_ac97_probe(struct platform_device *pdev)
return -ENXIO; return -ENXIO;
} }
if (!request_mem_region(mem_res->start, s3c_ac97.regs = devm_ioremap_resource(&pdev->dev, mem_res);
resource_size(mem_res), "ac97")) { if (IS_ERR(s3c_ac97.regs))
dev_err(&pdev->dev, "Unable to request register region\n"); return PTR_ERR(s3c_ac97.regs);
return -EBUSY;
}
s3c_ac97_pcm_out.channel = dmatx_res->start; s3c_ac97_pcm_out.channel = dmatx_res->start;
s3c_ac97_pcm_out.dma_addr = mem_res->start + S3C_AC97_PCM_DATA; s3c_ac97_pcm_out.dma_addr = mem_res->start + S3C_AC97_PCM_DATA;
...@@ -433,13 +431,6 @@ static int s3c_ac97_probe(struct platform_device *pdev) ...@@ -433,13 +431,6 @@ static int s3c_ac97_probe(struct platform_device *pdev)
init_completion(&s3c_ac97.done); init_completion(&s3c_ac97.done);
mutex_init(&s3c_ac97.lock); mutex_init(&s3c_ac97.lock);
s3c_ac97.regs = ioremap(mem_res->start, resource_size(mem_res));
if (s3c_ac97.regs == NULL) {
dev_err(&pdev->dev, "Unable to ioremap register region\n");
ret = -ENXIO;
goto err1;
}
s3c_ac97.ac97_clk = devm_clk_get(&pdev->dev, "ac97"); s3c_ac97.ac97_clk = devm_clk_get(&pdev->dev, "ac97");
if (IS_ERR(s3c_ac97.ac97_clk)) { if (IS_ERR(s3c_ac97.ac97_clk)) {
dev_err(&pdev->dev, "ac97 failed to get ac97_clock\n"); dev_err(&pdev->dev, "ac97 failed to get ac97_clock\n");
...@@ -481,16 +472,13 @@ static int s3c_ac97_probe(struct platform_device *pdev) ...@@ -481,16 +472,13 @@ static int s3c_ac97_probe(struct platform_device *pdev)
err3: err3:
clk_disable_unprepare(s3c_ac97.ac97_clk); clk_disable_unprepare(s3c_ac97.ac97_clk);
err2: err2:
iounmap(s3c_ac97.regs);
err1:
release_mem_region(mem_res->start, resource_size(mem_res));
return ret; return ret;
} }
static int s3c_ac97_remove(struct platform_device *pdev) static int s3c_ac97_remove(struct platform_device *pdev)
{ {
struct resource *mem_res, *irq_res; struct resource *irq_res;
asoc_dma_platform_unregister(&pdev->dev); asoc_dma_platform_unregister(&pdev->dev);
snd_soc_unregister_component(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
...@@ -501,12 +489,6 @@ static int s3c_ac97_remove(struct platform_device *pdev) ...@@ -501,12 +489,6 @@ static int s3c_ac97_remove(struct platform_device *pdev)
clk_disable_unprepare(s3c_ac97.ac97_clk); clk_disable_unprepare(s3c_ac97.ac97_clk);
iounmap(s3c_ac97.regs);
mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (mem_res)
release_mem_region(mem_res->start, resource_size(mem_res));
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment