summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-vexpress/spc.c
diff options
context:
space:
mode:
authorPunit Agrawal <punit.agrawal@arm.com>2014-03-19 13:43:25 +0100
committerPawel Moll <pawel.moll@arm.com>2014-04-24 18:20:50 +0200
commitcf2e0a73ca9ad376825c013ebaa145608abc27d7 (patch)
treeb6a4709dca0c7f1be56f183ad4a251b8fb7630bb /arch/arm/mach-vexpress/spc.c
parentpower/reset: vexpress: Fix restart/power off operation (diff)
downloadlinux-cf2e0a73ca9ad376825c013ebaa145608abc27d7.tar.xz
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>
Diffstat (limited to '')
-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;
}