\r
#include "Ehci.h"\r
\r
-UINTN gEHCDebugLevel = EFI_D_INFO;\r
-UINTN gEHCErrorLevel = EFI_D_ERROR;\r
+\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINTN gEHCDebugLevel = EFI_D_INFO;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINTN gEHCErrorLevel = EFI_D_ERROR;\r
+\r
\r
//\r
// Prototypes\r
EhciDriverBindingSupported,\r
EhciDriverBindingStart,\r
EhciDriverBindingStop,\r
- 0x10,\r
+ 0xa,\r
NULL,\r
NULL\r
};\r
\r
-UINT32 mUsbCapabilityLen;\r
-UINT32 mDeviceSpeed[16];\r
\r
EFI_STATUS\r
EFIAPI\r
Status = EFI_DEVICE_ERROR;\r
goto uninstall_usb2hc_protocol;\r
}\r
+\r
+ ClearLegacySupport (HcDev);\r
+ HostReset (HcDev);\r
+\r
+ DEBUG_CODE (\r
+ DumpEHCIPortsStatus (HcDev);\r
+ );\r
\r
//\r
// Create and Init Perodic Frame List\r
//\r
Status = SetFrameListBaseAddr (\r
HcDev, \r
- GET_0B_TO_31B (HcDev->PeriodicFrameListBuffer)\r
+ (UINT32)GET_0B_TO_31B (HcDev->PeriodicFrameListBuffer)\r
);\r
if (EFI_ERROR (Status)) {\r
Status = EFI_DEVICE_ERROR;\r
// Not Low Speed Device Attached\r
//\r
if ((PORTSC_CCS & PortStatusControlReg) && (PORTSC_CSC & PortStatusControlReg)) {\r
- mDeviceSpeed[PortNumber] = IsHighSpeedDevice (This, PortNumber) ? USB_PORT_STAT_HIGH_SPEED : 0;\r
+ HcDev->DeviceSpeed[PortNumber] = IsHighSpeedDevice (This, PortNumber) ? USB_PORT_STAT_HIGH_SPEED : 0;\r
}\r
- PortStatus->PortStatus |= mDeviceSpeed[PortNumber];\r
+ PortStatus->PortStatus |= HcDev->DeviceSpeed[PortNumber];\r
}\r
//\r
// Fill Port Status Change bits\r
}\r
Status = WaitForEhcNotHalt (HcDev, EHCI_GENERIC_TIMEOUT);\r
if (EFI_ERROR (Status)) {\r
- DEBUG ((gEHCDebugLevel, "WaitForEhcNotHalt TimeOut\n"));\r
+ DEBUG ((gEHCDebugLevel, "EHCI: WaitForEhcNotHalt TimeOut\n"));\r
Status = EFI_DEVICE_ERROR;\r
goto exit;\r
}\r