On Thu, Feb 20, 2020 at 02:11:51PM +0000, Oleksandr Suvorov wrote: > SPI_IOC_WR_MAX_SPEED_HZ command always sets spi->max_speed_hz > to the initial value come from DT. This is intentional. It's doing a call to spi_setup() then restoring the original value, the goal being just to run spi_setup() with the new value - it's not really a good idea to change the maximum speed in the first place. > It leads to set a wrong max speed with IOCTL call. In what way does it lead to the wrong speed being set? > Fix the logic of a max speed assignment. If the expectation is that the default speed should be changed for the device this should be handled at the spidev level rather than in the core.