From a886454ce549f04c87c78bb33f4aef43d7375257 Mon Sep 17 00:00:00 2001 From: lw Date: Sat, 7 Apr 2012 10:49:53 +0800 Subject: [PATCH] rk30:modify spin_lock_irqsave/restore operation in spi driver --- drivers/spi/rk29_spim.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/spi/rk29_spim.c b/drivers/spi/rk29_spim.c index aceaa99e13e6..04331a242b1e 100755 --- a/drivers/spi/rk29_spim.c +++ b/drivers/spi/rk29_spim.c @@ -427,10 +427,11 @@ static void rk29_spi_dma_rxcb(void *buf_id, //if (!(dws->state & TXBUSY)) // complete(&dws->rx_completion); + spin_unlock_irqrestore(&dws->lock, flags); + //DMA could not lose intterupt transfer_complete(dws); - spin_unlock_irqrestore(&dws->lock, flags); } static void rk29_spi_dma_txcb(void *buf_id, @@ -452,10 +453,11 @@ static void rk29_spi_dma_txcb(void *buf_id, //if (!(dws->state & RXBUSY)) // complete(&dws->tx_completion); + spin_unlock_irqrestore(&dws->lock, flags); + //DMA could not lose intterupt transfer_complete(dws); - spin_unlock_irqrestore(&dws->lock, flags); } -- 2.34.1