dmaengine: pl330: issue_pending waits until WFP state
authorBumyong Lee <bumyong.lee@samsung.com>
Tue, 19 Dec 2023 05:50:26 +0000 (14:50 +0900)
committerVinod Koul <vkoul@kernel.org>
Fri, 22 Dec 2023 06:49:41 +0000 (12:19 +0530)
commit22a9d9585812440211b0b34a6bc02ade62314be4
tree95a018858348d279d1fc5895513eef5b9223e7da
parent2f8f90cd2f8d237c51c2775a53ef0d8c8acaa707
dmaengine: pl330: issue_pending waits until WFP state

According to DMA-330 errata notice[1] 71930, DMAKILL
cannot clear internal signal, named pipeline_req_active.
it makes that pl330 would wait forever in WFP state
although dma already send dma request if pl330 gets
dma request before entering WFP state.

The errata suggests that polling until entering WFP state
as workaround and then peripherals allows to issue dma request.

[1]: https://developer.arm.com/documentation/genc008428/latest

Signed-off-by: Bumyong Lee <bumyong.lee@samsung.com>
Link: https://lore.kernel.org/r/20231219055026.118695-1-bumyong.lee@samsung.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/pl330.c