• Viresh Kumar's avatar
    PM / OPP: Return opp_table from dev_pm_opp_set_*() routines · fa30184d
    Viresh Kumar authored
    Now that we have proper kernel reference infrastructure in place for OPP
    tables, use it to guarantee that the OPP table isn't freed while being
    used by the callers of dev_pm_opp_set_*() APIs.
    
    Make them all return the pointer to the OPP table after taking its
    reference and put the reference back with dev_pm_opp_put_*() APIs.
    
    Now that the OPP table wouldn't get freed while these routines are
    executing after dev_pm_opp_get_opp_table() is called, there is no need
    to take opp_table_lock. Drop them as well.
    
    Remove the rcu specific comments from these routines as they aren't
    relevant anymore.
    
    Note that prototypes of dev_pm_opp_{set|put}_regulators() were already
    updated by another patch.
    Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
    Reviewed-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    fa30184d
core.c 51.5 KB