MdeModulePkg/PciBus: Disable BME of all devices when entering RT

The patch ensures all DMA transactions are blocked after
ExitBootService.
If a platform enables IOMMU before and needs disable IOMMU after
ExitBootService, the IOMMU should be disabled after PCI bus driver
disables BME.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael Turner <michael.turner@microsoft.com>
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Cc: Jeff Fan <vanjeff_919@hotmail.com>
This commit is contained in:
Ruiyu Ni
2017-10-31 15:53:18 +08:00
parent 3d34e92fab
commit 050763db07
3 changed files with 91 additions and 0 deletions

View File

@@ -80,6 +80,9 @@
DebugLib
PeCoffLib
[Guids]
gEfiEventExitBootServicesGuid ## SOMETIMES_CONSUMES ## Event
[Protocols]
gEfiPciHotPlugRequestProtocolGuid ## SOMETIMES_PRODUCES
gEfiPciIoProtocolGuid ## BY_START