summaryrefslogtreecommitdiff
path: root/drivers/ata
diff options
context:
space:
mode:
authorRosen Penev <rosenp@gmail.com>2026-05-12 13:22:55 -0700
committerNiklas Cassel <cassel@kernel.org>2026-06-01 19:07:37 +0200
commitfa0f6679c73553d3e457884759ae4c6f220a71de (patch)
tree764153a320c8c934dc1e08e2881af2b8f31bc08b /drivers/ata
parent28afe01eb75cf8e858b9eecebb0e2e7ee0ceb236 (diff)
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>
Diffstat (limited to 'drivers/ata')
-rw-r--r--drivers/ata/pata_arasan_cf.c24
1 files changed, 6 insertions, 18 deletions
diff --git a/drivers/ata/pata_arasan_cf.c b/drivers/ata/pata_arasan_cf.c
index b1e281b64f57..a77fefd320c2 100644
--- a/drivers/ata/pata_arasan_cf.c
+++ b/drivers/ata/pata_arasan_cf.c
@@ -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)) {