soc: mediatek: mutex: Simplify with devm_platform_get_and_ioremap_resource()
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 23 Jun 2022 12:17:01 +0000 (14:17 +0200)
committerMatthias Brugger <matthias.bgg@gmail.com>
Fri, 8 Jul 2022 08:29:17 +0000 (10:29 +0200)
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.

While at it, also remove a redundant call to of_address_to_resource(),
as this was getting the address of the same resource index 0: we can
as well get the iostart from the 'regs' pointer.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220623121701.107512-1-angelogioacchino.delregno@collabora.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
drivers/soc/mediatek/mtk-mutex.c

index 2fd8318..5ea43de 100644 (file)
@@ -750,7 +750,7 @@ static int mtk_mutex_probe(struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
        struct mtk_mutex_ctx *mtx;
-       struct resource *regs, addr;
+       struct resource *regs;
        int i;
 #if IS_REACHABLE(CONFIG_MTK_CMDQ)
        int ret;
@@ -774,11 +774,12 @@ static int mtk_mutex_probe(struct platform_device *pdev)
                }
        }
 
-       if (of_address_to_resource(dev->of_node, 0, &addr) < 0) {
-               dev_err(dev, "Failed to get addr\n");
-               return -EINVAL;
+       mtx->regs = devm_platform_get_and_ioremap_resource(pdev, 0, &regs);
+       if (IS_ERR(mtx->regs)) {
+               dev_err(dev, "Failed to map mutex registers\n");
+               return PTR_ERR(mtx->regs);
        }
-       mtx->addr = addr.start;
+       mtx->addr = regs->start;
 
 #if IS_REACHABLE(CONFIG_MTK_CMDQ)
        ret = cmdq_dev_get_client_reg(dev, &mtx->cmdq_reg, 0);
@@ -786,13 +787,6 @@ static int mtk_mutex_probe(struct platform_device *pdev)
                dev_dbg(dev, "No mediatek,gce-client-reg!\n");
 #endif
 
-       regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       mtx->regs = devm_ioremap_resource(dev, regs);
-       if (IS_ERR(mtx->regs)) {
-               dev_err(dev, "Failed to map mutex registers\n");
-               return PTR_ERR(mtx->regs);
-       }
-
        platform_set_drvdata(pdev, mtx);
 
        return 0;