diff options
author | mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-05-07 22:46:14 +0000 |
---|---|---|
committer | mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-05-07 22:46:14 +0000 |
commit | 2dda77a650cf350751b5536a48d586a3ae02d515 (patch) | |
tree | c924e69235d8f6e59628eb5b440e703241674f8f | |
parent | 8063b47b1ca5aae1788a30568c2996ca81748010 (diff) | |
download | edk2-2dda77a650cf350751b5536a48d586a3ae02d515.tar.gz edk2-2dda77a650cf350751b5536a48d586a3ae02d515.tar.bz2 edk2-2dda77a650cf350751b5536a48d586a3ae02d515.zip |
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
-rw-r--r-- | MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c | 6 | ||||
-rw-r--r-- | 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);
}
/**
|