add error handling on usb related modules.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9566 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
eric_tian
2009-12-16 00:58:46 +00:00
parent 7748eb28e1
commit efe9186f09
8 changed files with 90 additions and 16 deletions

View File

@@ -1884,6 +1884,12 @@ EhcDriverBindingStop (
FreeUnicodeStringTable (Ehc->ControllerNameTable);
}
//
// Disable routing of all ports to EHCI controller, so all ports are
// routed back to the UHCI controller.
//
EhcClearOpRegBit (Ehc, EHC_CONFIG_FLAG_OFFSET, CONFIGFLAG_ROUTE_EHC);
//
// Restore original PCI attributes
//

View File

@@ -160,6 +160,35 @@ EhcWriteOpReg (
IN UINT32 Data
);
/**
Set one bit of the operational register while keeping other bits.
@param Ehc The EHCI device.
@param Offset The offset of the operational register.
@param Bit The bit mask of the register to set.
**/
VOID
EhcSetOpRegBit (
IN USB2_HC_DEV *Ehc,
IN UINT32 Offset,
IN UINT32 Bit
);
/**
Clear one bit of the operational register while keeping other bits.
@param Ehc The EHCI device.
@param Offset The offset of the operational register.
@param Bit The bit mask of the register to clear.
**/
VOID
EhcClearOpRegBit (
IN USB2_HC_DEV *Ehc,
IN UINT32 Offset,
IN UINT32 Bit
);
/**
Add support for UEFI Over Legacy (UoL) feature, stop