4.2.7 DMA

System memory buffers used for DMA should not be allocated from a specific address or below a specific address. In addition, UEFI drivers must always use I/O abstractions to setup and complete DMA transactions.

It is not legal to program a system memory address into a DMA bus master. This programming works on chipsets that have a one-to-one mapping between system memory addresses and PCI DMA addresses, but it does not work with chipsets that remap DMA transactions.