Messages in this thread | | | Date | Mon, 18 Jan 2021 16:48:05 +0530 | From | Viresh Kumar <> | Subject | Re: [PATCH v3 11/12] opp: Handle missing OPP table in dev_pm_opp_xlate_performance_state() |
| |
On 18-01-21, 03:55, Dmitry Osipenko wrote: > 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> > --- > drivers/opp/core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/opp/core.c b/drivers/opp/core.c > index 7726c4c40b53..ca8c6acc29f4 100644 > --- a/drivers/opp/core.c > +++ b/drivers/opp/core.c > @@ -2419,7 +2419,7 @@ int dev_pm_opp_xlate_performance_state(struct opp_table *src_table, > * and so none of them have the "required-opps" property set. Return the > * pstate of the src_table as it is in such cases. > */ > - if (!src_table->required_opp_count) > + if (!src_table || !src_table->required_opp_count) > return pstate; > > for (i = 0; i < src_table->required_opp_count; i++) {
Applied. Thanks.
-- viresh
| |