The patch

   regulator: wm8400: Get rid of wm8400_block_read/wm8400_set_bits functions

has been applied to the regulator tree at

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git 

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.  

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark

>From e08abeca39673e1045ca1e5a90bd7fef69d0fe8f Mon Sep 17 00:00:00 2001
From: Axel Lin <axel....@ingics.com>
Date: Wed, 27 Feb 2019 09:30:53 +0800
Subject: [PATCH] regulator: wm8400: Get rid of
 wm8400_block_read/wm8400_set_bits functions

The only user of wm8400_block_read/wm8400_set_bits functions is the
wm8400 regulator driver. At the context of all the callers, we can
use regmap_bulk_read/regmap_update_bits directly.
Thus remove wm8400_block_read/wm8400_set_bits functions.

Signed-off-by: Axel Lin <axel....@ingics.com>
Acked-by: Charles Keepax <ckee...@opensource.cirrus.com>
Signed-off-by: Mark Brown <broo...@kernel.org>
---
 drivers/mfd/wm8400-core.c            |  6 ------
 drivers/regulator/wm8400-regulator.c | 17 ++++++++---------
 include/linux/mfd/wm8400-private.h   |  8 --------
 3 files changed, 8 insertions(+), 23 deletions(-)

diff --git a/drivers/mfd/wm8400-core.c b/drivers/mfd/wm8400-core.c
index 8a98a2fc74e1..7eab2bedad93 100644
--- a/drivers/mfd/wm8400-core.c
+++ b/drivers/mfd/wm8400-core.c
@@ -35,12 +35,6 @@ static bool wm8400_volatile(struct device *dev, unsigned int 
reg)
        }
 }
 
-int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data)
-{
-       return regmap_bulk_read(wm8400->regmap, reg, data, count);
-}
-EXPORT_SYMBOL_GPL(wm8400_block_read);
-
 static int wm8400_register_codec(struct wm8400 *wm8400)
 {
        const struct mfd_cell cell = {
diff --git a/drivers/regulator/wm8400-regulator.c 
b/drivers/regulator/wm8400-regulator.c
index fb1837657b64..40c4e6628471 100644
--- a/drivers/regulator/wm8400-regulator.c
+++ b/drivers/regulator/wm8400-regulator.c
@@ -36,13 +36,12 @@ static const struct regulator_ops wm8400_ldo_ops = {
 
 static unsigned int wm8400_dcdc_get_mode(struct regulator_dev *dev)
 {
-       struct wm8400 *wm8400 = rdev_get_drvdata(dev);
+       struct regmap *rmap = rdev_get_regmap(dev);
        int offset = (rdev_get_id(dev) - WM8400_DCDC1) * 2;
        u16 data[2];
        int ret;
 
-       ret = wm8400_block_read(wm8400, WM8400_DCDC1_CONTROL_1 + offset, 2,
-                               data);
+       ret = regmap_bulk_read(rmap, WM8400_DCDC1_CONTROL_1 + offset, data, 2);
        if (ret != 0)
                return 0;
 
@@ -63,36 +62,36 @@ static unsigned int wm8400_dcdc_get_mode(struct 
regulator_dev *dev)
 
 static int wm8400_dcdc_set_mode(struct regulator_dev *dev, unsigned int mode)
 {
-       struct wm8400 *wm8400 = rdev_get_drvdata(dev);
+       struct regmap *rmap = rdev_get_regmap(dev);
        int offset = (rdev_get_id(dev) - WM8400_DCDC1) * 2;
        int ret;
 
        switch (mode) {
        case REGULATOR_MODE_FAST:
                /* Datasheet: active with force PWM */
-               ret = wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_2 + offset,
+               ret = regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_2 + offset,
                                      WM8400_DC1_FRC_PWM, WM8400_DC1_FRC_PWM);
                if (ret != 0)
                        return ret;
 
-               return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
+               return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
                                       WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP,
                                       WM8400_DC1_ACTIVE);
 
        case REGULATOR_MODE_NORMAL:
                /* Datasheet: active */
-               ret = wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_2 + offset,
+               ret = regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_2 + offset,
                                      WM8400_DC1_FRC_PWM, 0);
                if (ret != 0)
                        return ret;
 
-               return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
+               return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
                                       WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP,
                                       WM8400_DC1_ACTIVE);
 
        case REGULATOR_MODE_IDLE:
                /* Datasheet: standby */
-               return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
+               return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
                                       WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP, 0);
        default:
                return -EINVAL;
diff --git a/include/linux/mfd/wm8400-private.h 
b/include/linux/mfd/wm8400-private.h
index 4ee908f5b834..43d0d307e2e3 100644
--- a/include/linux/mfd/wm8400-private.h
+++ b/include/linux/mfd/wm8400-private.h
@@ -923,12 +923,4 @@ struct wm8400 {
 #define WM8400_LINE_CMP_VTHD_SHIFT                   0  /* LINE_CMP_VTHD - 
[3:0] */
 #define WM8400_LINE_CMP_VTHD_WIDTH                   4  /* LINE_CMP_VTHD - 
[3:0] */
 
-int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data);
-
-static inline int wm8400_set_bits(struct wm8400 *wm8400, u8 reg,
-                                 u16 mask, u16 val)
-{
-       return regmap_update_bits(wm8400->regmap, reg, mask, val);
-}
-
 #endif
-- 
2.20.1

Reply via email to