lkml.org 
[lkml]   [2013]   [Aug]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v7 1/7] cpufreq: Add boost frequency support in core
    On Mon, 26 Aug 2013 10:58:53 +0530 Viresh Kumar viresh.kumar@linaro.org
    wrote,
    > Some minor nitpicking, nothing much :)

    Is there any chance to pull those corrected patches to v3.12?

    >
    > On 13 August 2013 15:38, Lukasz Majewski <l.majewski@samsung.com>
    > wrote:
    > > diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
    > > +static int cpufreq_boost_set_sw(int state)
    > > +{
    > > + struct cpufreq_frequency_table *freq_table;
    > > + struct cpufreq_policy *policy;
    > > + int ret = -EINVAL;
    > > +
    > > + list_for_each_entry(policy, &cpufreq_policy_list,
    > > policy_list) {
    > > + freq_table =
    > > cpufreq_frequency_get_table(policy->cpu);
    > > + if (freq_table) {
    > > + ret =
    > > cpufreq_frequency_table_cpuinfo(policy,
    > > + freq_table);
    > > + if (!ret) {
    > > + policy->user_policy.max =
    > > policy->max;
    > > + __cpufreq_governor(policy,
    > > CPUFREQ_GOV_LIMITS);
    > > + }
    >
    > In case ret wasn't 0 (i.e. we failed), we should print an error
    > message and break
    > our loop ?

    After your comments I think, that this code could be rewritten:


    list_for_each_entry(policy, &cpufreq_policy_list, policy_list) {
    freq_table = cpufreq_frequency_get_table(policy->cpu);
    if (freq_table) {
    ret = cpufreq_frequency_table_cpuinfo(policy,
    freq_table);
    if (ret) {
    pr_err("%s: Policy frequency update
    failed\n")
    break;
    }

    policy->user_policy.max = policy->max;
    __cpufreq_governor(policy,CPUFREQ_GOV_LIMITS);
    }
    }

    return ret;
    }


    >
    > > + }
    > > + }
    > > +
    > > + return ret;
    > > +}
    > > +
    > > +int cpufreq_boost_trigger_state(int state)
    > > +{
    > > + unsigned long flags;
    > > + int ret = 0;
    > > +
    > > + if (cpufreq_driver->boost_enabled == state)
    > > + return 0;
    > > +
    > > + write_lock_irqsave(&cpufreq_driver_lock, flags);
    > > + cpufreq_driver->boost_enabled = state;
    > > + write_unlock_irqrestore(&cpufreq_driver_lock, flags);
    > > +
    > > + ret = cpufreq_driver->set_boost(state);
    > > + if (ret) {
    > > + write_lock_irqsave(&cpufreq_driver_lock, flags);
    > > + cpufreq_driver->boost_enabled = !state;
    > > + write_unlock_irqrestore(&cpufreq_driver_lock,
    > > flags); +
    > > + pr_err("%s: Cannot %s BOOST\n", __func__,
    > > + state ? "enabled" : "disabled");
    >
    > s/enabled/enable and s/disabled/disable

    Ok.

    >
    > > + }
    > > +
    > > + return ret;
    > > +}
    > > +



    --
    Best regards,

    Lukasz Majewski

    Samsung R&D Institute Poland (SRPOL) | Linux Platform Group


    \
     
     \ /
      Last update: 2013-08-26 09:21    [W:4.139 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site