\r
if ((Len <= Offset) || (Len < Offset + DescLen) ||\r
(Head->Type != Type) || (Head->Len != DescLen)) {\r
- USB_ERROR (("UsbCreateDesc: met mal-format descriptor\n"));\r
+ DEBUG (( EFI_D_ERROR, "UsbCreateDesc: met mal-format descriptor\n"));\r
return NULL;\r
}\r
\r
Setting = UsbCreateDesc (DescBuf, Len, USB_DESC_TYPE_INTERFACE, &Used);\r
\r
if (Setting == NULL) {\r
- USB_ERROR (("UsbParseInterfaceDesc: failed to create interface descriptor\n"));\r
+ DEBUG (( EFI_D_ERROR, "UsbParseInterfaceDesc: failed to create interface descriptor\n"));\r
return NULL;\r
}\r
\r
//\r
NumEp = Setting->Desc.NumEndpoints;\r
\r
- USB_DEBUG (("UsbParseInterfaceDesc: interface %d(setting %d) has %d endpoints\n",\r
+ DEBUG (( EFI_D_INFO, "UsbParseInterfaceDesc: interface %d(setting %d) has %d endpoints\n",\r
Setting->Desc.InterfaceNumber, Setting->Desc.AlternateSetting, NumEp));\r
\r
if (NumEp == 0) {\r
Ep = UsbCreateDesc (DescBuf + Offset, Len - Offset, USB_DESC_TYPE_ENDPOINT, &Used);\r
\r
if (Ep == NULL) {\r
- USB_ERROR (("UsbParseInterfaceDesc: failed to create endpoint(index %d)\n", Index));\r
+ DEBUG (( EFI_D_ERROR, "UsbParseInterfaceDesc: failed to create endpoint(index %d)\n", Index));\r
goto ON_ERROR;\r
}\r
\r
goto ON_ERROR;\r
}\r
\r
- USB_DEBUG (("UsbParseConfigDesc: config %d has %d interfaces\n",\r
+ DEBUG (( EFI_D_INFO, "UsbParseConfigDesc: config %d has %d interfaces\n",\r
Config->Desc.ConfigurationValue, NumIf));\r
\r
for (Index = 0; Index < NumIf; Index++) {\r
Setting = UsbParseInterfaceDesc (DescBuf, Len, &Consumed);\r
\r
if ((Setting == NULL)) {\r
- USB_ERROR (("UsbParseConfigDesc: failed to parse interface setting\n"));\r
+ DEBUG (( EFI_D_ERROR, "UsbParseConfigDesc: failed to parse interface setting\n"));\r
goto ON_ERROR;\r
\r
} else if (Setting->Desc.InterfaceNumber >= NumIf) {\r
- USB_ERROR (("UsbParseConfigDesc: mal-formated interface descriptor\n"));\r
+ DEBUG (( EFI_D_ERROR, "UsbParseConfigDesc: mal-formated interface descriptor\n"));\r
\r
UsbFreeInterfaceDesc (Setting);\r
goto ON_ERROR;\r
Status = UsbCtrlGetDesc (UsbDev, USB_DESC_TYPE_CONFIG, Index, 0, &Desc, 8);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbGetOneConfig: failed to get descript length(%d) %r\n",\r
+ DEBUG (( EFI_D_ERROR, "UsbGetOneConfig: failed to get descript length(%d) %r\n",\r
Status, Desc.TotalLength));\r
\r
return NULL;\r
}\r
\r
- USB_DEBUG (("UsbGetOneConfig: total length is %d\n", Desc.TotalLength));\r
+ DEBUG (( EFI_D_INFO, "UsbGetOneConfig: total length is %d\n", Desc.TotalLength));\r
\r
Buf = AllocateZeroPool (Desc.TotalLength);\r
\r
Status = UsbCtrlGetDesc (UsbDev, USB_DESC_TYPE_CONFIG, Index, 0, Buf, Desc.TotalLength);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbGetOneConfig: failed to get full descript %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbGetOneConfig: failed to get full descript %r\n", Status));\r
\r
gBS->FreePool (Buf);\r
return NULL;\r
Status = UsbGetDevDesc (UsbDev);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbBuildDescTable: failed to get device descriptor - %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBuildDescTable: failed to get device descriptor - %r\n", Status));\r
return Status;\r
}\r
\r
return EFI_OUT_OF_RESOURCES;\r
}\r
\r
- USB_DEBUG (("UsbBuildDescTable: device has %d configures\n", NumConfig));\r
+ DEBUG (( EFI_D_INFO, "UsbBuildDescTable: device has %d configures\n", NumConfig));\r
\r
//\r
// Read each configurations, then parse them\r
Config = UsbGetOneConfig (UsbDev, Index);\r
\r
if (Config == NULL) {\r
- USB_ERROR (("UsbBuildDescTable: failed to get configure (index %d)\n", Index));\r
+ DEBUG (( EFI_D_ERROR, "UsbBuildDescTable: failed to get configure (index %d)\n", Index));\r
\r
//\r
// If we can get the default descriptor, it is likely that the\r
gBS->FreePool (Config);\r
\r
if (ConfigDesc == NULL) {\r
- USB_ERROR (("UsbBuildDescTable: failed to parse configure (index %d)\n", Index));\r
+ DEBUG (( EFI_D_ERROR, "UsbBuildDescTable: failed to parse configure (index %d)\n", Index));\r
\r
//\r
// If we can get the default descriptor, it is likely that the\r
Status = UsbBuildLangTable (UsbDev);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_DEBUG (("UsbBuildDescTable: get language ID table %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBuildDescTable: get language ID table %r\n", Status));\r
}\r
\r
return EFI_SUCCESS;\r
UsbIf->DevicePath = AppendDevicePathNode (HubIf->DevicePath, &UsbNode.Header);\r
\r
if (UsbIf->DevicePath == NULL) {\r
- USB_ERROR (("UsbCreateInterface: failed to create device path\n"));\r
+ DEBUG ((EFI_D_ERROR, "UsbCreateInterface: failed to create device path\n"));\r
\r
Status = EFI_OUT_OF_RESOURCES;\r
goto ON_ERROR;\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbCreateInterface: failed to install UsbIo - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbCreateInterface: failed to install UsbIo - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
NULL\r
);\r
\r
- USB_ERROR (("UsbCreateInterface: failed to open host for child - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbCreateInterface: failed to open host for child - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
// connect drivers with this interface\r
//\r
if (UsbIsHubInterface (UsbIf)) {\r
- USB_DEBUG (("UsbConnectDriver: found a hub device\n"));\r
+ DEBUG ((EFI_D_INFO, "UsbConnectDriver: found a hub device\n"));\r
Status = mUsbHubApi.Init (UsbIf);\r
\r
} else {\r
// or disconnect at CALLBACK.\r
//\r
OldTpl = UsbGetCurrentTpl ();\r
- USB_DEBUG (("UsbConnectDriver: TPL before connect is %d\n", OldTpl));\r
+ DEBUG ((EFI_D_INFO, "UsbConnectDriver: TPL before connect is %d\n", OldTpl));\r
\r
gBS->RestoreTPL (TPL_CALLBACK);\r
\r
Status = gBS->ConnectController (UsbIf->Handle, NULL, NULL, TRUE);\r
UsbIf->IsManaged = (BOOLEAN)!EFI_ERROR (Status);\r
\r
- USB_DEBUG (("UsbConnectDriver: TPL after connect is %d\n", UsbGetCurrentTpl()));\r
+ DEBUG ((EFI_D_INFO, "UsbConnectDriver: TPL after connect is %d\n", UsbGetCurrentTpl()));\r
ASSERT (UsbGetCurrentTpl () == TPL_CALLBACK);\r
\r
gBS->RaiseTPL (OldTpl);\r
\r
IfDesc->ActiveIndex = Index;\r
\r
- USB_DEBUG (("UsbSelectSetting: setting %d selected for interface %d\n",\r
+ DEBUG ((EFI_D_INFO, "UsbSelectSetting: setting %d selected for interface %d\n",\r
Alternate, Setting->Desc.InterfaceNumber));\r
\r
//\r
\r
Device->ActiveConfig = ConfigDesc;\r
\r
- USB_DEBUG (("UsbSelectConfig: config %d selected for device %d\n",\r
+ DEBUG ((EFI_D_INFO, "UsbSelectConfig: config %d selected for device %d\n",\r
ConfigValue, Device->Address));\r
\r
//\r
Status = UsbConnectDriver (UsbIf);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbSelectConfig: failed to connect driver %r, ignored\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbSelectConfig: failed to connect driver %r, ignored\n", Status));\r
}\r
}\r
\r
// or disconnect at CALLBACK.\r
//\r
OldTpl = UsbGetCurrentTpl ();\r
- USB_DEBUG (("UsbDisconnectDriver: old TPL is %d\n", OldTpl));\r
+ DEBUG ((EFI_D_INFO, "UsbDisconnectDriver: old TPL is %d\n", OldTpl));\r
\r
gBS->RestoreTPL (TPL_CALLBACK);\r
\r
gBS->DisconnectController (UsbIf->Handle, NULL, NULL);\r
UsbIf->IsManaged = FALSE;\r
\r
- USB_DEBUG (("UsbDisconnectDriver: TPL after disconnect is %d\n", UsbGetCurrentTpl()));\r
+ DEBUG (( EFI_D_INFO, "UsbDisconnectDriver: TPL after disconnect is %d\n", UsbGetCurrentTpl()));\r
ASSERT (UsbGetCurrentTpl () == TPL_CALLBACK);\r
\r
gBS->RaiseTPL (OldTpl);\r
Status = UsbRemoveDevice (Child);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbRemoveDevice: failed to remove child, ignore error\n"));\r
+ DEBUG ((EFI_D_ERROR, "UsbRemoveDevice: failed to remove child, ignore error\n"));\r
Bus->Devices[Index] = NULL;\r
}\r
}\r
\r
UsbRemoveConfig (Device);\r
\r
- USB_DEBUG (("UsbRemoveDevice: device %d removed\n", Device->Address));\r
+ DEBUG (( EFI_D_INFO, "UsbRemoveDevice: device %d removed\n", Device->Address));\r
\r
Bus->Devices[Device->Address] = NULL;\r
UsbFreeDevice (Device);\r
Status = HubApi->ResetPort (HubIf, Port);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to reset port %d - %r\n", Port, Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to reset port %d - %r\n", Port, Status));\r
\r
return Status;\r
}\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: hub port %d is reset\n", Port));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumerateNewDev: hub port %d is reset\n", Port));\r
\r
Child = UsbCreateDevice (HubIf, Port);\r
\r
Status = HubApi->GetPortStatus (HubIf, Port, &PortState);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to get speed of port %d\n", Port));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to get speed of port %d\n", Port));\r
goto ON_ERROR;\r
}\r
\r
Child->Speed = EFI_USB_SPEED_FULL;\r
}\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: device is of %d speed\n", Child->Speed));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumerateNewDev: device is of %d speed\n", Child->Speed));\r
\r
if (Child->Speed != EFI_USB_SPEED_HIGH) {\r
//\r
Child->Translator = Parent->Translator;\r
}\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: device uses translator (%d, %d)\n",\r
+ DEBUG (( EFI_D_INFO, "UsbEnumerateNewDev: device uses translator (%d, %d)\n",\r
Child->Translator.TranslatorHubAddress,\r
Child->Translator.TranslatorPortNumber));\r
}\r
Status = UsbGetMaxPacketSize0 (Child);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to get max packet for EP 0 - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to get max packet for EP 0 - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: max packet size for EP 0 is %d\n", Child->MaxPacket0));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumerateNewDev: max packet size for EP 0 is %d\n", Child->MaxPacket0));\r
\r
//\r
// Host assigns an address to the device. Device completes the\r
}\r
\r
if (Address == USB_MAX_DEVICES) {\r
- USB_ERROR (("UsbEnumerateNewDev: address pool is full for port %d\n", Port));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: address pool is full for port %d\n", Port));\r
\r
Status = EFI_ACCESS_DENIED;\r
goto ON_ERROR;\r
Child->Address = Address;\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to set device address - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to set device address - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
//\r
gBS->Stall (20 * USB_STALL_1_MS);\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: device is now ADDRESSED at %d\n", Address));\r
+ DEBUG ((EFI_D_INFO, "UsbEnumerateNewDev: device is now ADDRESSED at %d\n", Address));\r
\r
//\r
// Host learns about the device¡¯s abilities by requesting device's\r
Status = UsbBuildDescTable (Child);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to build descriptor table - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to build descriptor table - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
Status = UsbSetConfig (Child, Config);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to set configure %d - %r\n", Config, Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to set configure %d - %r\n", Config, Status));\r
goto ON_ERROR;\r
}\r
\r
- USB_DEBUG (("UsbEnumerateNewDev: device %d is now in CONFIGED state\n", Address));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumerateNewDev: device %d is now in CONFIGED state\n", Address));\r
\r
//\r
// Host assigns and loads a device driver.\r
Status = UsbSelectConfig (Child, Config);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumerateNewDev: failed to create interfaces - %r\n", Status));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumerateNewDev: failed to create interfaces - %r\n", Status));\r
goto ON_ERROR;\r
}\r
\r
Status = HubApi->GetPortStatus (HubIf, Port, &PortState);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbEnumeratePort: failed to get state of port %d\n", Port));\r
+ DEBUG ((EFI_D_ERROR, "UsbEnumeratePort: failed to get state of port %d\n", Port));\r
return Status;\r
}\r
\r
return EFI_SUCCESS;\r
}\r
\r
- USB_DEBUG (("UsbEnumeratePort: port %d state - %x, change - %x\n",\r
+ DEBUG (( EFI_D_INFO, "UsbEnumeratePort: port %d state - %x, change - %x\n",\r
Port, PortState.PortStatus, PortState.PortChangeStatus));\r
\r
//\r
// which probably is caused by short circuit. It has to wait system hardware\r
// to perform recovery.\r
//\r
- USB_DEBUG (("UsbEnumeratePort: Critical Over Current\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbEnumeratePort: Critical Over Current\n", Port));\r
return EFI_DEVICE_ERROR;\r
\r
} else {\r
// over current. As a result, all ports are nearly power-off, so\r
// it's necessary to detach and enumerate all ports again. \r
//\r
- USB_DEBUG (("UsbEnumeratePort: 2.0 device Recovery Over Current\n", Port)); \r
+ DEBUG (( EFI_D_ERROR, "UsbEnumeratePort: 2.0 device Recovery Over Current\n", Port)); \r
goto ON_ENUMERATE;\r
\r
}\r
// on 2.0 roothub does. When over-current has influence on 1.1 device, the port \r
// would be disabled, so it's also necessary to detach and enumerate again.\r
//\r
- USB_DEBUG (("UsbEnumeratePort: 1.1 device Recovery Over Current\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbEnumeratePort: 1.1 device Recovery Over Current\n", Port));\r
goto ON_ENUMERATE;\r
}\r
\r
Child = UsbFindChild (HubIf, Port);\r
\r
if (Child != NULL) {\r
- USB_DEBUG (("UsbEnumeratePort: device at port %d removed from system\n", Port));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumeratePort: device at port %d removed from system\n", Port));\r
UsbRemoveDevice (Child);\r
}\r
\r
//\r
// Now, new device connected, enumerate and configure the device \r
//\r
- USB_DEBUG (("UsbEnumeratePort: new device connected at port %d\n", Port));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumeratePort: new device connected at port %d\n", Port));\r
Status = UsbEnumerateNewDev (HubIf, Port);\r
\r
} else {\r
- USB_DEBUG (("UsbEnumeratePort: device disconnected event on port %d\n", Port));\r
+ DEBUG (( EFI_D_INFO, "UsbEnumeratePort: device disconnected event on port %d\n", Port));\r
}\r
\r
HubApi->ClearPortChange (HubIf, Port);\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbOnHubInterrupt: failed to remove async transfer - %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbOnHubInterrupt: failed to remove async transfer - %r\n", Status));\r
return Status;\r
}\r
\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbOnHubInterrupt: failed to submit new async transfer - %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbOnHubInterrupt: failed to submit new async transfer - %r\n", Status));\r
}\r
\r
return Status;\r
}\r
\r
if (Index == Setting->Desc.NumEndpoints) {\r
- USB_ERROR (("UsbHubInit: no interrupt endpoint found for hub %d\n", HubDev->Address));\r
+ DEBUG (( EFI_D_ERROR, "UsbHubInit: no interrupt endpoint found for hub %d\n", HubDev->Address));\r
return EFI_DEVICE_ERROR;\r
}\r
\r
Status = UsbHubReadDesc (HubDev, &HubDesc);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbHubInit: failed to read HUB descriptor %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbHubInit: failed to read HUB descriptor %r\n", Status));\r
return Status;\r
}\r
\r
HubIf->NumOfPort = HubDesc.NumPorts;\r
\r
- USB_DEBUG (("UsbHubInit: hub %d has %d ports\n", HubDev->Address,HubIf->NumOfPort));\r
+ DEBUG (( EFI_D_INFO, "UsbHubInit: hub %d has %d ports\n", HubDev->Address,HubIf->NumOfPort));\r
\r
//\r
// Create an event to enumerate the hub's port. On\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbHubInit: failed to create signal for hub %d - %r\n",\r
+ DEBUG (( EFI_D_ERROR, "UsbHubInit: failed to create signal for hub %d - %r\n",\r
HubDev->Address, Status));\r
\r
return Status;\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbHubInit: failed to queue interrupt transfer for hub %d - %r\n",\r
+ DEBUG (( EFI_D_ERROR, "UsbHubInit: failed to queue interrupt transfer for hub %d - %r\n",\r
HubDev->Address, Status));\r
\r
gBS->CloseEvent (HubIf->HubNotify);\r
gBS->Stall (HubDesc.PwrOn2PwrGood * 2 * USB_STALL_1_MS);\r
UsbHubAckHubStatus (HubIf->Device);\r
\r
- USB_DEBUG (("UsbHubInit: hub %d initialized\n", HubDev->Address));\r
+ DEBUG (( EFI_D_INFO, "UsbHubInit: hub %d initialized\n", HubDev->Address));\r
return Status;\r
}\r
\r
HubIf->HubEp = NULL;\r
HubIf->HubNotify = NULL;\r
\r
- USB_DEBUG (("UsbHubRelease: hub device %d released\n", HubIf->Device->Address));\r
+ DEBUG (( EFI_D_INFO, "UsbHubRelease: hub device %d released\n", HubIf->Device->Address));\r
return EFI_SUCCESS;\r
}\r
\r
return Status;\r
}\r
\r
- USB_DEBUG (("UsbRootHubInit: root hub %x - max speed %d, %d ports\n",\r
+ DEBUG (( EFI_D_INFO, "UsbRootHubInit: root hub %x - max speed %d, %d ports\n",\r
HubIf, MaxSpeed, NumOfPort));\r
\r
HubIf->IsHub = TRUE;\r
return Status;\r
}\r
\r
+ //\r
+ // It should signal the event immediately here, or device detection\r
+ // by bus enumeration might be delayed by the timer interval.\r
+ //\r
+ gBS->SignalEvent (HubIf->HubNotify);\r
+\r
Status = gBS->SetTimer (\r
HubIf->HubNotify,\r
TimerPeriodic,\r
Status = UsbHcSetRootHubPortFeature (Bus, Port, EfiUsbPortReset);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbRootHubResetPort: failed to start reset on port %d\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbRootHubResetPort: failed to start reset on port %d\n", Port));\r
return Status;\r
}\r
\r
Status = UsbHcClearRootHubPortFeature (Bus, Port, EfiUsbPortReset);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbRootHubResetPort: failed to clear reset on port %d\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbRootHubResetPort: failed to clear reset on port %d\n", Port));\r
return Status;\r
}\r
\r
}\r
\r
if (Index == USB_HUB_LOOP) {\r
- USB_ERROR (("UsbRootHubResetPort: reset not finished in time on port %d\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbRootHubResetPort: reset not finished in time on port %d\n", Port));\r
return EFI_TIMEOUT;\r
}\r
\r
// automatically enable the port, we need to enable it manually.\r
//\r
if (RootIf->MaxSpeed == EFI_USB_SPEED_HIGH) {\r
- USB_ERROR (("UsbRootHubResetPort: release low/full speed device (%d) to UHCI\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbRootHubResetPort: release low/full speed device (%d) to UHCI\n", Port));\r
\r
UsbRootHubSetPortFeature (RootIf, Port, EfiUsbPortOwner);\r
return EFI_NOT_FOUND;\r
Status = UsbRootHubSetPortFeature (RootIf, Port, EfiUsbPortEnable);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbRootHubResetPort: failed to enable port %d for UHCI\n", Port));\r
+ DEBUG (( EFI_D_ERROR, "UsbRootHubResetPort: failed to enable port %d for UHCI\n", Port));\r
return Status;\r
}\r
\r
IN USB_INTERFACE *HubIf\r
)\r
{\r
- USB_DEBUG (("UsbRootHubRelease: root hub released for hub %x\n", HubIf));\r
+ DEBUG (( EFI_D_INFO, "UsbRootHubRelease: root hub released for hub %x\n", HubIf));\r
\r
gBS->SetTimer (HubIf->HubNotify, TimerCancel, USB_ROOTHUB_POLL_INTERVAL);\r
gBS->CloseEvent (HubIf->HubNotify);\r
return Tpl;\r
}\r
\r
-\r
-#ifdef EFI_DEBUG\r
-VOID\r
-UsbDebug (\r
- IN CHAR8 *Format,\r
- ...\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- USB's debug output function.\r
-\r
-Arguments:\r
-\r
- Format - The format parameters to the print\r
- ... - The variable length parameters after format\r
-\r
-Returns:\r
-\r
- None\r
-\r
---*/\r
-{\r
- VA_LIST Marker;\r
-\r
- VA_START (Marker, Format);\r
- DebugVPrint (DEBUG_INFO, Format, Marker);\r
- VA_END (Marker);\r
-}\r
-\r
-\r
-\r
-/**\r
- USB's error output function.\r
-\r
- @param Format The format parameters to the print\r
- @param ... The variable length parameters after format\r
-\r
- @return None\r
-\r
-**/\r
-VOID\r
-UsbError (\r
- IN CHAR8 *Format,\r
- ...\r
- )\r
-{\r
- VA_LIST Marker;\r
-\r
- VA_START (Marker, Format);\r
- DebugVPrint (DEBUG_ERROR, Format, Marker);\r
- VA_END (Marker);\r
-}\r
-\r
-#endif\r
VOID\r
);\r
\r
-//\r
-// USB debug support routines\r
-//\r
-#ifdef EFI_DEBUG\r
- #define USB_DEBUG(arg) UsbDebug arg\r
- #define USB_ERROR(arg) UsbError arg\r
-#else\r
- #define USB_DEBUG(arg)\r
- #define USB_ERROR(arg)\r
-#endif\r
\r
VOID\r
UsbDebug (\r
\r
goto ON_EXIT;\r
}\r
-\r
- USB_DEBUG (("UsbIoControlTransfer: configure changed!!! Do NOT use old UsbIo!!!\n"));\r
+ DEBUG ((EFI_D_INFO, "UsbIoControlTransfer: configure changed!!! Do NOT use old UsbIo!!!\n"));\r
\r
if (Dev->ActiveConfig != NULL) {\r
UsbRemoveConfig (Dev);\r
Status = HubIf->HubApi->ResetPort (HubIf, Dev->ParentPort);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbIoPortReset: failed to reset hub port %d@hub %d, %r \n",\r
+ DEBUG (( EFI_D_ERROR, "UsbIoPortReset: failed to reset hub port %d@hub %d, %r \n",\r
Dev->ParentPort, Dev->ParentAddr, Status));\r
\r
goto ON_EXIT;\r
Status = UsbSetAddress (Dev, Address);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbIoPortReset: failed to set address for device %d - %r\n",\r
+ DEBUG (( EFI_D_ERROR, "UsbIoPortReset: failed to set address for device %d - %r\n",\r
Address, Status));\r
\r
goto ON_EXIT;\r
Status = UsbSetConfig (Dev, Dev->ActiveConfig->Desc.ConfigurationValue);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbIoPortReset: failed to set configure for device %d - %r\n",\r
+ DEBUG (( EFI_D_ERROR, "UsbIoPortReset: failed to set configure for device %d - %r\n",\r
Address, Status));\r
}\r
}\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbBusStart: Failed to open device path %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBusStart: Failed to open device path %r\n", Status));\r
\r
gBS->FreePool (UsbBus);\r
return Status;\r
);\r
\r
if (EFI_ERROR (Status) && EFI_ERROR (Status2)) {\r
- USB_ERROR (("UsbBusStart: Failed to open USB_HC/USB2_HC %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBusStart: Failed to open USB_HC/USB2_HC %r\n", Status));\r
\r
Status = EFI_DEVICE_ERROR;\r
goto CLOSE_HC;\r
RootIf->Device = RootHub;\r
RootIf->DevicePath = UsbBus->DevicePath;\r
\r
+ \r
+ UsbHcReset (UsbBus, EFI_USB_HC_RESET_GLOBAL);\r
+ UsbHcSetState (UsbBus, EfiUsbHcStateOperational);\r
+\r
Status = mUsbRootHubApi.Init (RootIf);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbBusStart: Failed to init root hub %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBusStart: Failed to init root hub %r\n", Status));\r
goto FREE_ROOTHUB;\r
}\r
\r
);\r
\r
if (EFI_ERROR (Status)) {\r
- USB_ERROR (("UsbBusStart: Failed to install bus protocol %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBusStart: Failed to install bus protocol %r\n", Status));\r
\r
mUsbRootHubApi.Release (RootIf);\r
goto FREE_ROOTHUB;\r
}\r
\r
- UsbHcReset (UsbBus, EFI_USB_HC_RESET_GLOBAL);\r
- UsbHcSetState (UsbBus, EfiUsbHcStateOperational);\r
\r
- USB_DEBUG (("UsbBusStart: usb bus started on %x, root hub %x\n", Controller, RootIf));\r
+ DEBUG (( EFI_D_INFO, "UsbBusStart: usb bus started on %x, root hub %x\n", Controller, RootIf));\r
return EFI_SUCCESS;\r
\r
FREE_ROOTHUB:\r
\r
gBS->FreePool (UsbBus);\r
\r
- USB_ERROR (("UsbBusStart: Failed to start bus driver %r\n", Status));\r
+ DEBUG (( EFI_D_ERROR, "UsbBusStart: Failed to start bus driver %r\n", Status));\r
return Status;\r
}\r
\r
return EFI_SUCCESS;\r
}\r
\r
- USB_DEBUG (("UsbBusStop: usb bus stopped on %x\n", Controller));\r
+ DEBUG (( EFI_D_INFO, "UsbBusStop: usb bus stopped on %x\n", Controller));\r
\r
//\r
// Locate USB_BUS for the current host controller\r