On 20-01-16, 17:18, Stephen Boyd wrote:
Yeah I don't understand why we at least can't populate the OPP structures and get the clocks and regulators for all the CPU devices before we register the dt_cpufreq_driver structure. The CPU devices should exist at that point, and we can wait to do CPUfreq transitions until the regulators/clocks for all the CPUs are registered. Sure we'd need to find the OPPs that are being shared in the cpufreq_init callback and populate the cpu frequency tables, etc., but that's not a big deal.
We can do this, yes. But ->init() was really the right place to fix that, we aren't able to do it properly because we lack a cpu processor driver for ARM.
Making a CPU processor driver on ARM/non-ACPI systems would be to solve the problem of all these random things like cpuidle-arm and cpufreq-dt going through the list of cpu devices and hooking up stuff to the cpuidle, cpufreq, and thermal frameworks. That's a separate but related problem to probe defering the cpufreq-dt driver.
Yeah, I wanted to work on that sometime :)