08 Sep, 2020

1 commit

  • regulator_notifier_call_chain() doesn't need rdev lock and rdev's
    existence is assumed in the code anyway. Remove the locks from drivers.

    Signed-off-by: Michał Mirosław
    Acked-by: Adam Thomson
    Reviewed-by: Dmitry Osipenko
    Link: https://lore.kernel.org/r/42393f66dcc4d80dcd9797be45216b4035aa96cb.1597032945.git.mirq-linux@rere.qmqm.pl
    Signed-off-by: Mark Brown

    Michał Mirosław
     

19 Aug, 2020

1 commit

  • Add regmap_cache to reduce wakeups events of interrupt if regulator is
    accessed frequently. This results in saving more power.

    Suggested-by: Daniel Kurtz
    Signed-off-by: Hsin-Yi Wang
    Acked-by: Adam Thomson
    Link: https://lore.kernel.org/r/20200812133101.2513317-1-hsinyi@chromium.org
    Signed-off-by: Mark Brown

    Hsin-Yi Wang
     

02 Jul, 2020

2 commits


13 Jan, 2020

1 commit

  • Use the new .probe_new for i2c drivers.
    These drivers do not use const struct i2c_device_id * argument, so convert
    them to utilise the simplified i2c driver registration.

    Signed-off-by: Axel Lin
    Link: https://lore.kernel.org/r/20200109155808.22003-1-axel.lin@ingics.com
    Signed-off-by: Mark Brown

    Axel Lin
     

07 Oct, 2019

1 commit

  • devm_gpiod_get_from_of_node() is being retired in favor of
    devm_fwnode_gpiod_get_index(), that behaves similar to
    devm_gpiod_get_index(), but can work with arbitrary firmware node. It
    will also be able to support secondary software nodes.

    Let's switch this driver over.

    Signed-off-by: Dmitry Torokhov
    Acked-by: Adam Thomson
    Link: https://lore.kernel.org/r/20191004231017.130290-6-dmitry.torokhov@gmail.com
    Reviewed-by: Linus Walleij
    Signed-off-by: Mark Brown

    Dmitry Torokhov
     

11 Sep, 2019

1 commit

  • This fixes 11da04af0d3b, as devm_gpiod_get_from_of_node() does
    not do translation "con-id" -> "con-id-gpios" that our bindings expects,
    and therefore it was wrong to change connection ID to be simply "enable"
    when moving to using devm_gpiod_get_from_of_node().

    Fixes: 11da04af0d3b ("regulator: da9211: Pass descriptors instead of GPIO numbers")
    Signed-off-by: Dmitry Torokhov
    Link: https://lore.kernel.org/r/20190910170246.GA56792@dtor-ws
    Signed-off-by: Mark Brown

    Dmitry Torokhov
     

25 Jun, 2019

1 commit

  • In case the requested gpio property is not found in the device tree, some
    callers of gpiod_get_from_of_node() expect a return value of NULL, others
    expect -ENOENT.
    In particular devm_fwnode_get_index_gpiod_from_child() expects -ENOENT.
    Currently it gets a NULL, which breaks the loop that tries all
    gpio_suffixes. The result is that a gpio property is not found, even
    though it is there.

    This patch changes gpiod_get_from_of_node() to return -ENOENT instead
    of NULL when the requested gpio property is not found in the device
    tree. Additionally it modifies all calling functions to properly
    evaluate the return value.

    Another approach would be to leave the return value of
    gpiod_get_from_of_node() as is and fix the bug in
    devm_fwnode_get_index_gpiod_from_child(). Other callers would still need
    to be reworked. The effort would be the same as with the chosen solution.

    Signed-off-by: Georg Waibel
    Reviewed-by: Krzysztof Kozlowski
    Reviewed-by: Linus Walleij
    Signed-off-by: Mark Brown

    Waibel Georg
     

03 May, 2019

1 commit


13 Mar, 2019

1 commit

  • The mutex for the regulator_dev must be controlled by the caller of
    the regulator_notifier_call_chain(), as described in the comment
    for that function.

    Failure to mutex lock and unlock surrounding the notifier call results
    in a kernel WARN_ON_ONCE() which will dump a backtrace for the
    regulator_notifier_call_chain() when that function call is first made.
    The mutex can be controlled using the regulator_lock/unlock() API.

    Fixes: 1028a37daa14 ("regulator: da9211: new regulator driver")
    Suggested-by: Adam Thomson
    Signed-off-by: Steve Twiss
    Signed-off-by: Mark Brown

    Steve Twiss
     

11 Dec, 2018

1 commit

  • The GPIO descriptors used by the DA9211 driver are retrieved
    during probe() and it is really helpful to have those under
    devres management because of all the errorpaths in the
    intialization.

    Using the new dev_gpiod_unhinge() call we can remove the
    devres management of the descriptor right before handing
    it over to the regulators core.

    Signed-off-by: Linus Walleij
    Reviewed-by: Marek Szyprowski
    Reviewed-by: Charles Keepax
    Signed-off-by: Mark Brown

    Linus Walleij
     

15 Oct, 2018

1 commit

  • Since the core regulator code is treating GPIO descriptors as
    nonexclusive, i.e. it assumes that the enable GPIO line may be
    shared with several regulators, let's add the flag introduced
    for fixing this problem on fixed regulators to all drivers
    fetching GPIO descriptors to avoid possible regressions.

    Reported-by: Mark Brown
    Signed-off-by: Linus Walleij
    Signed-off-by: Mark Brown

    Linus Walleij
     

17 Feb, 2018

1 commit


31 Oct, 2017

1 commit


30 Jun, 2016

1 commit


23 Dec, 2015

1 commit


30 Aug, 2015

1 commit


15 Jul, 2015

1 commit


14 Jul, 2015

1 commit


24 Feb, 2015

2 commits


29 Jan, 2015

1 commit


16 Jan, 2015

1 commit


30 Sep, 2014

2 commits


05 Sep, 2014

1 commit


03 Sep, 2014

1 commit


29 Aug, 2014

1 commit


27 Aug, 2014

1 commit


17 Aug, 2014

2 commits


26 Jul, 2014

1 commit


15 Jul, 2014

1 commit