spi: au1550: Simplify au1550_spi_setupxfer()
authorJarkko Nikula <jarkko.nikula@linux.intel.com>
Tue, 15 Sep 2015 13:26:18 +0000 (16:26 +0300)
committerMark Brown <broonie@kernel.org>
Wed, 16 Sep 2015 19:54:54 +0000 (20:54 +0100)
SPI core validates both bits_per_word and speed_hz transfer parameters and
defaults to spi->bits_per_word and spi->max_speed_hz in case these per
transfer parameters are not set. This can simplify a little the
au1550_spi_setupxfer() as there is need to check only for valid
"struct spi_transfer" pointer.

Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-au1550.c

index f45e085c01a616436f7a6b115e69bb8144012463..afd239d6dec1432350b1fdc5cf3e58c43562dff6 100644 (file)
@@ -233,13 +233,12 @@ static int au1550_spi_setupxfer(struct spi_device *spi, struct spi_transfer *t)
        unsigned bpw, hz;
        u32 cfg, stat;
 
-       bpw = spi->bits_per_word;
-       hz = spi->max_speed_hz;
        if (t) {
-               if (t->bits_per_word)
-                       bpw = t->bits_per_word;
-               if (t->speed_hz)
-                       hz = t->speed_hz;
+               bpw = t->bits_per_word;
+               hz = t->speed_hz;
+       } else {
+               bpw = spi->bits_per_word;
+               hz = spi->max_speed_hz;
        }
 
        if (!hz)