|
@@ -166,18 +166,24 @@ void omap_set_dma_transfer_params(int lch, int data_type, int elem_count,
|
|
if (cpu_is_omap24xx() && dma_trigger) {
|
|
if (cpu_is_omap24xx() && dma_trigger) {
|
|
u32 val = OMAP_DMA_CCR_REG(lch);
|
|
u32 val = OMAP_DMA_CCR_REG(lch);
|
|
|
|
|
|
|
|
+ val &= ~(3 << 19);
|
|
if (dma_trigger > 63)
|
|
if (dma_trigger > 63)
|
|
val |= 1 << 20;
|
|
val |= 1 << 20;
|
|
if (dma_trigger > 31)
|
|
if (dma_trigger > 31)
|
|
val |= 1 << 19;
|
|
val |= 1 << 19;
|
|
|
|
|
|
|
|
+ val &= ~(0x1f);
|
|
val |= (dma_trigger & 0x1f);
|
|
val |= (dma_trigger & 0x1f);
|
|
|
|
|
|
if (sync_mode & OMAP_DMA_SYNC_FRAME)
|
|
if (sync_mode & OMAP_DMA_SYNC_FRAME)
|
|
val |= 1 << 5;
|
|
val |= 1 << 5;
|
|
|
|
+ else
|
|
|
|
+ val &= ~(1 << 5);
|
|
|
|
|
|
if (sync_mode & OMAP_DMA_SYNC_BLOCK)
|
|
if (sync_mode & OMAP_DMA_SYNC_BLOCK)
|
|
val |= 1 << 18;
|
|
val |= 1 << 18;
|
|
|
|
+ else
|
|
|
|
+ val &= ~(1 << 18);
|
|
|
|
|
|
if (src_or_dst_synch)
|
|
if (src_or_dst_synch)
|
|
val |= 1 << 24; /* source synch */
|
|
val |= 1 << 24; /* source synch */
|