diff options
author | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2020-02-19 17:04:37 +0200 |
---|---|---|
committer | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2020-02-19 17:04:37 +0200 |
commit | 6eb4142030916c2db5c3dd0a4301dbd1141593e2 (patch) | |
tree | 166be12457829c581e9c5e39a52e72f9199d0d9b | |
parent | 65d8cb523f1b59b91ce784d2616448fa5ef3030e (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>
-rw-r--r-- | drivers/spi/spidev.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c index 09584fc3b6e6..0eaa2a662925 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; |