Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platf...
[pandora-kernel.git] / drivers / dma / coh901318.c
index 309db3b..a724e6b 100644 (file)
@@ -942,7 +942,7 @@ coh901318_free_chan_resources(struct dma_chan *chan)
 
        spin_unlock_irqrestore(&cohc->lock, flags);
 
-       chan->device->device_control(chan, DMA_TERMINATE_ALL);
+       chan->device->device_control(chan, DMA_TERMINATE_ALL, 0);
 }
 
 
@@ -1147,12 +1147,8 @@ coh901318_tx_status(struct dma_chan *chan, dma_cookie_t cookie,
 
        ret = dma_async_is_complete(cookie, last_complete, last_used);
 
-       if (txstate) {
-               txstate->last = last_complete;
-               txstate->used = last_used;
-               txstate->residue = coh901318_get_bytes_left(chan);
-       }
-
+       dma_set_tx_state(txstate, last_complete, last_used,
+                        coh901318_get_bytes_left(chan));
        if (ret == DMA_IN_PROGRESS && cohc->stopped)
                ret = DMA_PAUSED;
 
@@ -1180,7 +1176,8 @@ coh901318_issue_pending(struct dma_chan *chan)
 }
 
 static int
-coh901318_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd)
+coh901318_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd,
+                 unsigned long arg)
 {
        unsigned long flags;
        struct coh901318_chan *cohc = to_coh901318_chan(chan);