On Wed, Oct 13, 2010 at 05:51:02PM +0200, Matthias Brugger wrote: > - bits_per_word option in spi_transfer are allowed if it does not change > the csr register. > > This is necessary for the driver in > drivers/staging/iio/adis16260_core.c, as it uses this option. > > Signed-off-by: Matthias Brugger <mensch0815@xxxxxxxxx> Applied, thanks. However, the patch is line-wrap damaged and I needed to fix it up by hand. Please check your email client configuration. g. > --- > drivers/spi/atmel_spi.c | 14 +++++++++++++- > 1 files changed, 13 insertions(+), 1 deletions(-) > > diff --git a/drivers/spi/atmel_spi.c b/drivers/spi/atmel_spi.c > index c4e0442..5c03a5b 100644 > --- a/drivers/spi/atmel_spi.c > +++ b/drivers/spi/atmel_spi.c > @@ -654,6 +654,8 @@ static int atmel_spi_transfer(struct spi_device > *spi, struct spi_message *msg) > struct spi_transfer *xfer; > unsigned long flags; > struct device *controller = spi->master->dev.parent; > + u8 bits; > + struct atmel_spi_device *asd; > > as = spi_master_get_devdata(spi->master); > > @@ -672,8 +674,18 @@ static int atmel_spi_transfer(struct spi_device > *spi, struct spi_message *msg) > return -EINVAL; > } > > + if (xfer->bits_per_word) { > + asd = spi->controller_state; > + bits = (asd->csr >> 4) & 0xf; > + if (bits != xfer->bits_per_word - 8) { > + dev_dbg(&spi->dev, "you can't yet change " > + "bit_per_word in transfers\n"); > + return -ENOPROTOOPT; > + } > + } > + > /* FIXME implement these protocol options!! */ > - if (xfer->bits_per_word || xfer->speed_hz) { > + if (xfer->speed_hz) { > dev_dbg(&spi->dev, "no protocol options yet\n"); > return -ENOPROTOOPT; > } > -- > 1.5.6.5 -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html