iio: ltr501: ltr559: fix initialization of LTR501_ALS_CONTR
authorOliver Lang <Oliver.Lang@gossenmetrawatt.com>
Thu, 10 Jun 2021 13:46:17 +0000 (15:46 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 13 Jun 2021 16:00:18 +0000 (17:00 +0100)
The ltr559 chip uses only the lowest bit of the ALS_CONTR register to
configure between active and stand-by mode. In the original driver
BIT(1) is used, which does a software reset instead.

This patch fixes the problem by using BIT(0) as als_mode_active for
the ltr559 chip.

Fixes: 8592a7eefa54 ("iio: ltr501: Add support for ltr559 chip")
Signed-off-by: Oliver Lang <Oliver.Lang@gossenmetrawatt.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Tested-by: Nikita Travkin <nikita@trvn.ru> # ltr559
Link: https://lore.kernel.org/r/20210610134619.2101372-3-mkl@pengutronix.de
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/light/ltr501.c

index 0ed3392..79898b7 100644 (file)
@@ -1208,7 +1208,7 @@ static struct ltr501_chip_info ltr501_chip_info_tbl[] = {
                .als_gain_tbl_size = ARRAY_SIZE(ltr559_als_gain_tbl),
                .ps_gain = ltr559_ps_gain_tbl,
                .ps_gain_tbl_size = ARRAY_SIZE(ltr559_ps_gain_tbl),
-               .als_mode_active = BIT(1),
+               .als_mode_active = BIT(0),
                .als_gain_mask = BIT(2) | BIT(3) | BIT(4),
                .als_gain_shift = 2,
                .info = &ltr501_info,