memory: tegra: Only initialize reset controller if available
authorThierry Reding <treding@nvidia.com>
Wed, 2 Jun 2021 16:32:59 +0000 (18:32 +0200)
committerKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Thu, 3 Jun 2021 19:49:41 +0000 (21:49 +0200)
The memory controller hot resets are implemented in the BPMP on Tegra186
and later, so there's no need to provide an implementation via the
memory controller driver. Conditionally register the reset controller
only if needed.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20210602163302.120041-10-thierry.reding@gmail.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
drivers/memory/tegra/mc.c

index 68c6797..4aa17bd 100644 (file)
@@ -768,10 +768,11 @@ static int tegra_mc_probe(struct platform_device *pdev)
                }
        }
 
-       err = tegra_mc_reset_setup(mc);
-       if (err < 0)
-               dev_err(&pdev->dev, "failed to register reset controller: %d\n",
-                       err);
+       if (mc->soc->reset_ops) {
+               err = tegra_mc_reset_setup(mc);
+               if (err < 0)
+                       dev_err(&pdev->dev, "failed to register reset controller: %d\n", err);
+       }
 
        err = tegra_mc_interconnect_setup(mc);
        if (err < 0)