[PATCH V2 0/8] dmaengine: zynqmp_dma: Fix error paths and follow-up cleanups

Golla Nagendra posted 8 patches 1 week, 4 days ago
drivers/dma/xilinx/zynqmp_dma.c | 73 +++++++++++++++++++++------------
1 file changed, 46 insertions(+), 27 deletions(-)
[PATCH V2 0/8] dmaengine: zynqmp_dma: Fix error paths and follow-up cleanups
Posted by Golla Nagendra 1 week, 4 days ago
This series fixes error-path cleanup issues in alloc/probe flows and
applies follow-up cleanups in the Xilinx ZynqMP DMA driver.

This series fixes error-path cleanup issues in alloc/probe flows and
applies follow-up cleanups in the Xilinx ZynqMP DMA driver.

Patch 1 fixes runtime PM rollback when sw_desc_pool allocation fails
after pm_runtime_resume_and_get().

Patch 2 frees sw_desc_pool when desc_pool_v allocation fails after
sw_desc_pool has already been allocated.

Patch 3 fixes channel probe/remove error handling by preserving
platform_get_irq() errors, initializing/staging chan->irq safely, and
registering the channel node only after IRQ setup succeeds.

Patch 4 updates stale kerneldoc comments to match current behavior.

Patch 5 applies minor whitespace formatting cleanup in
zynqmp_dma_chan_probe().

Patch 6 switches dma-coherent detection to of_dma_is_coherent() instead
of parsing the common device-tree property directly.

Patch 7 rejects zero-length memcpy preparations and documents the return
behavior.

Patch 8 removes an unused define and drops a duplicate interrupt enable
bit from the default IRQ mask.

Changes in v2:
- Split the previous alloc_chan_resources cleanup into two focused
  patches:
  - Patch 1 for runtime PM rollback on sw_desc_pool allocation failure.
  - Patch 2 for sw_desc_pool release on desc_pool_v allocation failure.
- Reworked channel probe failure teardown to use the existing
  free_chan_resources goto path instead of adding direct tasklet kill in
  the outer probe failure block.
- Kept the whitespace-only change as a standalone patch and moved
  dma-coherent handling to a dedicated patch using
  of_dma_is_coherent().
- Updated commit descriptions to match exact per-patch behavior.

Golla Nagendra (8):
  dmaengine: zynqmp_dma: Fix PM rollback on sw_desc_pool alloc failure
  dmaengine: zynqmp_dma: Free sw_desc_pool on desc_pool_v alloc failure
  dmaengine: zynqmp_dma: Fix chan probe/remove error handling
  dmaengine: zynqmp_dma: Fix stale kerneldoc comments
  dmaengine: zynqmp_dma: Fix minor whitespace
  dmaengine: zynqmp_dma: Use of_dma_is_coherent for dma-coherent
  dmaengine: zynqmp_dma: Reject zero-length memcpy transfers
  dmaengine: zynqmp_dma: Remove unused define and duplicate IRQ bit

 drivers/dma/xilinx/zynqmp_dma.c | 73 +++++++++++++++++++++------------
 1 file changed, 46 insertions(+), 27 deletions(-)

-- 
2.44.4