staging: greybus: spilib: use 'spi_delay_to_ns' for getting xfer delay
authorAlexandru Ardelean <aardelean@deviqon.com>
Mon, 8 Mar 2021 14:54:58 +0000 (16:54 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 12 Mar 2021 14:30:47 +0000 (14:30 +0000)
commit33a23423ca0a08b488791fc9d4ca53f4bea4e45b
tree9afc1a7b9a494aabc7c8cf2071c29059ccc1b8e9
parent7ca660f8212b2fbeb0f3133c3a6fa8805777a877
staging: greybus: spilib: use 'spi_delay_to_ns' for getting xfer delay

The intent is the removal of the 'delay_usecs' field from the
spi_transfer struct, as there is a 'delay' field that does the same
thing.

The spi_delay_to_ns() can be used to get the transfer delay. It works by
using the 'delay_usecs' field first (if it is non-zero), and finally
uses the 'delay' field.

Since the 'delay_usecs' field is going away, this change makes use of the
spi_delay_to_ns() function. This also means dividing the return value of
the function by 1000, to convert it to microseconds.
To prevent any potential faults when converting to microseconds and since
the result of spi_delay_to_ns() is int, the delay is being computed in 32
bits and then clamped between 0 & U16_MAX.

Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Rui Miguel Silva <rmfrfs@gmail.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20210308145502.1075689-7-aardelean@deviqon.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/staging/greybus/spilib.c