iio: chemical: sps30: Explicity truncate constant by masking
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 13 Oct 2019 09:55:15 +0000 (10:55 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Fri, 18 Oct 2019 18:52:03 +0000 (19:52 +0100)
When breaking up a constant to write to two 8 bit registers
it isn't obvious to sparse that it was intentional.

CHECK   drivers/iio/chemical/sps30.c
drivers/iio/chemical/sps30.c:120:30: warning: cast truncates bits from constant value (8004 becomes 4)

So in the interests of minimising noisy warnings, let us add
a mask.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Tomasz Duszynski <tduszyns@gmail.com>
drivers/iio/chemical/sps30.c

index edbb956e81e869b4a0d9a15c6b796bdf06053f0e..acb9f8ecbb3da1c3684b3e95cdb8c265820b25b1 100644 (file)
@@ -117,7 +117,7 @@ static int sps30_do_cmd(struct sps30_state *state, u16 cmd, u8 *data, int size)
                break;
        case SPS30_READ_AUTO_CLEANING_PERIOD:
                buf[0] = SPS30_AUTO_CLEANING_PERIOD >> 8;
-               buf[1] = (u8)SPS30_AUTO_CLEANING_PERIOD;
+               buf[1] = (u8)(SPS30_AUTO_CLEANING_PERIOD & 0xff);
                /* fall through */
        case SPS30_READ_DATA_READY_FLAG:
        case SPS30_READ_DATA: