audk/MdeModulePkg/Bus
Laszlo Ersek 6fb8ddd36b MdeModulePkg/AtaAtapiPassThru: disable the device at ExitBootServices()
The AtaAtapiPassThru driver maps three system memory regions for Bus
Master Common Buffer operation on the following call path, if the
controller has PCI_CLASS_MASS_STORAGE_SATADPA class code:

  AtaAtapiPassThruStart()
    EnumerateAttachedDevice()
      AhciModeInitialization()
        AhciCreateTransferDescriptor()

The device is disabled (including Bus Master DMA) when the controller is
unbound, in AtaAtapiPassThruStop(). Then the regions are unmapped.

The former step should also be done when we exit the boot services, and
the OS gains ownership of system memory.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2017-09-08 20:22:38 +02:00
..
Ata MdeModulePkg/AtaAtapiPassThru: disable the device at ExitBootServices() 2017-09-08 20:22:38 +02:00
I2c/I2cDxe MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
Isa MdeModulePkg: Update comments in SimpleTextInEx according to UEFI 2.7 2017-06-20 09:29:42 +08:00
Pci MdeModulePkg XhciDxe: Fix Map and Unmap inconsistency 2017-08-25 17:09:23 +08:00
Scsi MdeModulePkg/ScsiBusDxe: don't produce ScsiIo for nonexistent LUNs, part 2 2017-08-19 00:39:05 +02:00
Sd MdeModulePkg/EmmcDxe: Make sure no extra data is erased by EraseBlocks 2017-08-14 08:45:10 +08:00
Ufs MdeModulePkg/Ufs: Set 'Data Segment Length' field for Write Descriptor 2017-08-02 20:56:53 +08:00
Usb MdeModulePkg: Update comments in SimpleTextInEx according to UEFI 2.7 2017-06-20 09:29:42 +08:00