Resending again due to accidental HTML (minor rewording/typo fixes too). On Tue, Jul 23, 2019 at 3:28 AM Viresh Kumar <viresh.ku...@linaro.org> wrote: > > $subject doesn't have correct property name. > > On 17-07-19, 15:23, Saravana Kannan wrote: > > Currently, the linking of required-opps fails silently if the > > destination OPP table hasn't been added before the source OPP table is > > added. This puts an unnecessary requirement that the destination table > > be added before the source table is added. > > > > In reality, the destination table is needed only when we try to > > translate from source OPP to destination OPP. So, instead of > > completely failing, retry linking the tables when the translation is > > attempted. > > > > Signed-off-by: Saravana Kannan <sarava...@google.com> > > --- > > drivers/opp/core.c | 32 +++++++++++----- > > drivers/opp/of.c | 91 ++++++++++++++++++++++------------------------ > > drivers/opp/opp.h | 5 +++ > > 3 files changed, 71 insertions(+), 57 deletions(-) > > Here is the general feedback and requirements I have: > > - We shouldn't do it from _set_required_opps() but way earlier, it > shouldn't affect the fast path (where we change the frequency).
I don't think there's any other intermediate OPP API call where we can try to lazily link the tables. Also if the tables are already fully linked, I don't think this is really going to slow down the fast path in anyway (because it's just a few NULL checks). If you have other ideas, I'm willing to look at it. But as it is right now seems the best to me. > - Programming required-opps for half of the properties isn't correct, > i.e. in case only few of the required-opps are parsed until now. So > setting of rate shouldn't even start unless the OPP table is fully > initialized with all required-opps in it. Ok, I can fix this. -Saravana