The lm3533_als_set_input_mode and lm3533_als_set_resistor functions are
used only in lm3533_als_setup. Incorporate their code into
lm3533_als_setup directly to simplify driver readability.

Signed-off-by: Svyatoslav Ryhel <[email protected]>
---
 drivers/iio/light/lm3533-als.c | 61 +++++++++-------------------------
 1 file changed, 16 insertions(+), 45 deletions(-)

diff --git a/drivers/iio/light/lm3533-als.c b/drivers/iio/light/lm3533-als.c
index fb61904f110f..52136ca1abc9 100644
--- a/drivers/iio/light/lm3533-als.c
+++ b/drivers/iio/light/lm3533-als.c
@@ -716,61 +716,32 @@ static const struct attribute_group 
lm3533_als_attribute_group = {
        .attrs = lm3533_als_attributes
 };
 
-static int lm3533_als_set_input_mode(struct lm3533_als *als, bool pwm_mode)
-{
-       u8 mask = LM3533_ALS_INPUT_MODE_MASK;
-       u8 val;
-       int ret;
-
-       if (pwm_mode)
-               val = mask;     /* pwm input */
-       else
-               val = 0;        /* analog input */
-
-       ret = regmap_update_bits(als->lm3533->regmap, LM3533_REG_ALS_CONF,
-                                mask, val);
-       if (ret) {
-               dev_err(&als->pdev->dev, "failed to set input mode %d\n",
-                                                               pwm_mode);
-               return ret;
-       }
-
-       return 0;
-}
-
-static int lm3533_als_set_resistor(struct lm3533_als *als, u8 val)
-{
-       int ret;
-
-       if (val < LM3533_ALS_RESISTOR_MIN || val > LM3533_ALS_RESISTOR_MAX) {
-               dev_err(&als->pdev->dev, "invalid resistor value\n");
-               return -EINVAL;
-       }
-
-       ret = regmap_write(als->lm3533->regmap, LM3533_REG_ALS_RESISTOR_SELECT,
-                          val);
-       if (ret) {
-               dev_err(&als->pdev->dev, "failed to set resistor\n");
-               return ret;
-       }
-
-       return 0;
-}
-
 static int lm3533_als_setup(struct lm3533_als *als,
                            const struct lm3533_als_platform_data *pdata)
 {
+       struct device *dev = &als->pdev->dev;
        int ret;
 
-       ret = lm3533_als_set_input_mode(als, pdata->pwm_mode);
+       ret = regmap_update_bits(als->lm3533->regmap, LM3533_REG_ALS_CONF,
+                                LM3533_ALS_INPUT_MODE_MASK,
+                                pdata->pwm_mode ? LM3533_ALS_INPUT_MODE_MASK : 
0);
        if (ret)
-               return ret;
+               return dev_err_probe(dev, ret, "failed to set input mode %d\n",
+                                    pdata->pwm_mode);
+
 
        /* ALS input is always high impedance in PWM-mode. */
        if (!pdata->pwm_mode) {
-               ret = lm3533_als_set_resistor(als, pdata->r_select);
+               if (pdata->r_select < LM3533_ALS_RESISTOR_MIN ||
+                   pdata->r_select > LM3533_ALS_RESISTOR_MAX) {
+                       dev_err(&als->pdev->dev, "invalid resistor value\n");
+                       return -EINVAL;
+               }
+
+               ret = regmap_write(als->lm3533->regmap, 
LM3533_REG_ALS_RESISTOR_SELECT,
+                                  pdata->r_select);
                if (ret)
-                       return ret;
+                       return dev_err_probe(dev, ret, "failed to set 
resistor\n");
        }
 
        return 0;
-- 
2.51.0

Reply via email to