]> git.baikalelectronics.ru Git - kernel.git/commitdiff
iio: adc: ti-ads124s08: Use get_unaligned_be24()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 21 Apr 2020 00:31:22 +0000 (03:31 +0300)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 3 May 2020 08:47:18 +0000 (09:47 +0100)
This makes the driver code slightly easier to read.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ti-ads124s08.c

index 552c2be8d87ad45ddc18d2975545d35e921e8ecd..f1ee3b1e28273ffc16080797089890418ff3998a 100644 (file)
@@ -22,6 +22,8 @@
 #include <linux/iio/triggered_buffer.h>
 #include <linux/iio/sysfs.h>
 
+#include <asm/unaligned.h>
+
 /* Commands */
 #define ADS124S08_CMD_NOP      0x00
 #define ADS124S08_CMD_WAKEUP   0x02
@@ -188,7 +190,6 @@ static int ads124s_read(struct iio_dev *indio_dev, unsigned int chan)
 {
        struct ads124s_private *priv = iio_priv(indio_dev);
        int ret;
-       u32 tmp;
        struct spi_transfer t[] = {
                {
                        .tx_buf = &priv->data[0],
@@ -208,9 +209,7 @@ static int ads124s_read(struct iio_dev *indio_dev, unsigned int chan)
        if (ret < 0)
                return ret;
 
-       tmp = priv->data[2] << 16 | priv->data[3] << 8 | priv->data[4];
-
-       return tmp;
+       return get_unaligned_be24(&priv->data[2]);
 }
 
 static int ads124s_read_raw(struct iio_dev *indio_dev,