From 447b9065b418cbeb6a03ebdcd08629ac26ed8e4a Mon Sep 17 00:00:00 2001 From: Michael Hennerich Date: Wed, 30 Jun 2010 14:51:09 -0700 Subject: [PATCH] Input: ad7879 - fix spi word size to 16 bit Signed-off-by: Michael Hennerich Signed-off-by: Dmitry Torokhov --- drivers/input/touchscreen/ad7879-spi.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/input/touchscreen/ad7879-spi.c b/drivers/input/touchscreen/ad7879-spi.c index 9fa8e5de5ff9..59c6e68c4325 100644 --- a/drivers/input/touchscreen/ad7879-spi.c +++ b/drivers/input/touchscreen/ad7879-spi.c @@ -134,6 +134,7 @@ static const struct ad7879_bus_ops ad7879_spi_bus_ops = { static int __devinit ad7879_spi_probe(struct spi_device *spi) { struct ad7879 *ts; + int err; /* don't exceed max specified SPI CLK frequency */ if (spi->max_speed_hz > MAX_SPI_FREQ_HZ) { @@ -141,6 +142,13 @@ static int __devinit ad7879_spi_probe(struct spi_device *spi) return -EINVAL; } + spi->bits_per_word = 16; + err = spi_setup(spi); + if (err) { + dev_dbg(&spi->dev, "spi master doesn't support 16 bits/word\n"); + return err; + } + ts = ad7879_probe(&spi->dev, AD7879_DEVID, spi->irq, &ad7879_spi_bus_ops); if (IS_ERR(ts)) return PTR_ERR(ts);