dmaengine: apple-admac: Handle 'global' interrupt flags
authorMartin Povišer <povik+lin@cutebit.org>
Fri, 24 Feb 2023 15:22:20 +0000 (16:22 +0100)
committerVinod Koul <vkoul@kernel.org>
Fri, 31 Mar 2023 12:47:21 +0000 (18:17 +0530)
commita288fd158fbf85c06a9ac01cecabf97ac5d962e7
treed0efd6c0b0f1693064ece86924093623adde5287
parentb771baf3988a094c5129b05f1e5eaa383f1ec185
dmaengine: apple-admac: Handle 'global' interrupt flags

In addition to TX channel and RX channel interrupt flags there's
another class of 'global' interrupt flags with unknown semantics. Those
weren't being handled up to now, and they are the suspected cause of
stuck IRQ states that have been sporadically occurring. Check the global
flags and clear them if raised.

Fixes: b127315d9a78 ("dmaengine: apple-admac: Add Apple ADMAC driver")
Signed-off-by: Martin Povišer <povik+lin@cutebit.org>
Link: https://lore.kernel.org/r/20230224152222.26732-1-povik+lin@cutebit.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/apple-admac.c