From: Robin Gong Date: Thu, 22 Nov 2012 05:45:54 +0000 (+0800) Subject: ENGR00234411-2 CPUFREQ: fix one code bug on regulator restore when fail X-Git-Tag: v3.0.35-fsl~228 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=1d1601a22ea44eb02b6f3adcc6c347f783a28d43;p=karo-tx-linux.git ENGR00234411-2 CPUFREQ: fix one code bug on regulator restore when fail Didn't care about pu_regulator is enabled or not when regulator restore if some regulator set failed. Signed-off-by: Robin Gong --- diff --git a/arch/arm/plat-mxc/cpufreq.c b/arch/arm/plat-mxc/cpufreq.c index 304e5c7a523b..3d450e07d6a8 100755 --- a/arch/arm/plat-mxc/cpufreq.c +++ b/arch/arm/plat-mxc/cpufreq.c @@ -184,10 +184,13 @@ err4: } err3: - ret = regulator_set_voltage(pu_regulator, org_pu_volt, org_pu_volt); - if (ret < 0) { - printk(KERN_ERR "COULD NOT RESTORE PU VOLTAGE!!!!\n"); - goto err3; + if (!IS_ERR(pu_regulator) && + regulator_is_enabled(pu_regulator)) { + ret = regulator_set_voltage(pu_regulator, org_pu_volt, org_pu_volt); + if (ret < 0) { + printk(KERN_ERR "COULD NOT RESTORE PU VOLTAGE!!!!\n"); + goto err3; + } } err2: ret = regulator_set_voltage(soc_regulator, org_soc_volt,