02 Aug, 2013

1 commit


01 Aug, 2013

1 commit

  • Simplify the equation to calculate ramp_delay.
    Below equations are equivalent:
    ramp_delay = 25000 / (2 * ramp_delay);
    ramp_delay = 50000 / (4 * ramp_delay);
    ramp_delay = 25000 / (2 * ramp_delay);
    ramp_delay = 12500 / ramp_delay;
    So we don't need to read BIT6 of rdev->desc->vsel_reg for applying different
    equations.

    Also use rdev->desc->vsel_reg instead of run-time calculate register address.

    Signed-off-by: Axel Lin
    Reviewed-by: Robin Gong
    Signed-off-by: Mark Brown

    Axel Lin
     

30 Jul, 2013

1 commit

  • Current code adjust min_uV and uV_step but missed adjusting the n_voltages
    setting.

    When BIT6 is clear:
    n_voltages = (1975000 - 400000) / 25000 + 1 = 64
    When BIT6 is set:
    n_voltages = (3300000 - 800000) / 50000 + 1 = 51

    The n_voltages needs update because when BIT6 is set 0x73 ~ 0x7f are reserved.
    When using regulator_list_voltage_linear, the n_voltages does matter here
    because wrong n_voltages setting make the equation return wrong result.
    e.g. if selector is 63, regulator_list_voltage_linear returns
    800000 + (50000 * 63) = 4000000
    It should return -EINVAL if the selector is in the range of 51 ~ 63.

    Signed-off-by: Axel Lin
    Signed-off-by: Mark Brown

    Axel Lin
     

29 Jul, 2013

4 commits


27 Jul, 2013

1 commit


25 Jul, 2013

1 commit