Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bcf5104e authored by Brian Masney's avatar Brian Masney Committed by Jonathan Cameron
Browse files

staging: iio: isl29028: move failure logging into isl29028_set_als_scale()



When isl29028_set_als_scale() fails, it was up to both callers to log
the failure message. This patch moves the logging into
isl29028_set_als_scale() to reduce the overall amount of code in the
driver.

Signed-off-by: default avatarBrian Masney <masneyb@onstation.org>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent ae1e5238
Loading
Loading
Loading
Loading
+14 −13
Original line number Original line Diff line number Diff line
@@ -123,11 +123,22 @@ static int isl29028_enable_proximity(struct isl29028_chip *chip, bool enable)


static int isl29028_set_als_scale(struct isl29028_chip *chip, int lux_scale)
static int isl29028_set_als_scale(struct isl29028_chip *chip, int lux_scale)
{
{
	struct device *dev = regmap_get_device(chip->regmap);
	int val = (lux_scale == 2000) ? ISL29028_CONF_ALS_RANGE_HIGH_LUX :
	int val = (lux_scale == 2000) ? ISL29028_CONF_ALS_RANGE_HIGH_LUX :
					ISL29028_CONF_ALS_RANGE_LOW_LUX;
					ISL29028_CONF_ALS_RANGE_LOW_LUX;
	int ret;


	return regmap_update_bits(chip->regmap, ISL29028_REG_CONFIGURE,
	ret = regmap_update_bits(chip->regmap, ISL29028_REG_CONFIGURE,
				 ISL29028_CONF_ALS_RANGE_MASK, val);
				 ISL29028_CONF_ALS_RANGE_MASK, val);
	if (ret < 0) {
		dev_err(dev, "%s(): Error %d setting the ALS scale\n", __func__,
			ret);
		return ret;
	}

	chip->lux_scale = lux_scale;

	return ret;
}
}


static int isl29028_set_als_ir_mode(struct isl29028_chip *chip,
static int isl29028_set_als_ir_mode(struct isl29028_chip *chip,
@@ -318,13 +329,6 @@ static int isl29028_write_raw(struct iio_dev *indio_dev,
		}
		}


		ret = isl29028_set_als_scale(chip, val);
		ret = isl29028_set_als_scale(chip, val);
		if (ret < 0) {
			dev_err(dev,
				"Setting lux scale fail with error %d\n", ret);
			break;
		}

		chip->lux_scale = val;
		break;
		break;
	default:
	default:
		dev_err(dev, "Unsupported channel type\n");
		dev_err(dev, "Unsupported channel type\n");
@@ -443,10 +447,7 @@ static int isl29028_chip_init_and_power_on(struct isl29028_chip *chip)
	if (ret < 0)
	if (ret < 0)
		return ret;
		return ret;


	ret = isl29028_set_als_scale(chip, chip->lux_scale);
	return isl29028_set_als_scale(chip, chip->lux_scale);
	if (ret < 0)
		dev_err(dev, "setting als scale failed, err = %d\n", ret);
	return ret;
}
}


static bool isl29028_is_volatile_reg(struct device *dev, unsigned int reg)
static bool isl29028_is_volatile_reg(struct device *dev, unsigned int reg)