On Thu, Aug 20, 2015 at 02:19:46PM -0000, Emilio López wrote:

> -     sun4i_spi_drain_fifo(sspi, SUN4I_FIFO_DEPTH);
> +     if (sun4i_spi_can_dma(master, spi, tfr) && desc_rx) {
> +             /* The receive transfer should be the last one to finish */
> +             dma_wait_for_async_tx(desc_rx);

What if it's a transmit only transfer?  We'll fall over to this...

> +     } else {
> +             sun4i_spi_drain_fifo(sspi, SUN4I_FIFO_DEPTH);
> +     }

...which manually reads data from the FIFO which doesn't seem like what
we want, won't it conflict with the DMA?

Attachment: signature.asc
Description: Digital signature

Reply via email to