spidev: Switch to use spi_get_csgpiod()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 24 Aug 2023 16:22:08 +0000 (19:22 +0300)
committerMark Brown <broonie@kernel.org>
Mon, 11 Sep 2023 00:31:50 +0000 (01:31 +0100)
spidev_ioctl() checks if there is an SPI chip select is driven by GPIO.
Instead of current code, we can call spi_get_csgpiod().

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

index dc516f0ca71fd31b7ba9cec9c9f32ed049c12fcc..e324b42c658c1cb46644241eb7e3d9f63a2bbb77 100644 (file)
@@ -393,8 +393,7 @@ spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
        case SPI_IOC_RD_MODE32:
                tmp = spi->mode;
 
-               if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods &&
-                   ctlr->cs_gpiods[spi_get_chipselect(spi, 0)])
+               if (ctlr->use_gpio_descriptors && spi_get_csgpiod(spi, 0))
                        tmp &= ~SPI_CS_HIGH;
 
                if (cmd == SPI_IOC_RD_MODE)
@@ -430,8 +429,7 @@ spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
                                break;
                        }
 
-                       if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods &&
-                           ctlr->cs_gpiods[spi_get_chipselect(spi, 0)])
+                       if (ctlr->use_gpio_descriptors && spi_get_csgpiod(spi, 0))
                                tmp |= SPI_CS_HIGH;
 
                        tmp |= spi->mode & ~SPI_MODE_MASK;