summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPunit Agrawal <punit.agrawal@arm.com>2014-03-19 12:43:25 +0000
committerPawel Moll <pawel.moll@arm.com>2014-04-24 17:20:50 +0100
commitcf2e0a73ca9ad376825c013ebaa145608abc27d7 (patch)
treeb6a4709dca0c7f1be56f183ad4a251b8fb7630bb
parentd08b80373cbb76c9b485b60d49fd3ba82abdf77c (diff)
downloadblackbird-op-linux-cf2e0a73ca9ad376825c013ebaa145608abc27d7.tar.gz
blackbird-op-linux-cf2e0a73ca9ad376825c013ebaa145608abc27d7.zip
ARM: vexpress/TC2: Convert OPP voltage to uV before storing
The SPC stores voltage in mV while the code assumes it was returning uV. Convert the returned voltage to uV before storing. Also fix the comment depicting voltage to uV. Signed-off-by: Punit Agrawal <punit.agrawal@arm.com> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Signed-off-by: Pawel Moll <pawel.moll@arm.com>
-rw-r--r--arch/arm/mach-vexpress/spc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-vexpress/spc.c b/arch/arm/mach-vexpress/spc.c
index c26ef5b92ca7..2c2754e79cb3 100644
--- a/arch/arm/mach-vexpress/spc.c
+++ b/arch/arm/mach-vexpress/spc.c
@@ -392,7 +392,7 @@ static irqreturn_t ve_spc_irq_handler(int irq, void *data)
* +--------------------------+
* | 31 20 | 19 0 |
* +--------------------------+
- * | u_volt | freq(kHz) |
+ * | m_volt | freq(kHz) |
* +--------------------------+
*/
#define MULT_FACTOR 20
@@ -414,7 +414,7 @@ static int ve_spc_populate_opps(uint32_t cluster)
ret = ve_spc_read_sys_cfg(SYSCFG_SCC, off, &data);
if (!ret) {
opps->freq = (data & FREQ_MASK) * MULT_FACTOR;
- opps->u_volt = data >> VOLT_SHIFT;
+ opps->u_volt = (data >> VOLT_SHIFT) * 1000;
} else {
break;
}
OpenPOWER on IntegriCloud