[v3,00/11] dmaengine: dw-axi_dmac: bug fix clean up and more features

Message ID 20230521101216.4084-1-jszhang@kernel.org
Headers
Series dmaengine: dw-axi_dmac: bug fix clean up and more features |

Message

Jisheng Zhang May 21, 2023, 10:12 a.m. UTC
  This series first fix a bug related with runtime pm. Then do three clean
up. After that, we add three new features: per channel irq support,
dma-channel-mask support and polled mode support.

Since v3:
  - rebase on the latest rc1

Since v2
  - fix typo
  - add reason why we need to runtime resume before reading reg in
    commit msg

Hi Vinod,

I still kept patch2 in v2, because I think the irq has been disabled
from the dw-axi-dma side, so the irq won't be fired any more. If you
prefer to keep the devm_free_irq() just ignore patch2.

Thanks a lot.


Jisheng Zhang (11):
  dmaengine: dw-axi-dmac: fix reading register when runtime suspended
  dmaengine: dw-axi-dmac: remove unnecessary devm_free_irq() calling
  dmaengine: dw-axi-dmac: remove unnecessary axi_dma_enable() calling
  dmaengine: dw-axi-dmac: remove redundant axi_dma_disable() calling
  dmaengine: dw-axi-dmac: delay irq getting until request_irq
  dmaengine: dw-axi-dmac: move ch irq handling into common routine
  dmaengine: dw-axi-dmac: support per channel irq
  dmaengine: dw-axi-dmac: support dma-channel-mask
  dmaengine: dw-axi-dmac: try best to get residue when tx is running
  dmaengine: dw-axi-dmac: move dma_chan_tx_status()
  dmaengine: dw-axi-dmac: support polled mode

 .../dma/dw-axi-dmac/dw-axi-dmac-platform.c    | 207 ++++++++++++------
 drivers/dma/dw-axi-dmac/dw-axi-dmac.h         |   4 +
 2 files changed, 147 insertions(+), 64 deletions(-)