From: Semih Hazar Date: Wed, 23 May 2007 03:35:12 +0000 (-0400) Subject: Input: ads7846 - SPI_CPHA mode bugfix X-Git-Tag: v3.12-rc1~28894^2~14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=230ffc8e348e7841b79fd7c659d16aa5d7ec8a69;p=kernel%2Fkernel-generic.git Input: ads7846 - SPI_CPHA mode bugfix In commit [1] the SPI mode is set to 1, but it should be 0. As stated in the commit, ads784x samples the data on the rising edge. SPI mode 1 samples on the falling edge [2] though. The root cause of this is a bug in the omap_uwire code, which treats CPHA=1 incorrectly; so these two bugs cancel each other out on one of the main regression test platforms for this driver. [1] kernel.org GIT 7937e86a70235e1584486654687dc9908a11e00a [2] http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus Signed-off-by: David Brownell Signed-off-by: Dmitry Torokhov --- diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index b0110fe..1c9069c 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c @@ -848,7 +848,7 @@ static int __devinit ads7846_probe(struct spi_device *spi) * may not. So we stick to very-portable 8 bit words, both RX and TX. */ spi->bits_per_word = 8; - spi->mode = SPI_MODE_1; + spi->mode = SPI_MODE_0; err = spi_setup(spi); if (err < 0) return err;