24 Oct, 2013

2 commits


07 Oct, 2013

1 commit

  • The device tree binding of Palmas regulator driver says as:

    palmas_pmis {
    compatible = "ti,palmas-pmic";
    ...
    regulators {
    ...
    }
    };

    In this "regulators" subnode is expected to be part of parent node, not
    the outside of parent node. Hence to get the regulator node, the correct
    call is of_get_child_by_name() rather than of_find_node_by_name() which
    actually searches the "regulators" node from the parent node to end of DTS
    file.

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

    Laxman Dewangan
     

17 Sep, 2013

6 commits


10 Sep, 2013

1 commit


04 Sep, 2013

1 commit

  • With the following change
    ---------
    commit ad02e846878ca35e9d3fa584be8ee770e9e14fce
    Author: Axel Lin

    regulator: palmas: Return raw register values as the selectors in [get|set]_voltage_sel

    Don't adjust the selector in [get|set]_voltage_sel, fix it in list_voltage() instead.

    For smps*(except smps10), the vsel reg-value and voltage mapping as below:
    ----------
    The list_voltage() takes the true value of selector which is
    programmed in the register. As per smsp voltage table
    reg-value volt (uV) ( Assume RANGE is x1 )
    0 0
    1 500000
    2 500000
    3 500000
    4 500000
    5 500000
    6 500000 (0.49V + 1 * 0.01V) * RANGE
    7 510000 (0.49V + 2 * 0.01V) * RANGE
    8 520000 (0.49V + 3 * 0.01V) * RANGE
    9 530000 (0.49V + 4 * 0.01V) * RANGE
    ....
    121 1650000 (0.49V + 116 * 0.1) * RANGE

    Hence making n_voltages for smps to 122.

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

    Laxman Dewangan
     

01 Sep, 2013

1 commit


12 Aug, 2013

1 commit

  • SMPS10 has two outputs OUT1 and OUT2 and have one input IN1.
    SMPS10-OUT2 is connected to SMPS10-IN1 and can be configured either
    in BOOST mode or BYPASS mode. regulator_enable of SMPS10-OUT2 configures
    it in BOOST mode. For BYPASS mode regulator_allow_bypass() API can be
    used. SMPS10-OUT1 is connected to SMPS10-OUT2 and can be enabled using
    regulator_enable().

    [ axel.lin@ingics.com : Simplify regulator_desc setting for SMPS10_[OUT1|OUT2]

    Signed-off-by: J Keerthy
    Signed-off-by: Laxman Dewangan
    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Axel Lin
    Signed-off-by: Mark Brown

    Kishon Vijay Abraham I
     

30 Jul, 2013

1 commit


27 Jun, 2013

1 commit


20 Jun, 2013

1 commit


30 May, 2013

2 commits


28 Apr, 2013

1 commit


22 Apr, 2013

2 commits


19 Apr, 2013

4 commits

  • SMPS3 and SMPS7 do not have tstep_addr setting, so current code actually
    writes 0 to smps12_ctl (offset is 0) register when set_ramp_delay callback
    is called for SMPS3 and SMPS7.

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

    Axel Lin
     
  • When SMPS45 is set to off and LDO8 tracking is enabled, the output voltage can
    be set from 0.45 to 1.65 V. Thus set min_uV to be 450000.

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

    Axel Lin
     
  • The Palma device like TPS65913 have the mode mask which is also
    used for enable/disable the rails. The mode bits are defined as
    00: OFF
    01: AUTO
    10: ECO
    11: Forced PWM

    and modes are set accordingly as
    REGULATOR_MODE_NORMAL: AUTO
    REGULATOR_MODE_IDLE: ECO
    REGULATOR_MODE_FAST: PWM

    Two issue observed:
    1. If client calls following sequence:
    regulator_enable(),
    regulator_set_mode(FAST),
    regulator_disable()

    and again the regulator_enable() then the mode is reset
    to NORMAL inplace of keeping the mode as FAST.

    Fixing this by storing the current mode configured by client
    and restoring modes when enable() is called after disable().

    2. In following sequence, the regulator get enabled:
    regulator_disable()
    regulator_set_mode(FAST),

    Fixing this by updating new mode in register only if it is
    enabled.

    Signed-off-by: Laxman Dewangan
    Acked-by: Graeme Gregory
    Signed-off-by: Mark Brown

    Laxman Dewangan
     
  • Currently Palma regulator driver support the ramp delay
    through rail specific platform data.

    As regulator framework support the configuration of ramp
    delay through regulator constraint, using the framework
    method and removing the platform specific data approach.

    Signed-off-by: Laxman Dewangan
    Acked-by: Graeme Gregory
    Signed-off-by: Mark Brown

    Laxman Dewangan
     

17 Apr, 2013

3 commits

  • LDO8 of Palma device like tps65913 support the tracking mode
    on which LDO8 track the SMPS45 voltage when SMPS45 is ON
    and use the LDO8.VOLTAGE_SEL register when SMPS45 is OFF.

    On track mode, the steps of voltage change for LDO8 is 25mV
    where in non-tracking mode it is 50mV. Set the steps accordingly.
    Number of voltage count is still same for both the cases.

    Signed-off-by: Laxman Dewangan
    Acked-by: Graeme Gregory
    Signed-off-by: Mark Brown

    Laxman Dewangan
     
  • Palmas device have control outputs like REGEN1, REGEN2, REGEN3,
    SYSEN1 and SYSEN2. These control outputs can be used for controlling
    external voltage switches to enabled/disable voltage outputs.

    Add support of these control outputs through regulator framework.

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

    Laxman Dewangan
     
  • Clear the sleep/warm reset bits when it is not selected through
    regulator platform data. This will make sure that configuration
    is inline with the platform data regardless of boot/POR
    configuration.

    Signed-off-by: Laxman Dewangan
    Acked-by: Graeme Gregory
    Signed-off-by: Mark Brown

    Laxman Dewangan
     

28 Mar, 2013

1 commit


25 Mar, 2013

1 commit


20 Mar, 2013

1 commit

  • When palmas regulator probe creates stack dump during initialization
    due to some crash, it prints the call trace as follows:
    [3.166321] [] (_regmap_read+0x5c/0xa8) from [] (regmap_read+0x44/0x5c)
    [3.174669] [] (regmap_read+0x44/0x5c) from [] (palmas_probe+0x240/0x7d0)
    [3.183193] [] (palmas_probe+0x240/0x7d0) from [] (platform_drv_probe+0x14/0x18)
    [3.192322] [] (platform_drv_probe+0x14/0x18) from [] (driver_probe_device+0x104/0x214)
    [3.202055] [] (driver_probe_device+0x104/0x214) from [] (bus_for_each_drv+0x5c/0x88)

    The palmas_probe is current name but it helps on debugging if the
    function name is more appropriate to the sub-module name.

    Renaming the palmas_probe() to palmas_regulator_probe() and
    palmas_remove() to palams_regulator_remove().

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

    Laxman Dewangan
     

13 Mar, 2013

1 commit


08 Mar, 2013

1 commit

  • Fix the DT parsing to agree with the bindings document. Some small changes
    to the value names and also fix the handling of boolean values. They were
    previously using prop = 1/0, now just use of_property_read_bool calls.

    Signed-off-by: Graeme Gregory
    Signed-off-by: Mark Brown

    Graeme Gregory
     

04 Mar, 2013

1 commit


01 Mar, 2013

1 commit


19 Feb, 2013

1 commit


04 Feb, 2013

1 commit


30 Jan, 2013

1 commit

  • of_find_node_by_name() returns a node pointer with refcount incremented, use
    of_node_put() on it when done.

    of_find_node_by_name() will call of_node_put() against from parameter,
    thus we also need to call of_node_get(from) before calling
    of_find_node_by_name().

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

    Axel Lin
     

04 Jan, 2013

1 commit

  • CONFIG_HOTPLUG is going away as an option. As a result, the __dev*
    markings need to be removed.

    This change removes the use of __devinit, __devexit_p, __devinitdata,
    __devinitconst, and __devexit from these drivers.

    Based on patches originally written by Bill Pemberton, but redone by me
    in order to handle some of the coding style issues better, by hand.

    Cc: Bill Pemberton
    Cc: Liam Girdwood
    Cc: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

10 Dec, 2012

1 commit