On 11-03-21, 22:20, Dmitry Osipenko wrote: > +struct opp_table *devm_pm_opp_set_clkname(struct device *dev, const char *name) > +{ > + struct opp_table *opp_table; > + int err; > + > + opp_table = dev_pm_opp_set_clkname(dev, name); > + if (IS_ERR(opp_table)) > + return opp_table; > + > + err = devm_add_action_or_reset(dev, devm_pm_opp_clkname_release, opp_table); > + if (err) > + opp_table = ERR_PTR(err); > + > + return opp_table; > +} I wonder if we still need to return opp_table from here, or a simple integer is fine.. The callers shouldn't be required to use the OPP table directly anymore I believe and so better simplify the return part of this and all other routines you are adding here.. If there is a user which needs the opp_table, let it use the regular non-devm variant. -- viresh