On 7 August 2013 23:23, Stephen Warren swarren@wwwdotorg.org wrote:
That link only describes why we shouldn't have a dedicated compatible value for cpufreq. I certainly agree with that. However, I think it's reasonable that whatever code binds to:
compatible = "arm,cortex-a9";
... should instantiate any virtual devices that relate to the CPU.
But how would we know here if platform really wants us to probe cpufreq-cpu0 driver? On multiplatform kernel there can be multiple cpufreq drivers available and there has to be some sort of code in DT or platform code that reflects which driver we want to use.
We never required a device node for cpufreq, platform device was added just to solve this issue.
Doing so would be similar to how the Tegra I2S driver instantiates the internal struct device that ASoC needs for the PCM/DMA device, rather than having board-dt-tegra20.c do it, like it would have done in board-file days.
I haven't gone through it yet though :)