Commit 91c1c9e3 authored by Adrian Hunter's avatar Adrian Hunter Committed by Vinod Koul

dmaengine: intel_mid_dma: move pm_runtime_put

Move pm_runtime_put() to the end of intel_mid_dma_free_chan_resources()
because there is no sense in allowing runtime suspend while the driver
is still accessing the device.
Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@linux.intel.com>
parent 7f99a421
...@@ -832,7 +832,6 @@ static void intel_mid_dma_free_chan_resources(struct dma_chan *chan) ...@@ -832,7 +832,6 @@ static void intel_mid_dma_free_chan_resources(struct dma_chan *chan)
/*trying to free ch in use!!!!!*/ /*trying to free ch in use!!!!!*/
pr_err("ERR_MDMA: trying to free ch in use\n"); pr_err("ERR_MDMA: trying to free ch in use\n");
} }
pm_runtime_put(&mid->pdev->dev);
spin_lock_bh(&midc->lock); spin_lock_bh(&midc->lock);
midc->descs_allocated = 0; midc->descs_allocated = 0;
list_for_each_entry_safe(desc, _desc, &midc->active_list, desc_node) { list_for_each_entry_safe(desc, _desc, &midc->active_list, desc_node) {
...@@ -853,6 +852,7 @@ static void intel_mid_dma_free_chan_resources(struct dma_chan *chan) ...@@ -853,6 +852,7 @@ static void intel_mid_dma_free_chan_resources(struct dma_chan *chan)
/* Disable CH interrupts */ /* Disable CH interrupts */
iowrite32(MASK_INTR_REG(midc->ch_id), mid->dma_base + MASK_BLOCK); iowrite32(MASK_INTR_REG(midc->ch_id), mid->dma_base + MASK_BLOCK);
iowrite32(MASK_INTR_REG(midc->ch_id), mid->dma_base + MASK_ERR); iowrite32(MASK_INTR_REG(midc->ch_id), mid->dma_base + MASK_ERR);
pm_runtime_put(&mid->pdev->dev);
} }
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment