Re: [PATCH v4 2/7] cpufreq: Add boost frequency support in core

Viresh Kumar
2013-06-27T09:08:15Z

On 26 June 2013 18:24, Lukasz Majewski <l.majewski@samsung.com> wrote:
> On Wed, 26 Jun 2013 16:24:32 +0530, Viresh Kumar wrote:
>> On 19 June 2013 22:42, Lukasz Majewski <l.majewski@samsung.com> wrote:

>> > +static ssize_t store_boost(struct kobject *kobj, struct attribute
>> > *attr,
>> > + const char *buf, size_t count)
>> > +{
>> > + int ret, enable;
>> > +
>> > + ret = sscanf(buf, "%d", &enable);
>> > + if (ret != 1 || enable < 0 || enable > 1)
>> > + return -EINVAL;
>> > +
>> > + if (cpufreq_boost_trigger_state(enable)) {
>> > + pr_err("%s: Cannot enable boost!\n", __func__);
>> > + return -EINVAL;
>> > + }
>>
>> Probably do boost_enabled = true here.
>
> I would prefer to set boot_enabled at
> cpufreq_boost_trigger_state() method. It is closer to the
> cpufreq_driver->enable_boost and cpufreq_boost_trigger_state_sw();
> functions, which do change the freq.

I said that as this will be more inclined towards the purpose of
this routine. This routine should store boost as show_boost()
is returning it. So, what would be better is if you just return
0 or err from cpufreq_boost_trigger_state() and then set boost
here. This will also solve your problem where you revert back
to older boost value for failure cases.

>> > + ret = cpufreq_driver->enable_boost(state);
> ^^^^^^^^^^^^^
> I would prefer to change this
> name to enable_boost_hw
> It is more informative, since it is tailored to hw based boost (Intel).

Ok

>> > + else
>> > + ret = cpufreq_boost_trigger_state_sw();

then why not enable_boost_sw() here? that would be more
relevant.

> I will rewrite it as follow:
>
> if (ret)
> boost_enabled = 0;
>
> write_unlock_irqrestore(&cpufreq_driver_lock, flags);
> pr_debug("%s: cpufreq BOOST %s\n", __func__,
> state ? "enabled" : "disabled");

So, you will not print error but current state? Probably
printing error is better.