spi: core: Fix transfer failure when master->transfer_one returns positive value

master->transfer_one returns positive value is not a error.
So set ret to 0 when master->transfer_one returns positive value.
Otherwise, I hit "spi_master spi0: failed to transfer one message from queue"
error when my transfer_one callback returns 1.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
Axel Lin 2014-01-18 22:05:22 +08:00 коммит произвёл Mark Brown
Родитель bd6857a0c6
Коммит 13a4279880
1 изменённых файлов: 3 добавлений и 1 удалений

Просмотреть файл

@ -599,8 +599,10 @@ static int spi_transfer_one_message(struct spi_master *master,
goto out; goto out;
} }
if (ret > 0) if (ret > 0) {
ret = 0;
wait_for_completion(&master->xfer_completion); wait_for_completion(&master->xfer_completion);
}
trace_spi_transfer_stop(msg, xfer); trace_spi_transfer_stop(msg, xfer);