Re: [PATCH v2 1/4] cpufreq: pxa: use generic platdev driver for device-tree

From: Robert Jarzmik
Date: Fri Oct 21 2016 - 11:17:59 EST


Viresh Kumar <viresh.kumar@xxxxxxxxxx> writes:

> On 19-10-16, 22:06, Robert Jarzmik wrote:
>> Viresh Kumar <viresh.kumar@xxxxxxxxxx> writes:
>>
>> >> >> + { .compatible = "marvell,pxa250", },
>> >> >> + { .compatible = "marvell,pxa270", },
>> >> >>
>> >> >> { .compatible = "samsung,exynos3250", },
>> >> >> { .compatible = "samsung,exynos4210", },
>> >> >
>> >> > Isn't there a race between cpufreq-dt and the platform driver to
>> >> > register first ?
>> >> Ah, could you be more specific about the race you're talking of ?
>> >>
>> >> My understanding was that cpufreq-dt-platdev does create the device, and
>> >> cpufreq-dt is a driver for it, so there is no race but a direct relationship
>> >> AFAIU.
>> >
>> > I mean that both the driver may try to register to the cpufreq core if
>> > they are both compiled in a single image.
>> Euh I still don't follow you. The only driver that can register to the cpufreq
>> core is cpufreq-dt.
>
> I was wondering on what will happen if both cpufreq-dt and your pxa2xx-cpufreq
> driver are present in the same kernel image. In that case the init routines of
> both of them will try to call cpufreq_register_driver().
Right.

In my case, cpufreq-dt comes first, and wins.
pxa_cpu_init() calls cpufreq_register_driver() and returns -EEXIST.

Cheers.

--
Robert