[RFC] Migrate to Hz resolution for OPP binding

From: SÃren Brinkmann
Date: Tue May 20 2014 - 18:33:34 EST


Hi,

I guess this is just to evaluate how big the lynch mob will be. Anyway:
Triggered by this discussion https://lkml.org/lkml/2014/5/15/46, I
looked a little into what it would take to migrate everybody to Hz
frequency resolutions to avoid all the conversions between cpufreq, CCF,
OPPs, etc.
Turns out, OPPs are already stored in Hz resolution in the kernel, but the DT
bindings use kHz resolution to specify them in DT. So, code-wise there
is just a removal of a multiplication in the OPP parser (see below), but
then there are the DT bindings...

As plan B, I was thinking to add the property 'operating-points-hz'...

Any better ideas?


diff --git a/drivers/base/power/opp.c b/drivers/base/power/opp.c
index 25538675d59e..61795111e8ca 100644
--- a/drivers/base/power/opp.c
+++ b/drivers/base/power/opp.c
@@ -731,7 +731,7 @@ int of_init_opp_table(struct device *dev)

val = prop->value;
while (nr) {
- unsigned long freq = be32_to_cpup(val++) * 1000;
+ unsigned long freq = be32_to_cpup(val++);
unsigned long volt = be32_to_cpup(val++);

if (dev_pm_opp_add(dev, freq, volt)) {


Thanks,
SÃren

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/