• Oleksandr Suvorov's avatar
    spi: spidev: fix a debug message value · ea70fb5b
    Oleksandr Suvorov authored
    The debug message in spidev_message() can show wrong xfer speed.
    It happens if the initial (came from DT) and set with ioctl call spidev
    speeds are different (spidev->speed_hz != spi->max_speed_hz) and one
    sends a message with ioctl call and the field of speed is uninitialized
    (u_tmp->speed_hz == 0).
    
    In this case the kernel shows the spi->max_speed_hz value instead of
    correct spidev->speed_hz.
    ...
    set the max speed with an ioctl call:
    [ 1227.702714] spidev spi0.0: setup mode 0, 32 bits/w, 20000000 Hz max --> 0
    (real speed sets to 20000000Hz)
    send a message with an ioctl call:
    [ 1227.731801] spidev spi0.0:   xfer len 4096 tx 32bits 0 usec 10000000Hz
    (debug message shows 10000000Hz that is the original max speed of this
    spidev came from DT)
    ...
    
    Fix the data source for the debug message.
    Signed-off-by: default avatarOleksandr Suvorov <oleksandr.suvorov@toradex.com>
    Link: https://lore.kernel.org/r/20200229161841.89144-2-oleksandr.suvorov@toradex.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
    ea70fb5b
spidev.c 21.5 KB