opl3sa2.c: DMA timeout when recording
PATCH 1/1 opl3sa2.c: DMA timeout when recording
Hi,
Here is a patch that fix a problem with the opl3sa2 driver. The problem is that if you use two distinct DMA channels, then you can play but can't record OR record and can't play, you get the message "DMA timeout (...)"
The dma and dma2 are not initialized with the real DMA channels and they remain at -1.
--
drivers/sound/opl3sa2.c +6 -6
@@ -862,9 +862,9 @@/* Our own config: */ hw_cfg->io_base = dev->resource[4 ].start; - hw_cfg->irq =0 ; - hw_cfg->dma =-1 ; - hw_cfg->dma2 =-1 ; + hw_cfg->irq = dev->irq_resource[0 ].start; + hw_cfg->dma = dev->dma_resource[0 ].start; + hw_cfg->dma2 = dev->dma_resource[1 ].start;/* The MSS config: */ mss_cfg->io_base = dev->resource[1 ].start;
@@ -944,9 +944,9 @@* give pretty output from conf_printf. :) */ cfg[card].io_base = io; - cfg[card].irq =0 ; - cfg[card].dma =-1 ; - cfg[card].dma2 =-1 ; + cfg[card].irq = irq; + cfg[card].dma = dma; + cfg[card].dma2 = dma2;/* The MSS config: */ cfg_mss[card].io_base = mss_io;