spi: omap2-mcspi: Configure hardware when slave driver changes mode
authorMark A. Greer <mgreer@animalcreek.com>
Wed, 2 Jul 2014 03:28:32 +0000 (20:28 -0700)
committerMark Brown <broonie@linaro.org>
Thu, 3 Jul 2014 18:49:05 +0000 (19:49 +0100)
commit97ca0d6cc118716840ea443e010cb3d5f2d25eaf
tree63b55425bbb4f75caa656e812c9d9cd9714405d9
parent7171511eaec5bf23fb06078f59784a3a0626b38f
spi: omap2-mcspi: Configure hardware when slave driver changes mode

Commit id 2bd16e3e23d9df41592c6b257c59b6860a9cc3ea
(spi: omap2-mcspi: Do not configure the controller
on each transfer unless needed) does its job too
well so omap2_mcspi_setup_transfer() isn't called
even when an SPI slave driver changes 'spi->mode'.
The result is that the mode requested by the SPI
slave driver never takes effect.

Fix this by adding the 'mode' member to the
omap2_mcspi_cs structure which holds the mode
value that the hardware is configured for.
When the SPI slave driver changes 'spi->mode'
it will be different than the value of this new
member and the SPI master driver will know that
the hardware must be reconfigured (by calling
omap2_mcspi_setup_transfer()).

Fixes: 2bd16e3e23 (spi: omap2-mcspi: Do not configure the controller on each transfer unless needed)
Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Cc: stable@vger.kernel.org
drivers/spi/spi-omap2-mcspi.c