MdeModulePkg/NonDiscoverablePciDeviceDxe: add support for non-coherent DMA
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 9 Dec 2016 15:04:34 +0000 (15:04 +0000)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 15 Dec 2016 08:20:33 +0000 (08:20 +0000)
commit16296a126c99174ad27a6d78229df70e62049310
tree359ed3b4e0ace3c79c583f958f5d4f4653883833
parentaaa61995af9e0b65c37bdad6796867760fa1d5fe
MdeModulePkg/NonDiscoverablePciDeviceDxe: add support for non-coherent DMA

Add support for non-coherent DMA, either by performing explicit cache
maintenance when DMA mappings are aligned to the CPU's DMA buffer alignment,
or by bounce buffering via uncached mappings otherwise.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Marcin Wojtas <mw@semihalf.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceDxe.c
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceDxe.inf
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.h