> Currently the opp_find* functions return -ENODEV when: > a) it cant find a device (e.g. request for an OPP search on device > which was not registered) > b) When it cant find a match for the search strategy used > > This makes life a little in-efficient for users such as devfreq > to make reasonable judgement before switching search strategies. > > So, standardize the return results as following: > -EINVAL for bad pointer parameters > -ENODEV when device cannot be found > -ERANGE when search fails > > This has the following benefit for devfreq implementation: > > Current code: > opp = opp_find_freq_floor(dev, freq); > /* Following search triggers even for un-registered device */ > if (opp == ERR_PTR(-ENODEV)) > opp = opp_find_freq_ceil(dev, freq); > > Vs (after this change): > opp = opp_find_freq_floor(dev, freq); > /* Will only be triggered if search logic fails: intended usage */ > if (opp == ERR_PTR(-ERANGE)) > opp = opp_find_freq_ceil(dev, freq); > > Cc: MyungJoo Ham > Cc: Kyungmin Park > Cc: "Rafael J. Wysocki" > Cc: Kevin Hilman > Cc: linux-pm@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > > Signed-off-by: Nishanth Menon Thanks. Acked-by: MyungJoo Ham > {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I