Re: [PATCH] iommu/ipmmu-vmsa: use devm_platform_get_and_ioremap_resource()

From: Robin Murphy
Date: Wed Feb 08 2023 - 04:48:30 EST


On 2023-02-08 08:05, ye.xingchen@xxxxxxxxxx wrote:
From: Ye Xingchen <ye.xingchen@xxxxxxxxxx>

Convert platform_get_resource(), devm_ioremap_resource() to a single
call to devm_platform_get_and_ioremap_resource(), as this is exactly
what this function does.

Not exactly - it also returns the resource data to the caller, which is not needed here. Please use the regular devm_platform_ioremap_resource() in such cases - it's silly to call the overcomplicated function that does two things when you only ever need one of the things.

Thanks,
Robin.

Signed-off-by: Ye Xingchen <ye.xingchen@xxxxxxxxxx>
---
drivers/iommu/ipmmu-vmsa.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c
index bdf1a4e5eae0..aca7ca8b5543 100644
--- a/drivers/iommu/ipmmu-vmsa.c
+++ b/drivers/iommu/ipmmu-vmsa.c
@@ -967,7 +967,6 @@ static const struct of_device_id ipmmu_of_ids[] = {
static int ipmmu_probe(struct platform_device *pdev)
{
struct ipmmu_vmsa_device *mmu;
- struct resource *res;
int irq;
int ret;

@@ -987,8 +986,7 @@ static int ipmmu_probe(struct platform_device *pdev)
return ret;

/* Map I/O memory and request IRQ. */
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- mmu->base = devm_ioremap_resource(&pdev->dev, res);
+ mmu->base = devm_platform_get_and_ioremap_resource(pdev, 0, NULL);
if (IS_ERR(mmu->base))
return PTR_ERR(mmu->base);