XDMA dmaengine driver implementation
Hi,
here at ESS we are using https://github.com/Xilinx/dma_ip_drivers/tree/master/XDMA/linux-kernel kernel driver today with the micro TCA based data acquisition cards such as https://innovation.desy.de/technologies/microtca/boards/damc_fmc2zup/index_eng.html and https://www.struck.de/sis8300.html. The diver seems to be functioning just fine and it provides all the necessary software interfaces we desire.
Looking at the https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git/ I noticed that there is a lot of effort in getting the XDMA dmaengine accepted into mainline kernel. As far as I understand one would need to develop an additional driver that utilizes the XDMA dmaengine driver.
Is there a reference implementation of a driver that uses XDMA dmaengine that is similar to the on in dma_ip_drivers github repo?
Thank you in advance!
//hinko
Hinko Kocevar
Beam Diagnostics Engineer
European Spallation Source ERIC
Odarslövsvägen 113, SE-224 84 Lund, Sweden
E-mail: [email protected]
Hi Hinko,
mgb4 driver which uses XDMA in mainline kernel. Please see: https://github.com/torvalds/linux/blob/master/drivers/media/pci/mgb4/mgb4_core.c#L437
Thanks,
Lizhi
Quoted 22 lines · Hinko Kocevar
Hi,
here at ESS we are using https://github.com/Xilinx/dma_ip_drivers/tree/master/XDMA/linux-kernel kernel driver today with the micro TCA based data acquisition cards such as https://innovation.desy.de/technologies/microtca/boards/damc_fmc2zup/index_eng.html and https://www.struck.de/sis8300.html. The diver seems to be functioning just fine and it provides all the necessary software interfaces we desire.
Looking at the https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git/ I noticed that there is a lot of effort in getting the XDMA dmaengine accepted into mainline kernel. As far as I understand one would need to develop an additional driver that utilizes the XDMA dmaengine driver.
Is there a reference implementation of a driver that uses XDMA dmaengine that is similar to the on in
dma_ip_driversgithub repo?Thank you in advance!
//hinkoHinko Kocevar
Beam Diagnostics Engineer
European Spallation Source ERIC
Odarslövsvägen 113, SE-224 84 Lund, Sweden
E-mail: [email protected]
Hi Lizhi,
I found it and managed to reuse its DMA interface within the dma_ip_drivers xdma driver.
At the moment I've hacked the dma_ip_drivers xdma driver just enough that it is using the xdma dmaengine instead of most of the code in libxdma.c.
Thank,
//hinko
________________________________________
From: Lizhi Hou <[email protected]>
Sent: Tuesday, January 9, 2024 5:42:13 PM
To: Hinko Kocevar; [email protected]; [email protected]
Cc: [email protected]
Subject: Re: XDMA dmaengine driver implementation
Hi Hinko,
mgb4 driver which uses XDMA in mainline kernel. Please see:
https://github.com/torvalds/linux/blob/master/drivers/media/pci/mgb4/mgb4_core.c#L437
Thanks,
Lizhi
Quoted 22 lines · Hinko Kocevar
Hi,
here at ESS we are using https://github.com/Xilinx/dma_ip_drivers/tree/master/XDMA/linux-kernel kernel driver today with the micro TCA based data acquisition cards such as https://innovation.desy.de/technologies/microtca/boards/damc_fmc2zup/index_eng.html and https://www.struck.de/sis8300.html. The diver seems to be functioning just fine and it provides all the necessary software interfaces we desire.
Looking at the https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.git/ I noticed that there is a lot of effort in getting the XDMA dmaengine accepted into mainline kernel. As far as I understand one would need to develop an additional driver that utilizes the XDMA dmaengine driver.
Is there a reference implementation of a driver that uses XDMA dmaengine that is similar to the on in
dma_ip_driversgithub repo?Thank you in advance!
//hinkoHinko Kocevar
Beam Diagnostics Engineer
European Spallation Source ERIC
Odarslövsvägen 113, SE-224 84 Lund, Sweden
E-mail: [email protected]