Sfoglia il codice sorgente

spi/s3c64xx: Flush FIFOs prior to cleaning up transfer

Ensure that the FIFOs are fully drained before we deassert /CS or do any
delays that have been requested in order to ensure that the behaviour
visible on the bus matches that which was requested by the caller.

Signed-off-by: Mark Brown <broonie@linaro.org>
Mark Brown 11 anni fa
parent
commit
67651b29ef
1 ha cambiato i file con 2 aggiunte e 2 eliminazioni
  1. 2 2
      drivers/spi/spi-s3c64xx.c

+ 2 - 2
drivers/spi/spi-s3c64xx.c

@@ -960,6 +960,8 @@ static int s3c64xx_spi_transfer_one_message(struct spi_master *master,
 			goto out;
 		}
 
+		flush_fifo(sdd);
+
 		if (xfer->delay_usecs)
 			udelay(xfer->delay_usecs);
 
@@ -972,8 +974,6 @@ static int s3c64xx_spi_transfer_one_message(struct spi_master *master,
 		}
 
 		msg->actual_length += xfer->len;
-
-		flush_fifo(sdd);
 	}
 
 out: