On 7 August 2013 23:12, Stephen Warren <swarren@xxxxxxxxxxxxx> wrote: > On 08/07/2013 08:46 AM, Viresh Kumar wrote: >> cpufreq-cpu0 driver needs OPPs to be present in DT which can be probed by it to >> get frequency table. This patch adds OPPs and clock-latency to tegra cpu0 node >> for multiple SoCs. >> >> Voltage levels aren't used until now for tegra and so a flat value which would >> eventually be ignored is used to represent voltage. > > This patch is problematic w.r.t. DT being an ABI. :( > We can certainly add new optional properties to a DT binding that enable > new features. However, a new version of a binding can't require new > properties to exist that didn't before, since that means that old DTs > won't work with new kernels that require the new properties. To be honest I didn't get it completely. You meant operating-points wasn't present before? Its here: Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt Documentation/devicetree/bindings/power/opp.txt Or you meant, Tegra never required voltage levels and we are getting them in here. > As such, I believe we do need some Tegra-specific piece of code that > defines these OPP tables in the kernel, so that the operating-points > property is not needed. Generic cpufreq driver depends on OPP library and so somebody has to provide them. Now you can do it by calling opp_add() for each OPP you have or otherwise. Btw, you must have some specific voltage level for each freq, we can get them here.. > Similarly, we can't put invalid voltages into the DT, since if a later > kernel version starts actually using that field, the HW will no longer > work correctly. Unless perhaps we put 0 into the DT and make the binding > define that 0 means "you can't change the voltage at all away from the > boot value"? Hmm.. so if you help me in getting actual voltage levels for these freqs then this problem will be resolved. Otherwise I can check what will happen if we pass zero to voltage. > Is the operating-points property documented in > Documentation/devicetree/bindings/ somewhere? Check above. > (Also Cc'ing the DT mailing list and maintainers) Thanks. -- To unsubscribe from this list: send the line "unsubscribe cpufreq" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html