From 418c198999e430913e008b542579e0bc3e65eb18 Mon Sep 17 00:00:00 2001 From: Brendan Le Foll Date: Thu, 23 Oct 2014 18:05:36 +0100 Subject: [PATCH] spi: attempt to fix spi lsb mode Signed-off-by: Brendan Le Foll --- src/spi/spi.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/spi/spi.c b/src/spi/spi.c index 7bab329..67f3ccd 100644 --- a/src/spi/spi.c +++ b/src/spi/spi.c @@ -131,14 +131,15 @@ mraa_spi_frequency(mraa_spi_context dev, int hz) mraa_result_t mraa_spi_lsbmode(mraa_spi_context dev, mraa_boolean_t lsb) { - uint8_t lsb_mode = 0; - if (lsb == 1) { - lsb_mode = 1; - } + uint8_t lsb_mode = (uint8_t) lsb; if (ioctl (dev->devfd, SPI_IOC_WR_LSB_FIRST, &lsb_mode) < 0) { syslog(LOG_ERR, "spi: Failed to set bit order"); return MRAA_ERROR_INVALID_RESOURCE; } + if (ioctl (dev->devfd, SPI_IOC_RD_LSB_FIRST, &lsb_mode) < 0) { + syslog(LOG_ERR, "spi: Failed to set bit order"); + return MRAA_ERROR_INVALID_RESOURCE; + } dev->lsb = lsb; return MRAA_SUCCESS; }