24 Nov, 2011

1 commit

  • With device tree support for regulators, its needed that the
    regulator_dev->dev device has the right of_node attached.
    To be able to do this add an additional parameter to the
    regulator_register() api, wherein the dt-adapted driver can
    then pass this additional info onto the regulator core.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Mark Brown

    Rajendra Nayak
     

01 Nov, 2011

1 commit


27 May, 2011

1 commit


12 Jan, 2011

1 commit

  • Change the interface used by set_voltage() to report the selected value
    to the regulator core in terms of a selector used by list_voltage().
    This allows the regulator core to know the voltage that was chosen
    without having to do an explict get_voltage(), which would be much more
    expensive as it will generally access hardware.

    Signed-off-by: Mark Brown
    Signed-off-by: Liam Girdwood

    Mark Brown
     

03 Mar, 2010

1 commit

  • On Wed, Feb 24, 2010 at 08:40:56PM +0000, Mark Brown wrote:
    > On Wed, Feb 24, 2010 at 11:21:26AM -0800, Dmitry Torokhov wrote:
    > > On Wed, Feb 24, 2010 at 07:14:03PM +0000, Mark Brown wrote:
    >
    > > > This doesn't help unless you also provide a way for users to obtain a
    > > > struct wm8400.
    >
    > > Why would they need it? Only code that creates instances of wm8400 needs
    > > to know the definition of the sturcture, the rest can simply pass the
    > > pointer around.
    >
    > > I guess there is disconnect between us and I do not see any users of
    > > wm8400_register_regulator() in linux-next... Is there another tree I
    > > could peek at?
    >
    > There are no users in mainline. This would be called by board specific
    > code from the init callback of the wm8400 - you'd need to pass that
    > callback the struct wm8400.
    >
    > In any case, this is clearly an unrelated change to whatever else you
    > were doing to the driver so should be split off into a separate patch,
    > but if this is being changed at all then it'd be much more sensible to
    > change it to use a more modern pattern which completely removes the
    > wm8400_register_regulator() function and just uses platform data.

    Fair enough, I removed the offending part, updated patch below.

    --
    Dmitry

    regulator: wm8400 - cleanup platform driver data handling

    Driver data set by platform_set_drvdata() is for private use of
    the driver currently bound to teh device and not for use by parent,
    subsystem and anyone else.

    Signed-off-by: Dmitry Torokhov
    Acked-by: Mark Brown
    Signed-off-by: Liam Girdwood

    Dmitry Torokhov
     

15 Jun, 2009

2 commits

  • In the near future, the driver core is going to not allow direct access
    to the driver_data pointer in struct device. Instead, the functions
    dev_get_drvdata() and dev_set_drvdata() should be used. These functions
    have been around since the beginning, so are backwards compatible with
    all older kernel versions.

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

    Greg Kroah-Hartman
     
  • Regulators need to be available early in init in order to allow them
    to be available for consumers when requested. This is generally done
    by registering them at subsys_initcall() time but not all regulator
    drivers have done that. Convert these drivers to do so in order to
    mimimise future support.

    Signed-off-by: Mark Brown
    Acked-by: Mike Rapoport
    Signed-off-by: Liam Girdwood

    Mark Brown
     

31 Mar, 2009

2 commits


17 Jan, 2009

1 commit

  • A pointer to wm8400_regulator_probe is passed to the core via
    platform_driver_register and so the function must not disappear when the
    .init sections are discarded. Otherwise (if also having HOTPLUG=y)
    unbinding and binding a device to the driver via sysfs will result in an
    oops as does a device being registered late.

    An alternative to this patch is using platform_driver_probe instead of
    platform_driver_register plus removing the pointer to the probe function
    from the struct platform_driver.

    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Liam Girdwood

    Uwe Kleine-König
     

14 Oct, 2008

1 commit

  • The WM8400 provides two programmable DCDC step-down (buck) convertors
    and four low-dropout (LDO) regulators. This driver provides support for
    runtime managment of these in the standard regulator API.

    Support for configuration of the suspend and hibernate mode behaviour
    of the regulators is not yet included.

    Signed-off-by: Mark Brown
    Signed-off-by: Liam Girdwood

    Mark Brown