pch_dma: Fix DMA setting issue

Currently, Direct-Start mode(*) is enabled.
Our IOH's devices must not use this mode.
This causes unexpected behavior.
This patch deletes Direct-Start setting.
(*) This mode is used in order for CPU to generate the DMA request.

Signed-off-by: Tomoya MORINAGA <tomoya-linux@dsn.okisemi.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
Tomoya MORINAGA 2011-05-09 16:09:37 +09:00 committed by Vinod Koul
parent 08645fdc7b
commit 60092d0bde
1 changed files with 0 additions and 7 deletions

View File

@ -254,9 +254,6 @@ static bool pdc_is_idle(struct pch_dma_chan *pd_chan)
static void pdc_dostart(struct pch_dma_chan *pd_chan, struct pch_dma_desc* desc) static void pdc_dostart(struct pch_dma_chan *pd_chan, struct pch_dma_desc* desc)
{ {
struct pch_dma *pd = to_pd(pd_chan->chan.device);
u32 val;
if (!pdc_is_idle(pd_chan)) { if (!pdc_is_idle(pd_chan)) {
dev_err(chan2dev(&pd_chan->chan), dev_err(chan2dev(&pd_chan->chan),
"BUG: Attempt to start non-idle channel\n"); "BUG: Attempt to start non-idle channel\n");
@ -282,10 +279,6 @@ static void pdc_dostart(struct pch_dma_chan *pd_chan, struct pch_dma_desc* desc)
channel_writel(pd_chan, NEXT, desc->txd.phys); channel_writel(pd_chan, NEXT, desc->txd.phys);
pdc_set_mode(&pd_chan->chan, DMA_CTL0_SG); pdc_set_mode(&pd_chan->chan, DMA_CTL0_SG);
} }
val = dma_readl(pd, CTL2);
val |= 1 << (DMA_CTL2_START_SHIFT_BITS + pd_chan->chan.chan_id);
dma_writel(pd, CTL2, val);
} }
static void pdc_chain_complete(struct pch_dma_chan *pd_chan, static void pdc_chain_complete(struct pch_dma_chan *pd_chan,