summaryrefslogtreecommitdiffstats
path: root/drivers/dma/ipu
diff options
context:
space:
mode:
authorClaudiu Beznea <claudiu.beznea@microchip.com>2023-02-14 16:18:22 +0100
committerVinod Koul <vkoul@kernel.org>2023-04-12 19:48:44 +0200
commite53957e1ec5196671e49a48f90a5c9555153189a (patch)
treea823ad07ace04ac1a9dbeaef91e4f07e385037a6 /drivers/dma/ipu
parentdmaengine: at_xdmac: disable/enable clock directly on suspend/resume (diff)
downloadlinux-e53957e1ec5196671e49a48f90a5c9555153189a.tar.xz
linux-e53957e1ec5196671e49a48f90a5c9555153189a.zip
dmaengine: at_xdmac: fix imbalanced runtime PM reference counter
In case there are channels not paused during suspend (which on AT91 case is valid for serial driver when no_console_suspend boot argument is used) the at_xdmac_runtime_suspend_descriptors() was called more than one time due to at_xdmac_off(). To fix this add a new argument to at_xdmac_off() to specify if runtime PM reference counter needs to be decremented for queued active descriptors. Along with it moved the at_xdmac_runtime_suspend_descriptors() call under at_xdmac_chan_is_paused() check on suspend path as for the rest of channels the suspend is delayed by atmel_xdmac_prepare() in case channel is enabled. Same approach has been applied on resume path. Fixes: 650b0e990cbd ("dmaengine: at_xdmac: add runtime pm support") Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> Link: https://lore.kernel.org/r/20230214151827.1050280-3-claudiu.beznea@microchip.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/dma/ipu')
0 files changed, 0 insertions, 0 deletions