spi/xilinx: Code cleanup
authorRicardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Wed, 28 Jan 2015 12:23:42 +0000 (13:23 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 28 Jan 2015 19:42:42 +0000 (19:42 +0000)
On the transmission loop, check for remaining bytes at the loop
condition.

This way we can handle transmissions of 0 bytes and clean the code.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-xilinx.c

index d933207..a0f7c9d 100644 (file)
@@ -248,7 +248,7 @@ static int xilinx_spi_txrx_bufs(struct spi_device *spi, struct spi_transfer *t)
        xspi->remaining_bytes = t->len;
        reinit_completion(&xspi->done);
 
-       for (;;) {
+       while (xspi->remaining_bytes) {
                u16 cr;
                int n_words;
 
@@ -278,10 +278,6 @@ static int xilinx_spi_txrx_bufs(struct spi_device *spi, struct spi_transfer *t)
                /* Read out all the data from the Rx FIFO */
                while (n_words--)
                        xspi->rx_fn(xspi);
-
-               /* See if there is more data to send */
-               if (xspi->remaining_bytes <= 0)
-                       break;
        }
 
        return t->len - xspi->remaining_bytes;