提交 5ce998cf 编写于 作者: M Michael Hennerich 提交者: Bryan Wu

Blackfin arch: Check for Anomaly 05000182

IMDMA does not operate to full speed for 600MHz and higher devices
Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com>
Signed-off-by: NBryan Wu <cooloney@kernel.org>
上级 9cd9c616
...@@ -90,6 +90,17 @@ int request_dma(unsigned int channel, char *device_id) ...@@ -90,6 +90,17 @@ int request_dma(unsigned int channel, char *device_id)
{ {
pr_debug("request_dma() : BEGIN \n"); pr_debug("request_dma() : BEGIN \n");
#if defined(CONFIG_BF561) && ANOMALY_05000182
if (channel >= CH_IMEM_STREAM0_DEST && channel <= CH_IMEM_STREAM1_DEST) {
if (get_cclk() > 500000000) {
printk(KERN_WARNING
"Request IMDMA failed due to ANOMALY 05000182\n");
return -EFAULT;
}
}
#endif
mutex_lock(&(dma_ch[channel].dmalock)); mutex_lock(&(dma_ch[channel].dmalock));
if ((dma_ch[channel].chan_status == DMA_CHANNEL_REQUESTED) if ((dma_ch[channel].chan_status == DMA_CHANNEL_REQUESTED)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册