diff options
author | erictian <erictian@6f19259b-4bc3-4df7-8a09-765794883524> | 2013-05-10 05:23:39 +0000 |
---|---|---|
committer | erictian <erictian@6f19259b-4bc3-4df7-8a09-765794883524> | 2013-05-10 05:23:39 +0000 |
commit | 11249a733930112d101d0d9d37fb0150f9c066cb (patch) | |
tree | 572104d49a428fe19cb4f3b049661106fb50796f | |
parent | 70eca31be15bf93072641b8dccaa9de22af2d5f2 (diff) | |
download | edk2-platforms-11249a733930112d101d0d9d37fb0150f9c066cb.tar.xz |
MdeMdeModulePkg/Xhci: Clear BIOS_OWN semaphore before halting XHCI controller
Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Steven Shi <steven.shi@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14339 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c b/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c index 5809a0f914..8e6bc6ff64 100644 --- a/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c +++ b/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c @@ -932,9 +932,9 @@ XhcControlTransfer ( } Xhc->UsbDevContext[SlotId].ConfDesc = AllocateZeroPool (Xhc->UsbDevContext[SlotId].DevDesc.NumConfigurations * sizeof (EFI_USB_CONFIG_DESCRIPTOR *)); if (Xhc->HcCParams.Data.Csz == 0) { - Status = XhcEvaluateContext (Xhc, SlotId, MaxPacket0);
+ Status = XhcEvaluateContext (Xhc, SlotId, MaxPacket0); } else { - Status = XhcEvaluateContext64 (Xhc, SlotId, MaxPacket0);
+ Status = XhcEvaluateContext64 (Xhc, SlotId, MaxPacket0); } ASSERT_EFI_ERROR (Status); } else if (DescriptorType == USB_DESC_TYPE_CONFIG) { @@ -1802,6 +1802,8 @@ XhcExitBootService ( gBS->CloseEvent (Xhc->PollTimer); } + XhcClearBiosOwnership (Xhc); + // // Restore original PCI attributes // @@ -1811,8 +1813,6 @@ XhcExitBootService ( Xhc->OriginalPciAttributes, NULL ); - - XhcClearBiosOwnership (Xhc); } /** |