spi: img-spfi: fix multiple calls to request gpio
authorSifan Naeem <sifan.naeem@imgtec.com>
Wed, 29 Jul 2015 10:55:26 +0000 (11:55 +0100)
committerMark Brown <broonie@kernel.org>
Tue, 4 Aug 2015 17:46:54 +0000 (18:46 +0100)
commitb03ba9e314c12b2127243145b5c1f41b2408de62
treee909d33caf1fea825693ef42d3baec7778ea0ae6
parent011710e2ab659c7ad6e5e554806414bd7a9508be
spi: img-spfi: fix multiple calls to request gpio

spfi_setup may be called many times by the spi framework, but
gpio_request_one can only be called once without freeing, repeatedly
calling gpio_request_one will cause an error to be thrown, which
causes the request to spi_setup to be marked as failed.

We can have a per-spi_device flag that indicates whether or not the
gpio has been requested. If the gpio has already been requested use
gpio_direction_output to set the direction of the gpio.

Fixes: 8c2c8c03cdcb ("spi: img-spfi: Control CS lines with GPIO")
Signed-off-by: Sifan Naeem <sifan.naeem@imgtec.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
drivers/spi/spi-img-spfi.c