11 Apr, 2016

2 commits

  • A const pointer to regulator ops is stored in regulator descriptors. The
    operations never need to be modified, so define them as const as a hint
    to the compiler that they can go into .rodata.

    Signed-off-by: Thierry Reding
    Signed-off-by: Mark Brown

    Thierry Reding
     
  • LD06 on the AS3722 power management IC supports a bypass mode. Bypass
    is enabled for the LDO by writing the value 0x3F to the voltage select
    field in the control register for the LDO. Note that this is the same
    register and field that is used to select the voltage as well for the
    LDO.

    Add support for bypass on LDO6 by specifying the various bypass
    parameters for regulator and adding new function pointer tables for the
    LDO. Note that the bypass OFF value is the same as the ON value simply
    because there is no actual OFF value and bypass will be disabled when
    a new voltage is written to the VSEL field.

    Signed-off-by: Jon Hunter
    Signed-off-by: Thierry Reding
    Signed-off-by: Mark Brown

    Jon Hunter
     

20 Oct, 2014

1 commit


06 Aug, 2014

1 commit


24 Jun, 2014

1 commit


03 Jun, 2014

1 commit

  • As of commit 064d5cd110f9 (regulator: core: Fix the init of DT defined
    fixed regulators) the regulator core tries to query the current voltage
    of a regulator when applying constraints. This exposes a bug in the
    AS3722 regulator driver which fails to read the voltage of disabled
    regulators. The reason is that the hardware is programmed to a selector
    of 0, but none of the voltage tables include 0 as a valid selector. The
    datasheets indicate that 0 is a valid selector when the regulators are
    powered off.

    To fix this, add a range including selector 0 to the voltage tables.

    Signed-off-by: Thierry Reding
    Signed-off-by: Mark Brown

    Thierry Reding
     

18 Feb, 2014

1 commit


23 Jan, 2014

1 commit


07 Jan, 2014

2 commits


21 Dec, 2013

1 commit


03 Dec, 2013

1 commit


11 Oct, 2013

2 commits


03 Oct, 2013

2 commits

  • AS3722_SDx_VSEL_MAX means the maximum selecter, the n_voltages should be
    AS3722_SDx_VSEL_MAX + 1.

    Signed-off-by: Axel Lin
    Acked-by: Laxman Dewangan
    Signed-off-by: Mark Brown

    Axel Lin
     
  • Fix off-by-one in the equation to calculate max_uV and also adjust the _min_uV
    setting accordingly.

    For LDOs:
    The voltage select bits set the LDO output voltage 0.825V...3.3V, 25mV steps
    ....00h : LDO off
    01h-24h : V_LDO4 = 0.8V + ldo4_vsel * 25mV
    = 0.825V + (ldo4_vsel - 1h) * 25mV
    25h-3Fh : do not use
    40h-7Fh : V_LDO4 = 1.725V + (ldo4_vsel - 40h) * 25mV

    For SD2345:
    The voltage select bits set the DC/DC output voltage level and power the DC/DC
    converter down.
    ....00h : DC/DC powered down
    01h-40h : V_SD2 = 0.6V + sd2_vsel * 12.5mV
    = 0.6125V + (sd2_vsel - 1h) * 12.5mV
    41h-70h : V_SD2 = 1.4V + (sd2_vsel - 40h) * 25mV
    = 1.425V + (sd2_vsel - 41h) * 25mV
    71h-7Fh : V_SD2 = 2.6V + (sd2_vsel - 70h) * 50mV
    = 2.65V + (sd2_vsel - 71h) * 50mV

    Note, the third entry in as3722_sd2345_ranges is wrong in current code.
    Fix it based on the datasheet.

    Signed-off-by: Axel Lin
    Acked-by: Laxman Dewangan
    Signed-off-by: Mark Brown

    Axel Lin
     

21 Sep, 2013

1 commit

  • The AMS AS3722 is a compact system PMU suitable for mobile phones,
    tablets etc. It has 4 DCDC step down regulators, 3 DCDC step down
    controller, 11 LDOs.

    Add a driver to support accessing the DCDC/LDOs found on the AMS
    AS3722 PMIC using regulators.

    Signed-off-by: Laxman Dewangan
    Signed-off-by: Florian Lobmaier
    Signed-off-by: Mark Brown

    Laxman Dewangan