Re: [PATCH v5] spi: spi-imx: add DMA support

From: Mark Brown
Date: Wed Sep 10 2014 - 06:21:32 EST


On Wed, Sep 10, 2014 at 09:30:04AM +0800, Robin Gong wrote:

> +static bool spi_imx_can_dma(struct spi_master *master, struct spi_device *spi,
> + struct spi_transfer *transfer)
> +{
> + struct spi_imx_data *spi_imx = spi_master_get_devdata(master);
> +
> + if (spi_imx->dma_is_inited && (transfer->len > spi_imx->rx_wml)
> + && (transfer->len > spi_imx->tx_wml))
> + spi_imx->usedma = true;
> + else
> + spi_imx->usedma = false;
> +
> + return spi_imx->usedma;
> +}

This isn't going to work, anything that looks at the usedma flag will
see the result of the last thing that was checked which may or may not
be the transfer that it's handling. The driver should check to see if
the core mapped the transfer for DMA.

Attachment: signature.asc
Description: Digital signature