summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorOleksandr Suvorov <oleksandr.suvorov@toradex.com>2020-02-19 17:04:37 +0200
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2020-03-09 13:44:37 +0100
commit0cecfefd07ec9ff9064e29c9b8b72440b68b1584 (patch)
treeaab2fa9979c013b51df2b3316440546e458620a7 /drivers
parent2a7e678d4750a7bd6f7665647e16642575c11b7c (diff)
spi: spidev: fix setting of max speed
spi->max_speed_hz always sets to the previous value. Fixing the logic allows IOCTL command SPI_IOC_WR_MAX_SPEED_HZ to store the new requested value to spi->max_speed_hz. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/spidev.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
index 2f7bb823ce1b..23084a496b6e 100644
--- a/drivers/spi/spidev.c
+++ b/drivers/spi/spidev.c
@@ -454,11 +454,12 @@ spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
spi->max_speed_hz = tmp;
retval = spi_setup(spi);
- if (retval >= 0)
+ if (retval) {
+ spi->max_speed_hz = save;
+ } else {
spidev->speed_hz = tmp;
- else
dev_dbg(&spi->dev, "%d Hz (max)\n", tmp);
- spi->max_speed_hz = save;
+ }
}
break;