1
0
Fork 0

iio: humidity: hts221: do not overwrite reserved data during power-down

GENMASK(6, 3) in CTRL_REG1 and GENMASK(6, 2) in CTRL_REG2 are marked
reserved. Do not changed the original value (not declared in the
datasheet) during power-down/suspend routines.

Fixes: e4a70e3e7d (iio: humidity: add support to hts221 rh/temp device)
Fixes: b7079eeac5 (iio: humidity: hts221: add power management support)
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
hifive-unleashed-5.1
Lorenzo Bianconi 2017-07-17 19:38:58 +02:00 committed by Jonathan Cameron
parent 2ede27402a
commit f6f58d9d93
1 changed files with 4 additions and 6 deletions

View File

@ -305,11 +305,10 @@ int hts221_power_on(struct hts221_hw *hw)
int hts221_power_off(struct hts221_hw *hw)
{
__le16 data = 0;
int err;
err = hw->tf->write(hw->dev, HTS221_REG_CNTRL1_ADDR, sizeof(data),
(u8 *)&data);
err = hts221_write_with_mask(hw, HTS221_REG_CNTRL1_ADDR,
HTS221_ENABLE_MASK, false);
if (err < 0)
return err;
@ -692,11 +691,10 @@ static int __maybe_unused hts221_suspend(struct device *dev)
{
struct iio_dev *iio_dev = dev_get_drvdata(dev);
struct hts221_hw *hw = iio_priv(iio_dev);
__le16 data = 0;
int err;
err = hw->tf->write(hw->dev, HTS221_REG_CNTRL1_ADDR, sizeof(data),
(u8 *)&data);
err = hts221_write_with_mask(hw, HTS221_REG_CNTRL1_ADDR,
HTS221_ENABLE_MASK, false);
return err < 0 ? err : 0;
}