From c895db0fb2c9e77fd94ba7995e2a01652a91910c Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Fri, 24 Aug 2012 04:34:18 +0200 Subject: mxs/spi: Restart the block after unsuccessful transfer Restart the SSP block in case the SSP transfer failed in any way. The block hung in some cases otherwise. Signed-off-by: Marek Vasut Cc: Chris Ball Cc: Shawn Guo Cc: Mark Brown Cc: Fabio Estevam Signed-off-by: Mark Brown --- drivers/spi/spi-mxs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'drivers/spi') diff --git a/drivers/spi/spi-mxs.c b/drivers/spi/spi-mxs.c index 130a43688352..447f917fe66f 100644 --- a/drivers/spi/spi-mxs.c +++ b/drivers/spi/spi-mxs.c @@ -439,8 +439,10 @@ static int mxs_spi_transfer_one(struct spi_master *master, } m->actual_length += t->len; - if (status) + if (status) { + stmp_reset_block(ssp->base); break; + } first = last = 0; } -- cgit v1.2.3