diff mbox series

[v1,1/1] spi: spidev: Use SPI_MODE_USER_MASK instead of casting

Message ID 20211122175245.84691-1-andriy.shevchenko@linux.intel.com
State Accepted
Commit dd06a0c6b6f64f6610c0bb8f7651df3ebfb0f990
Headers show
Series [v1,1/1] spi: spidev: Use SPI_MODE_USER_MASK instead of casting | expand

Commit Message

Andy Shevchenko Nov. 22, 2021, 5:52 p.m. UTC
Currently the 16-bit mode is what being used in user space.
However assuming that is not fully correct. Instead we should
use the respective mask, i.e. SPI_MODE_USER_MASK, which
precisely defines what bits are available for user space apps.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/spi/spidev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
index 1bd73e322b7b..968dab2f5e3d 100644
--- a/drivers/spi/spidev.c
+++ b/drivers/spi/spidev.c
@@ -415,7 +415,7 @@  spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
 				tmp |= SPI_CS_HIGH;
 
 			tmp |= spi->mode & ~SPI_MODE_MASK;
-			spi->mode = (u16)tmp;
+			spi->mode = tmp & SPI_MODE_USER_MASK;
 			retval = spi_setup(spi);
 			if (retval < 0)
 				spi->mode = save;