]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dmaengine: ste_dma40: Remove redundant pm_runtime_mark_last_busy() calls
authorSakari Ailus <sakari.ailus@linux.intel.com>
Mon, 27 Oct 2025 13:32:30 +0000 (15:32 +0200)
committerVinod Koul <vkoul@kernel.org>
Tue, 16 Dec 2025 16:52:49 +0000 (22:22 +0530)
pm_runtime_put_autosuspend(), pm_runtime_put_sync_autosuspend(),
pm_runtime_autosuspend() and pm_request_autosuspend() now include a call
to pm_runtime_mark_last_busy(). Remove the now-reduntant explicit call to
pm_runtime_mark_last_busy().

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patch.msgid.link/20251027133232.392898-4-sakari.ailus@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/ste_dma40.c

index d52e1685aed53ffa49c7c7f6d6a611a358e7f360..e67e0d66e6e8ff9b01e7dc51087a100c38bcf9fc 100644 (file)
@@ -1452,7 +1452,6 @@ static int d40_pause(struct dma_chan *chan)
 
        res = d40_channel_execute_command(d40c, D40_DMA_SUSPEND_REQ);
 
-       pm_runtime_mark_last_busy(d40c->base->dev);
        pm_runtime_put_autosuspend(d40c->base->dev);
        spin_unlock_irqrestore(&d40c->lock, flags);
        return res;
@@ -1479,7 +1478,6 @@ static int d40_resume(struct dma_chan *chan)
        if (d40_residue(d40c) || d40_tx_is_linked(d40c))
                res = d40_channel_execute_command(d40c, D40_DMA_RUN);
 
-       pm_runtime_mark_last_busy(d40c->base->dev);
        pm_runtime_put_autosuspend(d40c->base->dev);
        spin_unlock_irqrestore(&d40c->lock, flags);
        return res;
@@ -1581,7 +1579,6 @@ static void dma_tc_handle(struct d40_chan *d40c)
                if (d40_queue_start(d40c) == NULL) {
                        d40c->busy = false;
 
-                       pm_runtime_mark_last_busy(d40c->base->dev);
                        pm_runtime_put_autosuspend(d40c->base->dev);
                }
 
@@ -2054,16 +2051,13 @@ static int d40_free_dma(struct d40_chan *d40c)
        else
                d40c->base->lookup_phy_chans[phy->num] = NULL;
 
-       if (d40c->busy) {
-               pm_runtime_mark_last_busy(d40c->base->dev);
+       if (d40c->busy)
                pm_runtime_put_autosuspend(d40c->base->dev);
-       }
 
        d40c->busy = false;
        d40c->phy_chan = NULL;
        d40c->configured = false;
  mark_last_busy:
-       pm_runtime_mark_last_busy(d40c->base->dev);
        pm_runtime_put_autosuspend(d40c->base->dev);
        return res;
 }
@@ -2466,7 +2460,6 @@ static int d40_alloc_chan_resources(struct dma_chan *chan)
        if (is_free_phy)
                d40_config_write(d40c);
  mark_last_busy:
-       pm_runtime_mark_last_busy(d40c->base->dev);
        pm_runtime_put_autosuspend(d40c->base->dev);
        spin_unlock_irqrestore(&d40c->lock, flags);
        return err;
@@ -2618,12 +2611,9 @@ static int d40_terminate_all(struct dma_chan *chan)
                chan_err(d40c, "Failed to stop channel\n");
 
        d40_term_all(d40c);
-       pm_runtime_mark_last_busy(d40c->base->dev);
        pm_runtime_put_autosuspend(d40c->base->dev);
-       if (d40c->busy) {
-               pm_runtime_mark_last_busy(d40c->base->dev);
+       if (d40c->busy)
                pm_runtime_put_autosuspend(d40c->base->dev);
-       }
        d40c->busy = false;
 
        spin_unlock_irqrestore(&d40c->lock, flags);