Re: [PATCH] EDAC: Armada XP: Use devm_platform_ioremap_resource() in two functions

2019-09-23 Thread Robert Richter
Hi Markus,

On 21.09.19 17:57:24, Markus Elfring wrote:
> From: Markus Elfring 
> Date: Sat, 21 Sep 2019 17:50:17 +0200
> 
> Simplify these function implementations by using a known function.
> 
> This issue was detected by using the Coccinelle software.

Which semantic patch did you use here?

The kernel's spatch for this pattern only found and fixed the
following:

 $ make coccicheck 
COCCI=scripts/coccinelle/api/devm_platform_ioremap_resource.cocci MODE=patch 
M=drivers/edac | patch -p1
 patching file drivers/edac/ti_edac.c
 patching file drivers/edac/xgene_edac.c
 patching file drivers/edac/synopsys_edac.c

There are probably more drivers to fix than the above and the one you
fixed:

 $ git grep -l platform_get_resource drivers/edac/
 drivers/edac/altera_edac.c
 drivers/edac/armada_xp_edac.c
 drivers/edac/aspeed_edac.c
 drivers/edac/bluefield_edac.c
 drivers/edac/cpc925_edac.c
 drivers/edac/highbank_l2_edac.c
 drivers/edac/highbank_mc_edac.c
 drivers/edac/mv64x60_edac.c
 drivers/edac/synopsys_edac.c
 drivers/edac/ti_edac.c
 drivers/edac/xgene_edac.c

So while at it, how about fixing the .cocci patch in scripts/ and run
it for drivers/edac? There should be one patch only for all edac
drivers.

Thanks,

-Robert


[PATCH] EDAC: Armada XP: Use devm_platform_ioremap_resource() in two functions

2019-09-21 Thread Markus Elfring
From: Markus Elfring 
Date: Sat, 21 Sep 2019 17:50:17 +0200

Simplify these function implementations by using a known function.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring 
---
 drivers/edac/armada_xp_edac.c | 18 ++
 1 file changed, 2 insertions(+), 16 deletions(-)

diff --git a/drivers/edac/armada_xp_edac.c b/drivers/edac/armada_xp_edac.c
index 7f227bdcbc84..096d8de3893e 100644
--- a/drivers/edac/armada_xp_edac.c
+++ b/drivers/edac/armada_xp_edac.c
@@ -286,17 +286,10 @@ static int axp_mc_probe(struct platform_device *pdev)
struct edac_mc_layer layers[1];
const struct of_device_id *id;
struct mem_ctl_info *mci;
-   struct resource *r;
void __iomem *base;
uint32_t config;

-   r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-   if (!r) {
-   dev_err(&pdev->dev, "Unable to get mem resource\n");
-   return -ENODEV;
-   }
-
-   base = devm_ioremap_resource(&pdev->dev, r);
+   base = devm_platform_ioremap_resource(pdev, 0);
if (IS_ERR(base)) {
dev_err(&pdev->dev, "Unable to map regs\n");
return PTR_ERR(base);
@@ -516,15 +509,8 @@ static int aurora_l2_probe(struct platform_device *pdev)
const struct of_device_id *id;
uint32_t l2x0_aux_ctrl;
void __iomem *base;
-   struct resource *r;
-
-   r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-   if (!r) {
-   dev_err(&pdev->dev, "Unable to get mem resource\n");
-   return -ENODEV;
-   }

-   base = devm_ioremap_resource(&pdev->dev, r);
+   base = devm_platform_ioremap_resource(pdev, 0);
if (IS_ERR(base)) {
dev_err(&pdev->dev, "Unable to map regs\n");
return PTR_ERR(base);
--
2.23.0