|
@@ -764,17 +764,17 @@ static void atmel_spi_pdc_next_xfer(struct spi_master *master,
|
|
(unsigned long long)xfer->rx_dma);
|
|
(unsigned long long)xfer->rx_dma);
|
|
}
|
|
}
|
|
|
|
|
|
- /* REVISIT: We're waiting for ENDRX before we start the next
|
|
|
|
|
|
+ /* REVISIT: We're waiting for RXBUFF before we start the next
|
|
* transfer because we need to handle some difficult timing
|
|
* transfer because we need to handle some difficult timing
|
|
- * issues otherwise. If we wait for ENDTX in one transfer and
|
|
|
|
- * then starts waiting for ENDRX in the next, it's difficult
|
|
|
|
- * to tell the difference between the ENDRX interrupt we're
|
|
|
|
- * actually waiting for and the ENDRX interrupt of the
|
|
|
|
|
|
+ * issues otherwise. If we wait for TXBUFE in one transfer and
|
|
|
|
+ * then starts waiting for RXBUFF in the next, it's difficult
|
|
|
|
+ * to tell the difference between the RXBUFF interrupt we're
|
|
|
|
+ * actually waiting for and the RXBUFF interrupt of the
|
|
* previous transfer.
|
|
* previous transfer.
|
|
*
|
|
*
|
|
* It should be doable, though. Just not now...
|
|
* It should be doable, though. Just not now...
|
|
*/
|
|
*/
|
|
- spi_writel(as, IER, SPI_BIT(ENDRX) | SPI_BIT(OVRES));
|
|
|
|
|
|
+ spi_writel(as, IER, SPI_BIT(RXBUFF) | SPI_BIT(OVRES));
|
|
spi_writel(as, PTCR, SPI_BIT(TXTEN) | SPI_BIT(RXTEN));
|
|
spi_writel(as, PTCR, SPI_BIT(TXTEN) | SPI_BIT(RXTEN));
|
|
}
|
|
}
|
|
|
|
|