We shall require any deep probe platforms to have a power domain driver or make use of barebox,allow-dummy in the device tree.
Otherwise a warning will be printed. Signed-off-by: Ahmad Fatoum <[email protected]> --- v2 -> v3: - suggest barebox,allow-dummy instead of dummy drivers - print debug message in !have_genpd_providers case --- drivers/base/power.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/drivers/base/power.c b/drivers/base/power.c index 6da40a32801c..668b835df3e6 100644 --- a/drivers/base/power.c +++ b/drivers/base/power.c @@ -393,8 +393,21 @@ static int __genpd_dev_pm_attach(struct device *dev, if (ret == -ENOENT) ret = -EPROBE_DEFER; - if (!have_genpd_providers && ret == -EPROBE_DEFER) - return 0; + if (ret == -EPROBE_DEFER) { + /* + * New platforms should either have power domain drivers + * or they should use barebox,allow-dummy, so above + * genpd_get_from_provider() returns NULL. + */ + if (deep_probe_is_supported()) { + dev_warn(dev, "power domain not found (ignoring)\n"); + return 0; + } + if (!have_genpd_providers) { + dev_dbg(dev, "power domain not found (ignoring)\n"); + return 0; + } + } /* * Assume that missing genpds are unresolved -- 2.47.3
