summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshwini Ghuge <aghuge@nvidia.com>2012-06-20 14:04:49 +0530
committerSimone Willett <swillett@nvidia.com>2012-06-20 14:04:06 -0700
commita85a9db8f4a108c0d07680127e5fbf272095f0ac (patch)
tree506800d22e8eee73dd5e7be8d09486f196bb6f73
parentce93880e4c6cabc9978a3f888002ca08cb00aad1 (diff)
spi: tegra: check tx queue before start transfer
Check for valid entry on the message queue before reading the transfer list from queue. If queue is empty then do not start transfer. Change-Id: If51a816780ab76700a7a1d7d8a025a3544590ad1 Signed-off-by: Ashwini Ghuge <aghuge@nvidia.com> Reviewed-on: http://git-master/r/109469 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
-rw-r--r--drivers/spi/spi-tegra.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/spi/spi-tegra.c b/drivers/spi/spi-tegra.c
index 7b3382e952ff..c0de42bf4299 100644
--- a/drivers/spi/spi-tegra.c
+++ b/drivers/spi/spi-tegra.c
@@ -967,6 +967,11 @@ static void spi_tegra_curr_transfer_complete(struct spi_tegra_data *tspi,
udelay(tspi->cur->delay_usecs);
}
+ if (list_empty(&tspi->queue)) {
+ dev_err(&tspi->pdev->dev, "Handling empty list\n");
+ return;
+ }
+
m = list_first_entry(&tspi->queue, struct spi_message, queue);
if (err)
m->status = -EIO;