From 6eb4142030916c2db5c3dd0a4301dbd1141593e2 Mon Sep 17 00:00:00 2001 From: Oleksandr Suvorov Date: Wed, 19 Feb 2020 17:04:37 +0200 Subject: 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 --- drivers/spi/spidev.c | 7 ++++--- 1 file 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; -- cgit v1.2.3