From 2dda77a650cf350751b5536a48d586a3ae02d515 Mon Sep 17 00:00:00 2001 From: mdkinney Date: Fri, 7 May 2010 22:46:14 +0000 Subject: [PATCH] Update UHCI and ECHI drivers to both Stop and Reset the host controller at ExitBootServices(). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10464 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c | 6 ++---- MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c | 6 +++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c b/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c index 238766c56c..87e4aa079b 100644 --- a/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c +++ b/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c @@ -1476,11 +1476,9 @@ EhcExitBootService ( Ehc = (USB2_HC_DEV *) Context; // - // Stop the Host Controller + // Reset the Host Controller // - EhcHaltHC (Ehc, EHC_GENERIC_TIMEOUT); - - return; + EhcResetHC (Ehc, EHC_RESET_TIMEOUT); } diff --git a/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c b/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c index 92567f93e4..beea8f32d6 100644 --- a/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c +++ b/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c @@ -1588,7 +1588,11 @@ UhcExitBootService ( // UhciStopHc (Uhc, UHC_GENERIC_TIMEOUT); - return; + // + // Reset the Host Controller + // + UhciSetRegBit (Uhc->PciIo, USBCMD_OFFSET, USBCMD_HCRESET); + gBS->Stall (UHC_ROOT_PORT_RECOVERY_STALL); } /**