diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2012-02-09 21:21:45 (GMT) |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-07-10 14:28:56 (GMT) |
commit | 05644147064acabb8587c4cbd690047494f7b3a1 (patch) | |
tree | aa56a2853bce14e640a52cdf88f81084e80580d8 | |
parent | 619ac8d3e582ccd806f24dcfc369c4c250ca9814 (diff) | |
download | linux-05644147064acabb8587c4cbd690047494f7b3a1.tar.xz |
spi/gpio: start with CS non-active
The chip select line was configured as output with the initial value
being active explicitly. It was later deasserted during
spi_bitbang_setup() without any clock activity in between. So it makes
no sense to activate the device at all and the chip select line can
better start non-active.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r-- | drivers/spi/spi-gpio.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/spi/spi-gpio.c b/drivers/spi/spi-gpio.c index 0094c645..0b56cfc 100644 --- a/drivers/spi/spi-gpio.c +++ b/drivers/spi/spi-gpio.c @@ -235,7 +235,8 @@ static int spi_gpio_setup(struct spi_device *spi) status = gpio_request(cs, dev_name(&spi->dev)); if (status) return status; - status = gpio_direction_output(cs, spi->mode & SPI_CS_HIGH); + status = gpio_direction_output(cs, + !(spi->mode & SPI_CS_HIGH)); } } if (!status) |