[RFC PATCH] dmaengine: xilinx_dma: Fix per-channel direction reporting via device_caps

Folker Schwesinger dev at folker-schwesinger.de
Tue Feb 24 07:10:46 PST 2026


On Tue Feb 24, 2026 at 10:30 AM CET, Rahul Navale wrote:
> From: Rahul Navale <rahul.navale at ifm.com>
>
>>this is an important bit of information. Could you verify that your
>>customized driver uses dmaengine's dma_get_slave_caps() to obtain
>>channel capabilities and that the newly introduced
>>xilinx_dma_device_caps() is actually called?
>
> Hi Folker,
>
> Thanks for the clarification — I misunderstood about custom drivers.
>
> I have confirmed that we are using the upstream xilinx DMA driver (drivers/dma/xilinx/xilinx_dma.c)
> and using AXI DMA for audio. We use separate fixed-direction channels:
> MM2S for playback (DMA_MEM_TO_DEV) and S2MM for capture (DMA_DEV_TO_MEM), referenced
> via device tree.
>

Ok good, but this does not say anything about whether
xilinx_dma_device_caps() is actually called or not. Could you please add

printk("xilinx_dma_device_caps: dirs = 0x%08x\n", caps->direction);

before and after

caps->direction = chan->direction;

in the RFC patch, rebuild and exercise your use case. Then please do

dmesg|grep xilinx_dma_device_caps

and post the output.

In case there isn't any output, your driver does not reach
xilinx_dma_device_caps(). In that case the proposed patch is uneffective
for your custom driver.




More information about the linux-arm-kernel mailing list