iio:common: Use spi_sync_transfer() in STMicroelectronics common library
authorDenis Ciocca <denis.ciocca@gmail.com>
Sat, 9 Feb 2013 16:08:00 +0000 (16:08 +0000)
committerJonathan Cameron <jic23@kernel.org>
Sat, 16 Mar 2013 10:18:10 +0000 (10:18 +0000)
Use the new spi_sync_transfer() helper function instead of open-coding it.

Signed-off-by: Denis Ciocca <denis.ciocca@st.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/common/st_sensors/st_sensors_spi.c

index f0aa2f1..251baf6 100644 (file)
@@ -29,7 +29,6 @@ static unsigned int st_sensors_spi_get_irq(struct iio_dev *indio_dev)
 static int st_sensors_spi_read(struct st_sensor_transfer_buffer *tb,
        struct device *dev, u8 reg_addr, int len, u8 *data, bool multiread_bit)
 {
-       struct spi_message msg;
        int err;
 
        struct spi_transfer xfers[] = {
@@ -51,10 +50,7 @@ static int st_sensors_spi_read(struct st_sensor_transfer_buffer *tb,
        else
                tb->tx_buf[0] = reg_addr | ST_SENSORS_SPI_READ;
 
-       spi_message_init(&msg);
-       spi_message_add_tail(&xfers[0], &msg);
-       spi_message_add_tail(&xfers[1], &msg);
-       err = spi_sync(to_spi_device(dev), &msg);
+       err = spi_sync_transfer(to_spi_device(dev), xfers, ARRAY_SIZE(xfers));
        if (err)
                goto acc_spi_read_error;
 
@@ -83,7 +79,6 @@ static int st_sensors_spi_read_multiple_byte(
 static int st_sensors_spi_write_byte(struct st_sensor_transfer_buffer *tb,
                                struct device *dev, u8 reg_addr, u8 data)
 {
-       struct spi_message msg;
        int err;
 
        struct spi_transfer xfers = {
@@ -96,9 +91,7 @@ static int st_sensors_spi_write_byte(struct st_sensor_transfer_buffer *tb,
        tb->tx_buf[0] = reg_addr;
        tb->tx_buf[1] = data;
 
-       spi_message_init(&msg);
-       spi_message_add_tail(&xfers, &msg);
-       err = spi_sync(to_spi_device(dev), &msg);
+       err = spi_sync_transfer(to_spi_device(dev), &xfers, 1);
        mutex_unlock(&tb->buf_lock);
 
        return err;