diff options
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/touchscreen/ad7879-spi.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/ad7879-spi.c b/drivers/input/touchscreen/ad7879-spi.c index 9fa8e5de5ff..59c6e68c432 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 = { | |||
134 | static int __devinit ad7879_spi_probe(struct spi_device *spi) | 134 | static int __devinit ad7879_spi_probe(struct spi_device *spi) |
135 | { | 135 | { |
136 | struct ad7879 *ts; | 136 | struct ad7879 *ts; |
137 | int err; | ||
137 | 138 | ||
138 | /* don't exceed max specified SPI CLK frequency */ | 139 | /* don't exceed max specified SPI CLK frequency */ |
139 | if (spi->max_speed_hz > MAX_SPI_FREQ_HZ) { | 140 | if (spi->max_speed_hz > MAX_SPI_FREQ_HZ) { |
@@ -141,6 +142,13 @@ static int __devinit ad7879_spi_probe(struct spi_device *spi) | |||
141 | return -EINVAL; | 142 | return -EINVAL; |
142 | } | 143 | } |
143 | 144 | ||
145 | spi->bits_per_word = 16; | ||
146 | err = spi_setup(spi); | ||
147 | if (err) { | ||
148 | dev_dbg(&spi->dev, "spi master doesn't support 16 bits/word\n"); | ||
149 | return err; | ||
150 | } | ||
151 | |||
144 | ts = ad7879_probe(&spi->dev, AD7879_DEVID, spi->irq, &ad7879_spi_bus_ops); | 152 | ts = ad7879_probe(&spi->dev, AD7879_DEVID, spi->irq, &ad7879_spi_bus_ops); |
145 | if (IS_ERR(ts)) | 153 | if (IS_ERR(ts)) |
146 | return PTR_ERR(ts); | 154 | return PTR_ERR(ts); |