summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg
diff options
context:
space:
mode:
authorRuiyu Ni <ruiyu.ni@intel.com>2017-11-27 09:17:24 +0800
committerRuiyu Ni <ruiyu.ni@intel.com>2017-11-29 09:02:46 +0800
commitdf076c7bab24ac9e68cce8b7874941dbeea3fce1 (patch)
tree888c85bb8949e059f5380d9b3d98b8f2dd058de9 /MdeModulePkg
parent0641808ece210dd2855a69302a0876af7bdc44a2 (diff)
downloadedk2-df076c7bab24ac9e68cce8b7874941dbeea3fce1.tar.gz
edk2-df076c7bab24ac9e68cce8b7874941dbeea3fce1.tar.bz2
edk2-df076c7bab24ac9e68cce8b7874941dbeea3fce1.zip
MdeModulePkg/AtaAtapiPassThru: Revert patch to disable PCI attributes
This patch caused Windows 10 S4 resume failure. Considering the similar changes are reverted from PciBus driver, revert the patch from AtaAtapiPassThru as well. Revert "MdeModulePkg/AtaAtapiPassThru: disable the device at ExitBootServices()" This reverts commit 6fb8ddd36bde45614b0a069528cdc97077835a74. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com>
Diffstat (limited to 'MdeModulePkg')
-rw-r--r--MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c59
-rw-r--r--MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h6
2 files changed, 1 insertions, 64 deletions
diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c
index 09064dda18..a48b295d26 100644
--- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c
+++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c
@@ -104,8 +104,7 @@ ATA_ATAPI_PASS_THRU_INSTANCE gAtaAtapiPassThruInstanceTemplate = {
{ // NonBlocking TaskList
NULL,
NULL
- },
- NULL, // ExitBootEvent
+ }
};
ATAPI_DEVICE_PATH mAtapiDevicePathTemplate = {
@@ -480,38 +479,6 @@ InitializeAtaAtapiPassThru (
}
/**
- Disable the device (especially Bus Master DMA) when exiting the boot
- services.
-
- @param[in] Event Event for which this notification function is being
- called.
- @param[in] Context Pointer to the ATA_ATAPI_PASS_THRU_INSTANCE that
- represents the HBA.
-**/
-VOID
-EFIAPI
-AtaPassThruExitBootServices (
- IN EFI_EVENT Event,
- IN VOID *Context
- )
-{
- ATA_ATAPI_PASS_THRU_INSTANCE *Instance;
- EFI_PCI_IO_PROTOCOL *PciIo;
-
- DEBUG ((DEBUG_VERBOSE, "%a: Context=0x%p\n", __FUNCTION__, Context));
-
- Instance = Context;
- PciIo = Instance->PciIo;
-
- PciIo->Attributes (
- PciIo,
- EfiPciIoAttributeOperationDisable,
- Instance->EnabledPciAttributes,
- NULL
- );
-}
-
-/**
Tests to see if this driver supports a given controller. If a child device is provided,
it further tests to see if this driver supports creating a handle for the specified child device.
@@ -790,17 +757,6 @@ AtaAtapiPassThruStart (
InitializeListHead(&Instance->DeviceList);
InitializeListHead(&Instance->NonBlockingTaskList);
- Status = gBS->CreateEvent (
- EVT_SIGNAL_EXIT_BOOT_SERVICES,
- TPL_CALLBACK,
- AtaPassThruExitBootServices,
- Instance,
- &Instance->ExitBootEvent
- );
- if (EFI_ERROR (Status)) {
- goto ErrorExit;
- }
-
Instance->TimerEvent = NULL;
Status = gBS->CreateEvent (
@@ -854,10 +810,6 @@ ErrorExit:
gBS->CloseEvent (Instance->TimerEvent);
}
- if ((Instance != NULL) && (Instance->ExitBootEvent != NULL)) {
- gBS->CloseEvent (Instance->ExitBootEvent);
- }
-
//
// Remove all inserted ATA devices.
//
@@ -956,15 +908,6 @@ AtaAtapiPassThruStop (
Instance->TimerEvent = NULL;
}
DestroyAsynTaskList (Instance, FALSE);
-
- //
- // Close event signaled at gBS->ExitBootServices().
- //
- if (Instance->ExitBootEvent != NULL) {
- gBS->CloseEvent (Instance->ExitBootEvent);
- Instance->ExitBootEvent = NULL;
- }
-
//
// Free allocated resource
//
diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h
index 8d6eac706c..85e5a55539 100644
--- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h
+++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h
@@ -121,12 +121,6 @@ typedef struct {
//
EFI_EVENT TimerEvent;
LIST_ENTRY NonBlockingTaskList;
-
- //
- // For disabling the device (especially Bus Master DMA) at
- // ExitBootServices().
- //
- EFI_EVENT ExitBootEvent;
} ATA_ATAPI_PASS_THRU_INSTANCE;
//