mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-22 02:17:36 -04:00
ata: pata_arasan_cf: simplify ioremap
Use devm_platform_get_and_ioremap_resource() to combine platform_get_resource, request_mem_region, and ioremap. Signed-off-by: Rosen Penev <rosenp@gmail.com> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Signed-off-by: Niklas Cassel <cassel@kernel.org>
This commit is contained in:
committed by
Niklas Cassel
parent
28afe01eb7
commit
fa0f6679c7
@@ -803,16 +803,6 @@ static int arasan_cf_probe(struct platform_device *pdev)
|
||||
irq_handler_t irq_handler = NULL;
|
||||
int ret;
|
||||
|
||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||
if (!res)
|
||||
return -EINVAL;
|
||||
|
||||
if (!devm_request_mem_region(&pdev->dev, res->start, resource_size(res),
|
||||
DRIVER_NAME)) {
|
||||
dev_warn(&pdev->dev, "Failed to get memory region resource\n");
|
||||
return -ENOENT;
|
||||
}
|
||||
|
||||
acdev = devm_kzalloc(&pdev->dev, sizeof(*acdev), GFP_KERNEL);
|
||||
if (!acdev)
|
||||
return -ENOMEM;
|
||||
@@ -827,22 +817,20 @@ static int arasan_cf_probe(struct platform_device *pdev)
|
||||
* support only PIO
|
||||
*/
|
||||
ret = platform_get_irq(pdev, 0);
|
||||
if (ret == -EPROBE_DEFER)
|
||||
return ret;
|
||||
if (ret > 0) {
|
||||
acdev->irq = ret;
|
||||
irq_handler = arasan_cf_interrupt;
|
||||
} else if (ret == -EPROBE_DEFER) {
|
||||
return ret;
|
||||
} else {
|
||||
quirk |= CF_BROKEN_MWDMA | CF_BROKEN_UDMA;
|
||||
}
|
||||
|
||||
acdev->vbase = devm_platform_get_and_ioremap_resource(pdev, 0, &res);
|
||||
if (IS_ERR(acdev->vbase))
|
||||
return PTR_ERR(acdev->vbase);
|
||||
|
||||
acdev->pbase = res->start;
|
||||
acdev->vbase = devm_ioremap(&pdev->dev, res->start,
|
||||
resource_size(res));
|
||||
if (!acdev->vbase) {
|
||||
dev_warn(&pdev->dev, "ioremap fail\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
acdev->clk = devm_clk_get(&pdev->dev, NULL);
|
||||
if (IS_ERR(acdev->clk)) {
|
||||
|
||||
Reference in New Issue
Block a user