As per the device tree binding, in certain scenarios such as
virtualization scenarios, the MC control registers are not
available so don't error out if they are not present.

Signed-off-by: Laurentiu Tudor <laurentiu.tu...@nxp.com>
---
 drivers/bus/fsl-mc/fsl-mc-bus.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c
index b0449df117e8..7345ecef93f8 100644
--- a/drivers/bus/fsl-mc/fsl-mc-bus.c
+++ b/drivers/bus/fsl-mc/fsl-mc-bus.c
@@ -915,11 +915,11 @@ static int fsl_mc_bus_probe(struct platform_device *pdev)
        platform_set_drvdata(pdev, mc);
 
        plat_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
-       mc->fsl_mc_regs = devm_ioremap_resource(&pdev->dev, plat_res);
-       if (IS_ERR(mc->fsl_mc_regs))
-               return PTR_ERR(mc->fsl_mc_regs);
+       if (plat_res)
+               mc->fsl_mc_regs = devm_ioremap_resource(&pdev->dev, plat_res);
 
-       if (IS_ENABLED(CONFIG_ACPI) && !dev_of_node(&pdev->dev)) {
+       if (mc->fsl_mc_regs && IS_ENABLED(CONFIG_ACPI) &&
+           !dev_of_node(&pdev->dev)) {
                mc_stream_id = readl(mc->fsl_mc_regs + FSL_MC_FAPR);
                /*
                 * HW ORs the PL and BMT bit, places the result in bit 15 of
-- 
2.17.1

Reply via email to