On Thursday 25 June 2009, Marek Szyprowski wrote:
> --- a/drivers/spi/spi_bitbang.c
> +++ b/drivers/spi/spi_bitbang.c
> @@ -392,6 +392,22 @@ int spi_bitbang_transfer(struct spi_device *spi, struct 
> spi_message *m)
>         unsigned long           flags;
>         int                     status = 0;
>  
> +       if (spi->master->flags & SPI_MASTER_NO_RX) {
> +               struct spi_transfer *xfer;
> +               list_for_each_entry(xfer, &m->transfers, transfer_list) {
> +                       if (xfer->rx_buf)
> +                               return -EINVAL;
> +               }
> +       }

Actually these two loops should merge, and likely move with
spi_async() into the spi.c core code ... I'll split this
support into a separate patch.

> +
> +       if (spi->master->flags & SPI_MASTER_NO_TX) {
> +               struct spi_transfer *xfer;
> +               list_for_each_entry(xfer, &m->transfers, transfer_list) {
> +                       if (xfer->tx_buf)
> +                               return -EINVAL;
> +               }
> +       }
> +
>         m->actual_length = 0;
>         m->status = -EINPROGRESS;
>  



------------------------------------------------------------------------------
_______________________________________________
spi-devel-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spi-devel-general

Reply via email to