opp: Handle missing OPP table in dev_pm_opp_xlate_performance_state()
authorDmitry Osipenko <digetx@gmail.com>
Mon, 18 Jan 2021 00:55:23 +0000 (03:55 +0300)
committerViresh Kumar <viresh.kumar@linaro.org>
Tue, 2 Feb 2021 04:57:34 +0000 (10:27 +0530)
commitf2f4d2b86f432fecfd76afa5f4f60f47833121b5
treecebbaacad76af4c2a26b76a3759c189ce950c3b2
parentb4b9e223eccaeec6e05d927c292d4425fd18f243
opp: Handle missing OPP table in dev_pm_opp_xlate_performance_state()

NVIDIA Tegra SoCs have a power domains topology such that child domains
only clamp a power rail, while parent domain controls shared performance
state of the multiple child domains. In this case child's domain doesn't
need to have OPP table. Hence we want to allow children power domains to
pass performance state to the parent domain if child's domain doesn't have
OPP table.

The dev_pm_opp_xlate_performance_state() gets src_table=NULL if a child
power domain doesn't have OPP table and in this case we should pass the
performance state to the parent domain.

Tested-by: Peter Geis <pgwipeout@gmail.com>
Tested-by: Nicolas Chauvet <kwizart@gmail.com>
Tested-by: Matt Merhar <mattmerhar@protonmail.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/opp/core.c