Usually, the ddr pmu node will be a subnode of DDR controller, then using devm_platform_ioremap_resource will report conflict with DDR controller resource. So update the driver to use devm_ioremap to avoid such resource check. Signed-off-by: Ye Li <ye.li@xxxxxxx> Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx> --- drivers/perf/fsl_imx9_ddr_perf.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/perf/fsl_imx9_ddr_perf.c b/drivers/perf/fsl_imx9_ddr_perf.c index 5cf770a1bc31..885024665968 100644 --- a/drivers/perf/fsl_imx9_ddr_perf.c +++ b/drivers/perf/fsl_imx9_ddr_perf.c @@ -602,8 +602,15 @@ static int ddr_perf_probe(struct platform_device *pdev) void __iomem *base; int ret, irq; char *name; + struct resource *r; - base = devm_platform_ioremap_resource(pdev, 0); + r = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!r) { + dev_err(&pdev->dev, "platform_get_resource() failed\n"); + return -ENOMEM; + } + + base = devm_ioremap(&pdev->dev, r->start, resource_size(r)); if (IS_ERR(base)) return PTR_ERR(base); -- 2.34.1