Staging: iio: Fix sparse warnings
Subsystems (4)
cover Staging: iio: Fix sparse warnings
Fix sparse warnings regarding cast to restricted __be16 in iio drivers.
Ksenija Stanojevic (2):
Staging: iio: impedance-analyzer: Fix sparse warning
Staging: iio: adc: Fix sparse warning
drivers/staging/iio/adc/ad7816.c | 5 +++-- drivers/staging/iio/impedance-analyzer/ad5933.c | 11 ++++++----- 2 files changed, 9 insertions(+), 7 deletions(-)
Signature · 1 line
1.9.1
PATCH 1/2 Staging: iio: impedance-analyzer: Fix sparse warning
Fix following sparse endian warning:
drivers/staging/iio/impedance-analyzer/ad5933.c:671:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:671:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:671:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:671:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:672:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:672:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:672:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:672:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:674:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:674:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:674:34: warning: cast to restricted __be16 drivers/staging/iio/impedance-analyzer/ad5933.c:674:34: warning: cast to restricted __be16
--- drivers/staging/iio/impedance-analyzer/ad5933.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
drivers/staging/iio/impedance-analyzer/ad5933.c +6 -5
@@ -644,7 +644,8 @@ static void ad5933_work(struct work_struct *work)struct ad5933_state *st =container_of (work, struct ad5933_state, work.work);struct iio_dev *indio_dev =i2c_get_clientdata (st->client); -signed short buf[2 ]; +__be16 buf[2 ]; +int val[2 ];unsigned char status;mutex_lock (&indio_dev->mlock);
@@ -668,12 +669,12 @@ static void ad5933_work(struct work_struct *work) scan_count * 2, (u8 *)buf);if (scan_count ==2 ) { - buf[0 ] =be16_to_cpu (buf[0 ]); - buf[1 ] =be16_to_cpu (buf[1 ]); + val[0 ] =be16_to_cpu (buf[0 ]); + val[1 ] =be16_to_cpu (buf[1 ]); }else { - buf[0 ] =be16_to_cpu (buf[0 ]); + val[0 ] =be16_to_cpu (buf[0 ]); } -iio_push_to_buffers (indio_dev, buf); +iio_push_to_buffers (indio_dev, val); }else {/* no data available - try again later */ schedule_delayed_work (&st->work, st->poll_time_jiffies);
Signature · 1 line
1.9.1
PATCH 2/2 Staging: iio: adc: Fix sparse warning
In reply to Ksenija StanojevicFix following sparse endianness problems:
CHECK drivers/staging/iio/adc/ad7816.cdrivers/staging/iio/adc/ad7816.c:91:17: warning: cast to restricted __be16drivers/staging/iio/adc/ad7816.c:91:17: warning: cast to restricted __be16drivers/staging/iio/adc/ad7816.c:91:17: warning: cast to restricted __be16drivers/staging/iio/adc/ad7816.c:91:17: warning: cast to restricted __be16
--- drivers/staging/iio/adc/ad7816.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/staging/iio/adc/ad7816.c +3 -2
@@ -59,6 +59,7 @@ static int ad7816_spi_read(struct ad7816_chip_info *chip, u16 *data) {struct spi_device *spi_dev = chip->spi_dev;int ret =0 ; +__be16 buf;gpio_set_value (chip->rdwr_pin,1 );gpio_set_value (chip->rdwr_pin,0 );
@@ -82,13 +83,13 @@ static int ad7816_spi_read(struct ad7816_chip_info *chip, u16 *data)gpio_set_value (chip->rdwr_pin,0 );gpio_set_value (chip->rdwr_pin,1 ); - ret =spi_read (spi_dev, (u8 *)data,sizeof (*data)); + ret =spi_read (spi_dev, &buf,sizeof (*data));if (ret <0 ) {dev_err (&spi_dev->dev,"SPI data read error\n" );return ret; } - *data =be16_to_cpu (*data); + *data =be16_to_cpu (buf);return ret; }
Signature · 1 line
1.9.1