DMA library: Bugfixes and missing implementations for IOAT
authorReto Achermann <acreto@student.ethz.ch>
Sat, 19 Jul 2014 20:35:17 +0000 (22:35 +0200)
committerStefan Kaestle <stefan.kaestle@inf.ethz.ch>
Wed, 20 Aug 2014 21:39:53 +0000 (23:39 +0200)
commitcffb0b9fc47fb3929f098776a3a7ed24fff6c9e4
tree27a63e2c3d90850c9d556186568db515620e596e
parent8a305dd48b0f774bf56d7c7843ef4743ec7e969c
DMA library: Bugfixes and missing implementations for IOAT

Moved the missing parts of the IOAT DMA driver into the library and
fixed some bugs in the initialization. Basic NOP descriptor test worked.

Also changed the channel get status queries to not accessing the device
register by default.

Changed the completion address reading to the memory region instead of
the register.

Added a new interface for IOAT DMA manager domain. (the driver domain)

Renaimed the scope of the error codes to DMA_ERR_*
27 files changed:
errors/errno.fugu
if/Hakefile
if/ioat_dma_mgr.if [new file with mode: 0644]
include/dma/dma_device.h
include/dma/dma_request.h
include/dma/ioat/ioat_dma_channel.h
include/dma/ioat/ioat_dma_device.h
include/dma/ioat/ioat_dma_request.h
include/dma/ioat/ioat_dma_ring.h
lib/dma/Hakefile
lib/dma/dma_channel.c
lib/dma/dma_device.c
lib/dma/dma_mem_utils.c
lib/dma/dma_request.c
lib/dma/include/debug.h
lib/dma/include/dma_channel_internal.h
lib/dma/include/dma_request_internal.h
lib/dma/include/ioat/ioat_dma_channel_internal.h
lib/dma/include/ioat/ioat_dma_descriptors_internal.h
lib/dma/include/ioat/ioat_dma_device_internal.h
lib/dma/include/ioat/ioat_dma_ring_internal.h
lib/dma/ioat/ioat_dma.c
lib/dma/ioat/ioat_dma_channel.c
lib/dma/ioat/ioat_dma_descriptors.c
lib/dma/ioat/ioat_dma_device.c
lib/dma/ioat/ioat_dma_request.c
lib/dma/ioat/ioat_dma_ring.c