diff options
author | Jason Chen <b02280@freescale.com> | 2011-08-22 11:44:51 +0800 |
---|---|---|
committer | Jason Chen <b02280@freescale.com> | 2011-08-29 11:23:06 +0800 |
commit | 032ef9ccbdf2a6d9d7163dcec63109e19b17eea1 (patch) | |
tree | 7a54082a251c9e34d02c1b4f24889fe1e2e5e6e9 | |
parent | 31fb9293b59ed60adf69af2a43c2288b5339a557 (diff) |
ENGR00154080 ipuv3: fix clear buffer function
fix clear buffer function.
Signed-off-by: Jason Chen <b02280@freescale.com>
-rw-r--r-- | drivers/mxc/ipu3/ipu_common.c | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/drivers/mxc/ipu3/ipu_common.c b/drivers/mxc/ipu3/ipu_common.c index d3dccdc2e0dd..11e8a580cdc2 100644 --- a/drivers/mxc/ipu3/ipu_common.c +++ b/drivers/mxc/ipu3/ipu_common.c @@ -2143,22 +2143,15 @@ void ipu_clear_buffer_ready(struct ipu_soc *ipu, ipu_channel_t channel, ipu_buff spin_lock_irqsave(&ipu->ipu_lock, lock_flags); ipu_cm_write(ipu, 0xF0300000, IPU_GPR); /* write one to clear */ - if (bufNum == 0) { - if (idma_is_set(ipu, IPU_CHA_BUF0_RDY, dma_ch)) { - ipu_cm_write(ipu, idma_mask(dma_ch), - IPU_CHA_BUF0_RDY(dma_ch)); - } - } else if (bufNum == 1) { - if (idma_is_set(ipu, IPU_CHA_BUF1_RDY, dma_ch)) { - ipu_cm_write(ipu, idma_mask(dma_ch), - IPU_CHA_BUF1_RDY(dma_ch)); - } - } else { - if (idma_is_set(ipu, IPU_CHA_BUF2_RDY, dma_ch)) { - ipu_cm_write(ipu, idma_mask(dma_ch), - IPU_CHA_BUF2_RDY(dma_ch)); - } - } + if (bufNum == 0) + ipu_cm_write(ipu, idma_mask(dma_ch), + IPU_CHA_BUF0_RDY(dma_ch)); + else if (bufNum == 1) + ipu_cm_write(ipu, idma_mask(dma_ch), + IPU_CHA_BUF1_RDY(dma_ch)); + else + ipu_cm_write(ipu, idma_mask(dma_ch), + IPU_CHA_BUF2_RDY(dma_ch)); ipu_cm_write(ipu, 0x0, IPU_GPR); /* write one to set */ spin_unlock_irqrestore(&ipu->ipu_lock, lock_flags); } |