I am developing a window KMDF driver for the Intel Arria 10 or Intel Cyclone 10 GX Avalon-MM DMA core. Does this core support scatter/gatherer at hardware level? It is not very clearly to me from the documentation (https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/ug_a10_pcie_avmm_dma.pdf). From the embedded peripheral IP user guide, it mentions the msgdma which needs NIOS II support and recommended to use for new design. The msgdma sounds more like a SG DMA as the descriptors are stored in a linked list with variable sizes. The msgdma has already been supported by Linux kernel. On windows side, it seems it can simplify the driver development quite a bit if hardware support is available.
More specifically, what kind of configuration should I use for the Avalon-MM DMA core for this Windows driver configuration:
WDF_DMA_ENABLER_CONFIG_INIT( &dmaConfig, WdfDmaProfileScatterGather64Duplex, DevExt->MaximumTransferLength );
If the DMA core does not support SG, the KMDF driver has to map the scatter/gatherer list manually across multiple descriptors. This does not sounds very efficient nor convenient.
Any help in this understanding is very appreciated.
- Windows Driver
Thank you for posting in Intel community forum, hope this message find you well and apologies for the delayed in response.
Please do let us know if you are still facing the difficulties mention and we would get back to you as soon as possible.
Greetings, unfortunately as we do not receive any further clarification on what is provided. Hence thread will now be transitioned to community support. If you have new queries, please feel free to open a new thread and we will be right with you.