Hello,
we've been playing around with the I/OAT DMA, trying to make it copy
from main memory to the MMIO, and we're facing troubles (incomplete
transfers, kernel oops).
Surprisingly, we have no problems with the DMA in the opposite direction.
The spec says memory->MMIO is supported, whereas MMIO->memory is not
(http://www.intel.com/content/dam/www/public/us/en/documents/datasheets/xeon-c5500-c3500-datasheet-vol-1.pdf):
> 4.2.1.6.1 Supported Features
> The following features are supported by the DMA engine:
> * Data transfer between two system memory locations, or from system
memory to MMIO.
>
> 4.2.1.6.2 Unsupported Features
> The following features are not supported by the DMA controller:
> * DMA data transfer from I/O subsystem to local system memory, and
I/O to I/O subsystems are not supported.
Can it be that the spec has it reversed? Could anyone confirm it is
working? Any projects are known to use it?
Or is it just us, doing it wrong?
Regards,
Simon
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html