Re: [RFC PATCH] dmaengine: xilinx_dma: Fix per-channel direction reporting via device_caps
From: Folker Schwesinger <hidden>
Date: 2026-02-26 20:06:30
Also in:
dmaengine, lkml
Hi Rahul, On Thu Feb 26, 2026 at 8:35 AM CET, Rahul Navale wrote:
root@pdm3:~# aplay closetoyou.wav Playing WAVE 'closetoyou.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo aplay: pcm_write:2178: write error: Interrupted system call root@pdm3:~# aplay closetoyou.wav root@pdm3:~# dmesg | grep xilinx_dma_device_caps [ 0.318827] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 0.318832] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 0.319170] xilinx_dma_device_caps: caps->directions = 0x00000002 [ 0.319175] xilinx_dma_device_caps: caps->directions = 0x00000002 [ 6.375745] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 6.375762] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 133.401497] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 133.401513] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 167.802636] xilinx_dma_device_caps: caps->directions = 0x00000001 [ 167.802651] xilinx_dma_device_caps: caps->directions = 0x00000001
Looks like direction aggregation does not actually happen in your case. Probably because you have two distinct DMA devices with a single channel each. Could you confirm this from your DT? This suggests, that direction aggregation is not the actual root cause of the regression you're seeing. Maybe 7e01511443c3 exposes/triggers another subtle flaw in the ASoC or DMA layers or your driver. But that's speculation at this point. I'm not sure how to proceed from here. I think the patch itself is functional, but it does not address the actual issue. There's however one other thing you could test: Could you keep the RFC patch with the printks in place, but revert 7e01511443c3, rerun and post the logs?