Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

staging:iio:ade7753/ade7754/ade7759: Use spi_w8r16be() instead of spi_w8r16()

Using spi_w8r16be() will do the conversion of the result from big endian to
native endian in the helper function. This makes the code a bit smaller and also
keeps sparse happy. Fixes the following sparse warnings:

drivers/staging/iio/meter/ade7753.c:97:29: warning: incorrect type in argument 1 (different base types)
drivers/staging/iio/meter/ade7753.c:97:29: expected restricted __be16 const [usertype] *p
drivers/staging/iio/meter/ade7753.c:97:29: got unsigned short [usertype] *val

drivers/staging/iio/meter/ade7754.c:97:29: warning: incorrect type in argument 1 (different base types)
drivers/staging/iio/meter/ade7754.c:97:29: expected restricted __be16 const [usertype] *p
drivers/staging/iio/meter/ade7754.c:97:29: got unsigned short [usertype] *val

drivers/staging/iio/meter/ade7759.c:97:29: warning: incorrect type in argument 1 (different base types)
drivers/staging/iio/meter/ade7759.c:97:29: expected restricted __be16 const [usertype] *p
drivers/staging/iio/meter/ade7759.c:97:29: got unsigned short [usertype] *val

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Mark Brown <broonie@linaro.org>

authored by

Lars-Peter Clausen and committed by
Mark Brown
23590742 600ba98b

+3 -6
+1 -2
drivers/staging/iio/meter/ade7753.c
··· 86 86 struct ade7753_state *st = iio_priv(indio_dev); 87 87 ssize_t ret; 88 88 89 - ret = spi_w8r16(st->us, ADE7753_READ_REG(reg_address)); 89 + ret = spi_w8r16be(st->us, ADE7753_READ_REG(reg_address)); 90 90 if (ret < 0) { 91 91 dev_err(&st->us->dev, "problem when reading 16 bit register 0x%02X", 92 92 reg_address); ··· 94 94 } 95 95 96 96 *val = ret; 97 - *val = be16_to_cpup(val); 98 97 99 98 return 0; 100 99 }
+1 -2
drivers/staging/iio/meter/ade7754.c
··· 86 86 struct ade7754_state *st = iio_priv(indio_dev); 87 87 int ret; 88 88 89 - ret = spi_w8r16(st->us, ADE7754_READ_REG(reg_address)); 89 + ret = spi_w8r16be(st->us, ADE7754_READ_REG(reg_address)); 90 90 if (ret < 0) { 91 91 dev_err(&st->us->dev, "problem when reading 16 bit register 0x%02X", 92 92 reg_address); ··· 94 94 } 95 95 96 96 *val = ret; 97 - *val = be16_to_cpup(val); 98 97 99 98 return 0; 100 99 }
+1 -2
drivers/staging/iio/meter/ade7759.c
··· 86 86 struct ade7759_state *st = iio_priv(indio_dev); 87 87 int ret; 88 88 89 - ret = spi_w8r16(st->us, ADE7759_READ_REG(reg_address)); 89 + ret = spi_w8r16be(st->us, ADE7759_READ_REG(reg_address)); 90 90 if (ret < 0) { 91 91 dev_err(&st->us->dev, "problem when reading 16 bit register 0x%02X", 92 92 reg_address); ··· 94 94 } 95 95 96 96 *val = ret; 97 - *val = be16_to_cpup(val); 98 97 99 98 return 0; 100 99 }