soc/tegra: pmc: Check return code for pm_genpd_init()
authorJon Hunter <jonathanh@nvidia.com>
Sat, 22 Oct 2016 19:23:55 +0000 (20:23 +0100)
committerThierry Reding <treding@nvidia.com>
Tue, 15 Nov 2016 14:51:54 +0000 (15:51 +0100)
Commit 7eb231c337e0 ("PM / Domains: Convert pm_genpd_init() to return
an error code") updated pm_genpd_init() to return an error code. Update
the Tegra PMC driver to check the return value from pm_genpd_init() and
handle any errors returned.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
[treding@nvidia.com: use pr_err() instead of dev_err()]
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/soc/tegra/pmc.c

index 78fffa2..bc4267c 100644 (file)
@@ -855,7 +855,12 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np)
            (id == TEGRA_POWERGATE_XUSBA || id == TEGRA_POWERGATE_XUSBC))
                goto power_on_cleanup;
 
-       pm_genpd_init(&pg->genpd, NULL, off);
+       err = pm_genpd_init(&pg->genpd, NULL, off);
+       if (err < 0) {
+               pr_err("failed to initialise power domain %s: %d\n", np->name,
+                      err);
+               goto remove_resets;
+       }
 
        err = of_genpd_add_provider_simple(np, &pg->genpd);
        if (err < 0) {