spidev: Simplify SPI_IOC_RD_MODE* cases in spidev_ioctl()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 24 Aug 2023 16:22:09 +0000 (19:22 +0300)
committerMark Brown <broonie@kernel.org>
Mon, 11 Sep 2023 00:31:51 +0000 (01:31 +0100)
The temporary variable tmp is not used outside of the
SPI_IOC_RD_MODE* cases, hence we can optimize its use.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Lukas Wunner <lukas@wunner.de>
Reviewed-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Link: https://lore.kernel.org/r/20230824162209.2890440-4-andriy.shevchenko@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spidev.c

index e324b42c658c1cb46644241eb7e3d9f63a2bbb77..c5450217528b83624300d8b0e35c6042e31d4542 100644 (file)
@@ -391,17 +391,15 @@ spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
        /* read requests */
        case SPI_IOC_RD_MODE:
        case SPI_IOC_RD_MODE32:
-               tmp = spi->mode;
+               tmp = spi->mode & SPI_MODE_MASK;
 
                if (ctlr->use_gpio_descriptors && spi_get_csgpiod(spi, 0))
                        tmp &= ~SPI_CS_HIGH;
 
                if (cmd == SPI_IOC_RD_MODE)
-                       retval = put_user(tmp & SPI_MODE_MASK,
-                                         (__u8 __user *)arg);
+                       retval = put_user(tmp, (__u8 __user *)arg);
                else
-                       retval = put_user(tmp & SPI_MODE_MASK,
-                                         (__u32 __user *)arg);
+                       retval = put_user(tmp, (__u32 __user *)arg);
                break;
        case SPI_IOC_RD_LSB_FIRST:
                retval = put_user((spi->mode & SPI_LSB_FIRST) ?  1 : 0,