This patch adds a return_max label for the two cases that need to set the lux to TSL2X7X_LUX_CALC_OVER_FLOW and return.
Signed-off-by: Brian Masney <masn...@onstation.org> --- drivers/staging/iio/light/tsl2x7x.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/staging/iio/light/tsl2x7x.c b/drivers/staging/iio/light/tsl2x7x.c index 42ed9c015aaf..898304d65f64 100644 --- a/drivers/staging/iio/light/tsl2x7x.c +++ b/drivers/staging/iio/light/tsl2x7x.c @@ -364,10 +364,8 @@ static int tsl2x7x_get_lux(struct iio_dev *indio_dev) chip->als_cur_info.als_ch0 = ch0; chip->als_cur_info.als_ch1 = ch1; - if (ch0 >= chip->als_saturation || ch1 >= chip->als_saturation) { - lux = TSL2X7X_LUX_CALC_OVER_FLOW; + if (ch0 >= chip->als_saturation || ch1 >= chip->als_saturation) goto return_max; - } if (!ch0) { /* have no data, so return LAST VALUE */ @@ -418,11 +416,12 @@ static int tsl2x7x_get_lux(struct iio_dev *indio_dev) lux = lux64; lux = (lux + 500) / 1000; - if (lux > TSL2X7X_LUX_CALC_OVER_FLOW) /* check for overflow */ + if (lux > TSL2X7X_LUX_CALC_OVER_FLOW) { /* check for overflow */ +return_max: lux = TSL2X7X_LUX_CALC_OVER_FLOW; + } /* Update the structure with the latest lux. */ -return_max: chip->als_cur_info.lux = lux; ret = lux; -- 2.13.6