diff options
author | Nishanth Menon <nm@ti.com> | 2012-03-23 18:15:35 +0200 |
---|---|---|
committer | Todd Poynor <toddpoynor@google.com> | 2012-05-10 14:24:54 -0700 |
commit | fa09b1c1912ca021e48929038bb8c55885b4d03b (patch) | |
tree | 777704f45d663c8a7ed55570db29749ee7432745 /arch/arm/mach-omap2/vp.c | |
parent | 2e11077e60e147615042b1481213998008d6bb8a (diff) | |
download | kernel_samsung_tuna-fa09b1c1912ca021e48929038bb8c55885b4d03b.zip kernel_samsung_tuna-fa09b1c1912ca021e48929038bb8c55885b4d03b.tar.gz kernel_samsung_tuna-fa09b1c1912ca021e48929038bb8c55885b4d03b.tar.bz2 |
OMAP3+: LDO: ensure that right ABB type is selected
since target_volt converted by omap_voltage_get_voltdata to get to
abb type for the OPP voltage level, we can have a scenario as follows:
OPP100 Vnom=1.2V, Vcalib = 0V(not calibrated) ABB type - bypass
OPPNitro Vnom=1.375, Vcalib = 1.2V ABB type = FBB
in this case, voltdm_scale will first gets the operational_voltage
of oppNitro and recieves 1.2V, sends it down to abb_prescale function
which in turn converts it back into vdata using
omap_voltage_get_voltdata
however, omap_voltage_get_voltdata walks through the volt_data array
and finds the first match of OPP100 where Vnom = 1.2V and returns
the volt_data pointer for OPP100, this causes ABB logic to think
that it is attempting to go to an OPP with bypass, which in effect
crashes the device once frequency is set to OPPNitro, but ABB is in
bypass mode.
To solve this, we should pass the exact volt_data pointer down to
the abb prescale and postscale handlers so that this back and forth
conversion error does not take place.
Change-Id: I49099caba069798d7bd8888c614fd5e2e27fab6f
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/vp.c')
0 files changed, 0 insertions, 0 deletions