]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER
authorDmitry Osipenko <digetx@gmail.com>
Wed, 20 Jan 2021 21:12:31 +0000 (00:12 +0300)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 22 Jan 2021 16:12:59 +0000 (17:12 +0100)
Driver of a power domain provider may not be ready at the time of
of_genpd_add_subdomain() invocation. Make this function to return
-EPROBE_DEFER instead of -ENOENT in order to remove a need from
power domain drivers to handle the error code specially.

Tested-by: Peter Geis <pgwipeout@gmail.com>
Tested-by: Nicolas Chauvet <kwizart@gmail.com>
Tested-by: Matt Merhar <mattmerhar@protonmail.com>
[tested on NVIDIA Tegra20/30/124 SoCs]
Suggested-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/base/power/domain.c

index 4878c824e66c0e29c635a77d93776f2e8e56280d..c615abf56c5273b663c6abaf588347c74bb3d5e3 100644 (file)
@@ -2496,7 +2496,7 @@ int of_genpd_add_subdomain(struct of_phandle_args *parent_spec,
 out:
        mutex_unlock(&gpd_list_lock);
 
-       return ret;
+       return ret == -ENOENT ? -EPROBE_DEFER : ret;
 }
 EXPORT_SYMBOL_GPL(of_genpd_add_subdomain);