diff options
Diffstat (limited to 'arch/blackfin/kernel')
-rw-r--r-- | arch/blackfin/kernel/bfin_dma_5xx.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/blackfin/kernel/bfin_dma_5xx.c b/arch/blackfin/kernel/bfin_dma_5xx.c index fa9debe8d5f4..5453bc3664fc 100644 --- a/arch/blackfin/kernel/bfin_dma_5xx.c +++ b/arch/blackfin/kernel/bfin_dma_5xx.c | |||
@@ -104,6 +104,16 @@ int request_dma(unsigned int channel, char *device_id) | |||
104 | 104 | ||
105 | mutex_unlock(&(dma_ch[channel].dmalock)); | 105 | mutex_unlock(&(dma_ch[channel].dmalock)); |
106 | 106 | ||
107 | #ifdef CONFIG_BF54x | ||
108 | if (channel >= CH_UART2_RX && channel <= CH_UART3_TX && | ||
109 | strncmp(device_id, "BFIN_UART", 9) == 0) | ||
110 | dma_ch[channel].regs->peripheral_map |= | ||
111 | (channel - CH_UART2_RX + 0xC); | ||
112 | else | ||
113 | dma_ch[channel].regs->peripheral_map |= | ||
114 | (channel - CH_UART2_RX + 0x6); | ||
115 | #endif | ||
116 | |||
107 | dma_ch[channel].device_id = device_id; | 117 | dma_ch[channel].device_id = device_id; |
108 | dma_ch[channel].irq_callback = NULL; | 118 | dma_ch[channel].irq_callback = NULL; |
109 | 119 | ||