DMA Engine development
 help / color / mirror / Atom feed
* [PATCH 00/10] dmaengine: fsldma: devm conversion, fixups, and cleanups
@ 2026-06-05 22:01 Rosen Penev
  2026-06-05 22:01 ` [PATCH 01/10] dmaengine: fsldma: kill tasklet before removing channel Rosen Penev
                   ` (10 more replies)
  0 siblings, 11 replies; 24+ messages in thread
From: Rosen Penev @ 2026-06-05 22:01 UTC (permalink / raw)
  To: dmaengine
  Cc: Vinod Koul, Frank Li, Zhang Wei, Nathan Chancellor,
	Nick Desaulniers, Bill Wendling, Justin Stitt, open list,
	open list:FREESCALE DMA DRIVER,
	open list:CLANG/LLVM BUILD SUPPORT:Keyword:b(?i:clang|llvm)b

Convert the Freescale Elo DMA driver to use managed device resources
(devm), simplifying probe error handling and the remove path by
dropping explicit iounmap, kfree, and free_irq calls.

While doing so, fix a few issues uncovered along the way:

  - Kill the channel tasklet before removal to prevent a race with
    the IRQ handler.
  - Check the return value of dma_async_device_register() instead
    of silently returning success.
  - Replace the powerpc-specific I/O accessors with portable
    generic ones so the driver can be built on non-powerpc
    architectures.

Build-tested with LLVM=1 ARCH=powerpc allmodconfig.

Rosen Penev (10):
  dmaengine: fsldma: kill tasklet before removing channel
  dmaengine: fsldma: check dma_async_device_register() return value
  dmaengine: fsldma: convert to platform_get_irq_optional()
  dmaengine: fsldma: convert to devm_kzalloc and fix error path
  dmaengine: fsldma: convert ioremap to devm_platform_ioremap_resource
  dmaengine: fsldma: convert channel allocation to devm_kzalloc
  dmaengine: fsldma: convert channel ioremap to devm_of_iomap
  dmaengine: fsldma: replace irq_of_parse_and_map with of_irq_get
  dmaengine: fsldma: convert to devm_request_irq
  dmaengine: fsldma: replace ppc-specific accessors with portable
    generic ones

 drivers/dma/Kconfig  |   2 +-
 drivers/dma/fsldma.c | 139 +++++++++++++------------------------------
 drivers/dma/fsldma.h |  35 ++++++++++-
 3 files changed, 76 insertions(+), 100 deletions(-)

-- 
2.54.0


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2026-06-05 22:50 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-05 22:01 [PATCH 00/10] dmaengine: fsldma: devm conversion, fixups, and cleanups Rosen Penev
2026-06-05 22:01 ` [PATCH 01/10] dmaengine: fsldma: kill tasklet before removing channel Rosen Penev
2026-06-05 22:16   ` sashiko-bot
2026-06-05 22:29   ` Frank Li
2026-06-05 22:01 ` [PATCH 02/10] dmaengine: fsldma: check dma_async_device_register() return value Rosen Penev
2026-06-05 22:01 ` [PATCH 03/10] dmaengine: fsldma: convert to platform_get_irq_optional() Rosen Penev
2026-06-05 22:01 ` [PATCH 04/10] dmaengine: fsldma: convert to devm_kzalloc and fix error path Rosen Penev
2026-06-05 22:16   ` sashiko-bot
2026-06-05 22:43   ` Frank Li
2026-06-05 22:01 ` [PATCH 05/10] dmaengine: fsldma: convert ioremap to devm_platform_ioremap_resource Rosen Penev
2026-06-05 22:16   ` sashiko-bot
2026-06-05 22:41   ` Frank Li
2026-06-05 22:01 ` [PATCH 06/10] dmaengine: fsldma: convert channel allocation to devm_kzalloc Rosen Penev
2026-06-05 22:15   ` sashiko-bot
2026-06-05 22:45   ` Frank Li
2026-06-05 22:01 ` [PATCH 07/10] dmaengine: fsldma: convert channel ioremap to devm_of_iomap Rosen Penev
2026-06-05 22:13   ` sashiko-bot
2026-06-05 22:49   ` Frank Li
2026-06-05 22:01 ` [PATCH 08/10] dmaengine: fsldma: replace irq_of_parse_and_map with of_irq_get Rosen Penev
2026-06-05 22:10   ` sashiko-bot
2026-06-05 22:01 ` [PATCH 09/10] dmaengine: fsldma: convert to devm_request_irq Rosen Penev
2026-06-05 22:11   ` sashiko-bot
2026-06-05 22:01 ` [PATCH 10/10] dmaengine: fsldma: replace ppc-specific accessors with portable generic ones Rosen Penev
2026-06-05 22:36 ` [PATCH 00/10] dmaengine: fsldma: devm conversion, fixups, and cleanups Frank Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox