24 Oct, 2013

5 commits


18 Oct, 2013

1 commit

  • These patches add the ability to create an alternative device on which
    a lookup for a certain supply should be conducted.

    A common use-case for this would be devices that are logically
    represented as a collection of drivers within Linux but are are
    presented as a single device from device tree. It this case it is
    necessary for each sub device to locate their supply data on the main
    device.

    Signed-off-by: Charles Keepax
    Signed-off-by: Mark Brown

    Charles Keepax
     

11 Oct, 2013

2 commits


19 Sep, 2013

1 commit

  • The turn-on time of the regulator depends on the regulator device's
    electrical characteristics. Sometimes regulator turn-on time also
    depends on the capacitive load on the given platform and it can be
    more than the datasheet value.

    The driver provides the enable-time as per datasheet.

    Add support for configure the enable ramp time through regulator
    constraints so that regulator core can take this value for enable
    time for that regulator.

    Signed-off-by: Laxman Dewangan
    Acked-by: Stephen Warren
    Signed-off-by: Mark Brown

    Laxman Dewangan
     

17 Sep, 2013

3 commits


11 Sep, 2013

1 commit


01 Sep, 2013

6 commits


30 Aug, 2013

1 commit


07 Aug, 2013

1 commit


03 Aug, 2013

1 commit


31 Jul, 2013

2 commits

  • While the majority of supplies on devices are mandatory and can't be
    physically omitted for electrical reasons some devices do have optional
    supplies and need to know if they are missing, MMC being the most common
    of these.

    Currently the core accurately reports all errors when regulators are
    requested since it does not know if the supply is one that must be provided
    even if by a regulator software does not know about or if it is one that
    may genuinely be disconnected. In order to allow this behaviour to be
    changed and stub regulators to be provided in the former case add a new
    regulator request function regulator_get_optional() which provides a hint
    to the core that the regulator may genuinely not be connected.

    Currently the implementation is identical to the current behaviour, future
    patches will add support in the core for returning stub regulators in the
    case where normal regulator_get() fails and the board has requested it.

    Signed-off-by: Mark Brown
    Acked-by: Chris Ball

    Mark Brown
     
  • Signed-off-by: Mark Brown

    Mark Brown
     

25 Jul, 2013

1 commit


15 Jul, 2013

3 commits

  • Some hardwares support disabling ramp delay, so adding ramp_disable flag to
    constraints. It will be used to figure out whether ramp_delay in constraints
    is explicitly set to zero or its unintialized (zero by default).
    And we don't need to call set_voltage_time_sel() for regulators for whom ramp
    delay is disabled in constraints.

    Signed-off-by: Yadwinder Singh Brar
    Signed-off-by: Mark Brown

    Yadwinder Singh Brar
     
  • Many regulators have several linear ranges of selector with different
    step sizes, for example offering better resolution at lower voltages.
    Provide regulator_{map,list}_voltage_linear_range() allowing these
    regulators to use generic code. To do so a table of regulator_linear_range
    structs needs to be pointed to from the descriptor.

    This was inspired by similar code included in a driver submission from
    Chao Xie and Yi Zhang at Marvell.

    Signed-off-by: Mark Brown

    Mark Brown
     
  • The expected semantic for something expressed as a tolerance is that it
    should deliver the specified value with some deviation allowed but this
    is not what set_voltage_tol() currently does. Instead it just passes
    the maximum possible range to set_voltage() which will typically result
    in a voltage aimed at lower than the target voltage.

    Instead first try to set a voltage between the target voltage and the
    upper limit, then fall back on the full range. This will be much more
    robust against physical variation in systems and makes the API behave
    more like users would expect.

    Signed-off-by: Mark Brown

    Mark Brown
     

01 Jul, 2013

1 commit


11 Jun, 2013

1 commit

  • Some platforms don't support the AB8500 external regulators, so instead
    of having a list of is_() calls prior to calling
    ab8500_ext_regulator_init() from ab8500_regulator_probe(), we can only
    register as a platform device on platforms which require them. It means
    we also have more control over them when booting with Device Tree.

    Signed-off-by: Lee Jones
    Signed-off-by: Mark Brown

    Lee Jones
     

07 Jun, 2013

1 commit

  • Add regulator_get_linear_step(), which returns the voltage step size
    between VSEL values for linear regulators. This is intended for use
    by regulator consumers which build their own voltage-to-VSEL tables.

    Signed-off-by: Paul Walmsley
    Reviewed-by: Andrew Chew
    Cc: Matthew Longnecker
    Signed-off-by: Mark Brown

    Paul Walmsley
     

28 Apr, 2013

5 commits


18 Apr, 2013

1 commit

  • A lot of regulator hardware has ascendant voltage list.
    This patch adds regulator_map_voltage_ascend() and export it.

    Drivers that have ascendant voltage list can use this as their map_voltage()
    operation, this is more efficient than default regulator_map_voltage_iterate()
    function.

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

    Axel Lin
     

12 Apr, 2013

1 commit


05 Apr, 2013

2 commits