dmaengine dw: Revert "dmaengine: dw: Enable runtime PM"
authorCezary Rojewski <cezary.rojewski@intel.com>
Wed, 3 Feb 2021 19:19:24 +0000 (20:19 +0100)
committerVinod Koul <vkoul@kernel.org>
Mon, 8 Feb 2021 12:06:12 +0000 (17:36 +0530)
commitb6c14d7a83802046f7098e9bae78fbde23affa74
tree36fefb55851ee7ef149a4d870afb53d8973d9ed6
parent89e3becd8f821e507052e012d2559dcda59f538e
dmaengine dw: Revert "dmaengine: dw: Enable runtime PM"

This reverts commit 842067940a3e3fc008a60fee388e000219b32632.
For some solutions e.g. sound/soc/intel/catpt, DW DMA is part of a
compound device (in that very example, domains: ADSP, SSP0, SSP1, DMA0
and DMA1 are part of a single entity) rather than being a standalone
one. Driver for said device may enlist DMA to transfer data during
suspend or resume sequences.

Manipulating RPM explicitly in dw's DMA request and release channel
functions causes suspend() to also invoke resume() for the exact same
device. Similar situation occurs for resume() sequence. Effectively
renders device dysfunctional after first suspend() attempt. Revert the
change to address the problem.

Fixes: 842067940a3e ("dmaengine: dw: Enable runtime PM")
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Link: https://lore.kernel.org/r/20210203191924.15706-1-cezary.rojewski@intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/dw/core.c