diff options
author | Laszlo Ersek <lersek@redhat.com> | 2017-09-03 15:21:59 +0200 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2017-09-08 20:22:38 +0200 |
commit | 6fb8ddd36bde45614b0a069528cdc97077835a74 (patch) | |
tree | ab2cb3039ac3d50e50aa67f434cdc2152810f84b /OvmfPkg/VirtioBlkDxe | |
parent | 509daa658b79b21eb1ccd6230065867e22707a42 (diff) | |
download | edk2-6fb8ddd36bde45614b0a069528cdc97077835a74.zip edk2-6fb8ddd36bde45614b0a069528cdc97077835a74.tar.gz edk2-6fb8ddd36bde45614b0a069528cdc97077835a74.tar.bz2 |
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>
Diffstat (limited to 'OvmfPkg/VirtioBlkDxe')
0 files changed, 0 insertions, 0 deletions