Hi,
per Purely QuickData programming guide (Document Number: 561480, Revision: 1.0) the Skylake DMA can support several operation types: standard DMA operation, block fill, DMA with DIF insert, Move & Generate CRC-32 and many more.
current Linux driver support only the standard DMA operation. see https://github.com/intel/mOS/tree/master/drivers/dma/ioat
has anyone configured/used the DMA to do any DMA move plus CRC generation?. this looks like a cool way to save cycles on CRC calculation, by offloading it to the DMA engine.
thanks.
Link Copied
For more complete information about compiler optimizations, see our Optimization Notice.