Re: [RESEND PATCH v2 2/3] cpufreq: brcmstb-avs-cpufreq: AVS CPUfreq driver for Broadcom STB SoCs

From: Markus Mayer
Date: Thu Oct 06 2016 - 10:52:40 EST


On 5 October 2016 at 21:01, Viresh Kumar <viresh.kumar@xxxxxxxxxx> wrote:
> Thanks for accepting all the comments :)
>
> On 05-10-16, 14:04, Markus Mayer wrote:
>> Is there an easy way for me to know via the framework whether init is
>> being called for the first time vs. init is being called on a
>> different core after a previous attempt to initialize on another core
>> failed?
>>
>> I could use a driver-global variable for the driver to remember if it
>> has been initialized, but that seems a bit hacky.
>
> You don't really need to have any special code here, specially for the case that
> may never get hit. For example, if we fail to initialize something for CPU0,
> cpufreq core will try calling this routine for other CPUs as well. I don't think
> there is anything wrong in letting cpufreq core trying that. Why stop it or
> return early? It wouldn't happen normally, unless there is a bug in there.

During early development, when the driver couldn't fully register, I
would see the init() function called four times, i.e. once for each
core. If the first call succeeded, that was it. It would only get
called once. But if it failed, all cores would try to register. And I
wanted to avoid spilling the same error message four times.

I'll look at that again. It may have had something to do with how the
driver worked back then. If it doesn't happen anymore, I'll just get
rid of this code.

Thanks,
-Markus