msm: clock-8960: Use VDD dig corner regulator for 8930.

The VDD dig corner regulator allows voting on the logical VDD dig levels
without having to deal with the specific voltages that correspond to each
logical VDD dig level. This allows the RPM to optimize the actual voltage
that corresponds to each logical level based on hardware characteristics.

Change-Id: Ic4e86a58dcdcd821cece3ab770cbe533df001e52
Signed-off-by: Saravana Kannan <skannan@codeaurora.org>
This commit is contained in:
Saravana Kannan
2012-02-08 19:55:44 -08:00
committed by David Collins
parent 0490731ade
commit ebaa3acc83

View File

@@ -387,14 +387,16 @@ static DEFINE_VDD_CLASS(vdd_dig, set_vdd_dig_8960);
static int set_vdd_dig_8930(struct clk_vdd_class *vdd_class, int level)
{
static const int vdd_uv[] = {
[VDD_DIG_NONE] = 0,
[VDD_DIG_LOW] = 945000,
[VDD_DIG_NOMINAL] = 1050000,
[VDD_DIG_HIGH] = 1150000
static const int vdd_corner[] = {
[VDD_DIG_NONE] = RPM_VREG_CORNER_NONE,
[VDD_DIG_LOW] = RPM_VREG_CORNER_LOW,
[VDD_DIG_NOMINAL] = RPM_VREG_CORNER_NOMINAL,
[VDD_DIG_HIGH] = RPM_VREG_CORNER_HIGH,
};
return rpm_vreg_set_voltage(RPM_VREG_ID_PM8038_S1, RPM_VREG_VOTER3,
vdd_uv[level], 1150000, 1);
return rpm_vreg_set_voltage(RPM_VREG_ID_PM8038_VDD_DIG_CORNER,
RPM_VREG_VOTER3,
vdd_corner[level],
RPM_VREG_CORNER_HIGH, 1);
}
#define VDD_DIG_FMAX_MAP1(l1, f1) \