]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / XhciDxe / Xhci.c
index 5a1f907ff0c874a052520fee09db823e4aa2ab23..b79499e22565e90389e027e4ba281b4f8bdb3f20 100644 (file)
@@ -13,46 +13,46 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 // to the UEFI protocol's port state (change).\r
 //\r
 USB_PORT_STATE_MAP  mUsbPortStateMap[] = {\r
-  {XHC_PORTSC_CCS,   USB_PORT_STAT_CONNECTION},\r
-  {XHC_PORTSC_PED,   USB_PORT_STAT_ENABLE},\r
-  {XHC_PORTSC_OCA,   USB_PORT_STAT_OVERCURRENT},\r
-  {XHC_PORTSC_RESET, USB_PORT_STAT_RESET}\r
+  { XHC_PORTSC_CCS,   USB_PORT_STAT_CONNECTION  },\r
+  { XHC_PORTSC_PED,   USB_PORT_STAT_ENABLE      },\r
+  { XHC_PORTSC_OCA,   USB_PORT_STAT_OVERCURRENT },\r
+  { XHC_PORTSC_RESET, USB_PORT_STAT_RESET       }\r
 };\r
 \r
 USB_PORT_STATE_MAP  mUsbPortChangeMap[] = {\r
-  {XHC_PORTSC_CSC, USB_PORT_STAT_C_CONNECTION},\r
-  {XHC_PORTSC_PEC, USB_PORT_STAT_C_ENABLE},\r
-  {XHC_PORTSC_OCC, USB_PORT_STAT_C_OVERCURRENT},\r
-  {XHC_PORTSC_PRC, USB_PORT_STAT_C_RESET}\r
+  { XHC_PORTSC_CSC, USB_PORT_STAT_C_CONNECTION  },\r
+  { XHC_PORTSC_PEC, USB_PORT_STAT_C_ENABLE      },\r
+  { XHC_PORTSC_OCC, USB_PORT_STAT_C_OVERCURRENT },\r
+  { XHC_PORTSC_PRC, USB_PORT_STAT_C_RESET       }\r
 };\r
 \r
-USB_CLEAR_PORT_MAP mUsbClearPortChangeMap[] = {\r
-  {XHC_PORTSC_CSC, EfiUsbPortConnectChange},\r
-  {XHC_PORTSC_PEC, EfiUsbPortEnableChange},\r
-  {XHC_PORTSC_OCC, EfiUsbPortOverCurrentChange},\r
-  {XHC_PORTSC_PRC, EfiUsbPortResetChange}\r
+USB_CLEAR_PORT_MAP  mUsbClearPortChangeMap[] = {\r
+  { XHC_PORTSC_CSC, EfiUsbPortConnectChange     },\r
+  { XHC_PORTSC_PEC, EfiUsbPortEnableChange      },\r
+  { XHC_PORTSC_OCC, EfiUsbPortOverCurrentChange },\r
+  { XHC_PORTSC_PRC, EfiUsbPortResetChange       }\r
 };\r
 \r
 USB_PORT_STATE_MAP  mUsbHubPortStateMap[] = {\r
-  {XHC_HUB_PORTSC_CCS,   USB_PORT_STAT_CONNECTION},\r
-  {XHC_HUB_PORTSC_PED,   USB_PORT_STAT_ENABLE},\r
-  {XHC_HUB_PORTSC_OCA,   USB_PORT_STAT_OVERCURRENT},\r
-  {XHC_HUB_PORTSC_RESET, USB_PORT_STAT_RESET}\r
+  { XHC_HUB_PORTSC_CCS,   USB_PORT_STAT_CONNECTION  },\r
+  { XHC_HUB_PORTSC_PED,   USB_PORT_STAT_ENABLE      },\r
+  { XHC_HUB_PORTSC_OCA,   USB_PORT_STAT_OVERCURRENT },\r
+  { XHC_HUB_PORTSC_RESET, USB_PORT_STAT_RESET       }\r
 };\r
 \r
 USB_PORT_STATE_MAP  mUsbHubPortChangeMap[] = {\r
-  {XHC_HUB_PORTSC_CSC, USB_PORT_STAT_C_CONNECTION},\r
-  {XHC_HUB_PORTSC_PEC, USB_PORT_STAT_C_ENABLE},\r
-  {XHC_HUB_PORTSC_OCC, USB_PORT_STAT_C_OVERCURRENT},\r
-  {XHC_HUB_PORTSC_PRC, USB_PORT_STAT_C_RESET}\r
+  { XHC_HUB_PORTSC_CSC, USB_PORT_STAT_C_CONNECTION  },\r
+  { XHC_HUB_PORTSC_PEC, USB_PORT_STAT_C_ENABLE      },\r
+  { XHC_HUB_PORTSC_OCC, USB_PORT_STAT_C_OVERCURRENT },\r
+  { XHC_HUB_PORTSC_PRC, USB_PORT_STAT_C_RESET       }\r
 };\r
 \r
-USB_CLEAR_PORT_MAP mUsbHubClearPortChangeMap[] = {\r
-  {XHC_HUB_PORTSC_CSC, EfiUsbPortConnectChange},\r
-  {XHC_HUB_PORTSC_PEC, EfiUsbPortEnableChange},\r
-  {XHC_HUB_PORTSC_OCC, EfiUsbPortOverCurrentChange},\r
-  {XHC_HUB_PORTSC_PRC, EfiUsbPortResetChange},\r
-  {XHC_HUB_PORTSC_BHRC, Usb3PortBHPortResetChange}\r
+USB_CLEAR_PORT_MAP  mUsbHubClearPortChangeMap[] = {\r
+  { XHC_HUB_PORTSC_CSC,  EfiUsbPortConnectChange     },\r
+  { XHC_HUB_PORTSC_PEC,  EfiUsbPortEnableChange      },\r
+  { XHC_HUB_PORTSC_OCC,  EfiUsbPortOverCurrentChange },\r
+  { XHC_HUB_PORTSC_PRC,  EfiUsbPortResetChange       },\r
+  { XHC_HUB_PORTSC_BHRC, Usb3PortBHPortResetChange   }\r
 };\r
 \r
 EFI_DRIVER_BINDING_PROTOCOL  gXhciDriverBinding = {\r
@@ -67,7 +67,7 @@ EFI_DRIVER_BINDING_PROTOCOL  gXhciDriverBinding = {
 //\r
 // Template for Xhci's Usb2 Host Controller Protocol Instance.\r
 //\r
-EFI_USB2_HC_PROTOCOL gXhciUsb2HcTemplate = {\r
+EFI_USB2_HC_PROTOCOL  gXhciUsb2HcTemplate = {\r
   XhcGetCapability,\r
   XhcReset,\r
   XhcGetState,\r
@@ -114,12 +114,12 @@ XhcGetCapability (
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
-  OldTpl          = gBS->RaiseTPL (XHC_TPL);\r
+  OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
   Xhc             = XHC_FROM_THIS (This);\r
   *MaxSpeed       = EFI_USB_SPEED_SUPER;\r
-  *PortNumber     = (UINT8) (Xhc->HcSParams1.Data.MaxPorts);\r
-  *Is64BitCapable = (UINT8) Xhc->Support64BitDma;\r
+  *PortNumber     = (UINT8)(Xhc->HcSParams1.Data.MaxPorts);\r
+  *Is64BitCapable = (UINT8)Xhc->Support64BitDma;\r
   DEBUG ((DEBUG_INFO, "XhcGetCapability: %d ports, 64 bit %d\n", *PortNumber, *Is64BitCapable));\r
 \r
   gBS->RestoreTPL (OldTpl);\r
@@ -127,7 +127,6 @@ XhcGetCapability (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Provides software reset for the USB host controller.\r
 \r
@@ -168,51 +167,54 @@ XhcReset (
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
   switch (Attributes) {\r
-  case EFI_USB_HC_RESET_GLOBAL:\r
-  //\r
-  // Flow through, same behavior as Host Controller Reset\r
-  //\r
-  case EFI_USB_HC_RESET_HOST_CONTROLLER:\r
-    if ((Xhc->DebugCapSupOffset != 0xFFFFFFFF) && ((XhcReadExtCapReg (Xhc, Xhc->DebugCapSupOffset) & 0xFF) == XHC_CAP_USB_DEBUG) &&\r
-        ((XhcReadExtCapReg (Xhc, Xhc->DebugCapSupOffset + XHC_DC_DCCTRL) & BIT0) != 0)) {\r
-      Status = EFI_SUCCESS;\r
-      goto ON_EXIT;\r
-    }\r
+    case EFI_USB_HC_RESET_GLOBAL:\r
     //\r
-    // Host Controller must be Halt when Reset it\r
+    // Flow through, same behavior as Host Controller Reset\r
     //\r
-    if (!XhcIsHalt (Xhc)) {\r
-      Status = XhcHaltHC (Xhc, XHC_GENERIC_TIMEOUT);\r
+    case EFI_USB_HC_RESET_HOST_CONTROLLER:\r
+      if ((Xhc->DebugCapSupOffset != 0xFFFFFFFF) && ((XhcReadExtCapReg (Xhc, Xhc->DebugCapSupOffset) & 0xFF) == XHC_CAP_USB_DEBUG) &&\r
+          ((XhcReadExtCapReg (Xhc, Xhc->DebugCapSupOffset + XHC_DC_DCCTRL) & BIT0) != 0))\r
+      {\r
+        Status = EFI_SUCCESS;\r
+        goto ON_EXIT;\r
+      }\r
+\r
+      //\r
+      // Host Controller must be Halt when Reset it\r
+      //\r
+      if (!XhcIsHalt (Xhc)) {\r
+        Status = XhcHaltHC (Xhc, XHC_GENERIC_TIMEOUT);\r
+\r
+        if (EFI_ERROR (Status)) {\r
+          Status = EFI_DEVICE_ERROR;\r
+          goto ON_EXIT;\r
+        }\r
+      }\r
+\r
+      Status = XhcResetHC (Xhc, XHC_RESET_TIMEOUT);\r
+      ASSERT (!(XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_CNR)));\r
 \r
       if (EFI_ERROR (Status)) {\r
-        Status = EFI_DEVICE_ERROR;\r
         goto ON_EXIT;\r
       }\r
-    }\r
-\r
-    Status = XhcResetHC (Xhc, XHC_RESET_TIMEOUT);\r
-    ASSERT (!(XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_CNR)));\r
 \r
-    if (EFI_ERROR (Status)) {\r
-      goto ON_EXIT;\r
-    }\r
-    //\r
-    // Clean up the asynchronous transfers, currently only\r
-    // interrupt supports asynchronous operation.\r
-    //\r
-    XhciDelAllAsyncIntTransfers (Xhc);\r
-    XhcFreeSched (Xhc);\r
+      //\r
+      // Clean up the asynchronous transfers, currently only\r
+      // interrupt supports asynchronous operation.\r
+      //\r
+      XhciDelAllAsyncIntTransfers (Xhc);\r
+      XhcFreeSched (Xhc);\r
 \r
-    XhcInitSched (Xhc);\r
-    break;\r
+      XhcInitSched (Xhc);\r
+      break;\r
 \r
-  case EFI_USB_HC_RESET_GLOBAL_WITH_DEBUG:\r
-  case EFI_USB_HC_RESET_HOST_WITH_DEBUG:\r
-    Status = EFI_UNSUPPORTED;\r
-    break;\r
+    case EFI_USB_HC_RESET_GLOBAL_WITH_DEBUG:\r
+    case EFI_USB_HC_RESET_HOST_WITH_DEBUG:\r
+      Status = EFI_UNSUPPORTED;\r
+      break;\r
 \r
-  default:\r
-    Status = EFI_INVALID_PARAMETER;\r
+    default:\r
+      Status = EFI_INVALID_PARAMETER;\r
   }\r
 \r
 ON_EXIT:\r
@@ -222,7 +224,6 @@ ON_EXIT:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Retrieve the current state of the USB host controller.\r
 \r
@@ -252,7 +253,7 @@ XhcGetState (
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc    = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   if (XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_HALT)) {\r
     *State = EfiUsbHcStateHalt;\r
@@ -285,10 +286,10 @@ XhcSetState (
   IN EFI_USB_HC_STATE      State\r
   )\r
 {\r
-  USB_XHCI_INSTANCE   *Xhc;\r
-  EFI_STATUS          Status;\r
-  EFI_USB_HC_STATE    CurState;\r
-  EFI_TPL             OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  EFI_STATUS         Status;\r
+  EFI_USB_HC_STATE   CurState;\r
+  EFI_TPL            OldTpl;\r
 \r
   Status = XhcGetState (This, &CurState);\r
 \r
@@ -302,38 +303,38 @@ XhcSetState (
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc    = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   switch (State) {\r
-  case EfiUsbHcStateHalt:\r
-    Status = XhcHaltHC (Xhc, XHC_GENERIC_TIMEOUT);\r
-    break;\r
-\r
-  case EfiUsbHcStateOperational:\r
-    if (XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_HSE)) {\r
-      Status = EFI_DEVICE_ERROR;\r
+    case EfiUsbHcStateHalt:\r
+      Status = XhcHaltHC (Xhc, XHC_GENERIC_TIMEOUT);\r
       break;\r
-    }\r
 \r
-    //\r
-    // Software must not write a one to this field unless the host controller\r
-    // is in the Halted state. Doing so will yield undefined results.\r
-    // refers to Spec[XHCI1.0-2.3.1]\r
-    //\r
-    if (!XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_HALT)) {\r
-      Status = EFI_DEVICE_ERROR;\r
-      break;\r
-    }\r
+    case EfiUsbHcStateOperational:\r
+      if (XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_HSE)) {\r
+        Status = EFI_DEVICE_ERROR;\r
+        break;\r
+      }\r
 \r
-    Status = XhcRunHC (Xhc, XHC_GENERIC_TIMEOUT);\r
-    break;\r
+      //\r
+      // Software must not write a one to this field unless the host controller\r
+      // is in the Halted state. Doing so will yield undefined results.\r
+      // refers to Spec[XHCI1.0-2.3.1]\r
+      //\r
+      if (!XHC_REG_BIT_IS_SET (Xhc, XHC_USBSTS_OFFSET, XHC_USBSTS_HALT)) {\r
+        Status = EFI_DEVICE_ERROR;\r
+        break;\r
+      }\r
 \r
-  case EfiUsbHcStateSuspend:\r
-    Status = EFI_UNSUPPORTED;\r
-    break;\r
+      Status = XhcRunHC (Xhc, XHC_GENERIC_TIMEOUT);\r
+      break;\r
 \r
-  default:\r
-    Status = EFI_INVALID_PARAMETER;\r
+    case EfiUsbHcStateSuspend:\r
+      Status = EFI_UNSUPPORTED;\r
+      break;\r
+\r
+    default:\r
+      Status = EFI_INVALID_PARAMETER;\r
   }\r
 \r
   DEBUG ((DEBUG_INFO, "XhcSetState: status %r\n", Status));\r
@@ -364,15 +365,15 @@ XhcGetRootHubPortStatus (
   OUT EFI_USB_PORT_STATUS   *PortStatus\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  UINT32                  Offset;\r
-  UINT32                  State;\r
-  UINT32                  TotalPort;\r
-  UINTN                   Index;\r
-  UINTN                   MapSize;\r
-  EFI_STATUS              Status;\r
-  USB_DEV_ROUTE           ParentRouteChart;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  UINT32             Offset;\r
+  UINT32             State;\r
+  UINT32             TotalPort;\r
+  UINTN              Index;\r
+  UINTN              MapSize;\r
+  EFI_STATUS         Status;\r
+  USB_DEV_ROUTE      ParentRouteChart;\r
+  EFI_TPL            OldTpl;\r
 \r
   if (PortStatus == NULL) {\r
     return EFI_INVALID_PARAMETER;\r
@@ -380,8 +381,8 @@ XhcGetRootHubPortStatus (
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc       = XHC_FROM_THIS (This);\r
-  Status    = EFI_SUCCESS;\r
+  Xhc    = XHC_FROM_THIS (This);\r
+  Status = EFI_SUCCESS;\r
 \r
   TotalPort = Xhc->HcSParams1.Data.MaxPorts;\r
 \r
@@ -390,7 +391,7 @@ XhcGetRootHubPortStatus (
     goto ON_EXIT;\r
   }\r
 \r
-  Offset                       = (UINT32) (XHC_PORTSC_OFFSET + (0x10 * PortNumber));\r
+  Offset                       = (UINT32)(XHC_PORTSC_OFFSET + (0x10 * PortNumber));\r
   PortStatus->PortStatus       = 0;\r
   PortStatus->PortChangeStatus = 0;\r
 \r
@@ -401,21 +402,21 @@ XhcGetRootHubPortStatus (
   // bit 10~13 of the root port status register identifies the speed of the attached device.\r
   //\r
   switch ((State & XHC_PORTSC_PS) >> 10) {\r
-  case 2:\r
-    PortStatus->PortStatus |= USB_PORT_STAT_LOW_SPEED;\r
-    break;\r
+    case 2:\r
+      PortStatus->PortStatus |= USB_PORT_STAT_LOW_SPEED;\r
+      break;\r
 \r
-  case 3:\r
-    PortStatus->PortStatus |= USB_PORT_STAT_HIGH_SPEED;\r
-    break;\r
+    case 3:\r
+      PortStatus->PortStatus |= USB_PORT_STAT_HIGH_SPEED;\r
+      break;\r
 \r
-  case 4:\r
-  case 5:\r
-    PortStatus->PortStatus |= USB_PORT_STAT_SUPER_SPEED;\r
-    break;\r
+    case 4:\r
+    case 5:\r
+      PortStatus->PortStatus |= USB_PORT_STAT_SUPER_SPEED;\r
+      break;\r
 \r
-  default:\r
-    break;\r
+    default:\r
+      break;\r
   }\r
 \r
   //\r
@@ -425,9 +426,10 @@ XhcGetRootHubPortStatus (
 \r
   for (Index = 0; Index < MapSize; Index++) {\r
     if (XHC_BIT_IS_SET (State, mUsbPortStateMap[Index].HwState)) {\r
-      PortStatus->PortStatus = (UINT16) (PortStatus->PortStatus | mUsbPortStateMap[Index].UefiState);\r
+      PortStatus->PortStatus = (UINT16)(PortStatus->PortStatus | mUsbPortStateMap[Index].UefiState);\r
     }\r
   }\r
+\r
   //\r
   // Bit5~8 reflects its current link state.\r
   //\r
@@ -439,7 +441,7 @@ XhcGetRootHubPortStatus (
 \r
   for (Index = 0; Index < MapSize; Index++) {\r
     if (XHC_BIT_IS_SET (State, mUsbPortChangeMap[Index].HwState)) {\r
-      PortStatus->PortChangeStatus = (UINT16) (PortStatus->PortChangeStatus | mUsbPortChangeMap[Index].UefiState);\r
+      PortStatus->PortChangeStatus = (UINT16)(PortStatus->PortChangeStatus | mUsbPortChangeMap[Index].UefiState);\r
     }\r
   }\r
 \r
@@ -463,7 +465,6 @@ ON_EXIT:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Sets a feature for the specified root hub port.\r
 \r
@@ -484,12 +485,12 @@ XhcSetRootHubPortFeature (
   IN EFI_USB_PORT_FEATURE  PortFeature\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  UINT32                  Offset;\r
-  UINT32                  State;\r
-  UINT32                  TotalPort;\r
-  EFI_STATUS              Status;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  UINT32             Offset;\r
+  UINT32             State;\r
+  UINT32             TotalPort;\r
+  EFI_STATUS         Status;\r
+  EFI_TPL            OldTpl;\r
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
@@ -503,71 +504,71 @@ XhcSetRootHubPortFeature (
     goto ON_EXIT;\r
   }\r
 \r
-  Offset = (UINT32) (XHC_PORTSC_OFFSET + (0x10 * PortNumber));\r
+  Offset = (UINT32)(XHC_PORTSC_OFFSET + (0x10 * PortNumber));\r
   State  = XhcReadOpReg (Xhc, Offset);\r
 \r
   //\r
   // Mask off the port status change bits, these bits are\r
   // write clean bit\r
   //\r
-  State &= ~ (BIT1 | BIT17 | BIT18 | BIT19 | BIT20 | BIT21 | BIT22 | BIT23);\r
+  State &= ~(BIT1 | BIT17 | BIT18 | BIT19 | BIT20 | BIT21 | BIT22 | BIT23);\r
 \r
   switch (PortFeature) {\r
-  case EfiUsbPortEnable:\r
-    //\r
-    // Ports may only be enabled by the xHC. Software cannot enable a port by writing a '1' to this flag.\r
-    // A port may be disabled by software writing a '1' to this flag.\r
-    //\r
-    Status = EFI_SUCCESS;\r
-    break;\r
-\r
-  case EfiUsbPortSuspend:\r
-    State |= XHC_PORTSC_LWS;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    State &= ~XHC_PORTSC_PLS;\r
-    State |= (3 << 5) ;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
-\r
-  case EfiUsbPortReset:\r
-    DEBUG ((DEBUG_INFO, "XhcUsbPortReset!\n"));\r
-    //\r
-    // Make sure Host Controller not halt before reset it\r
-    //\r
-    if (XhcIsHalt (Xhc)) {\r
-      Status = XhcRunHC (Xhc, XHC_GENERIC_TIMEOUT);\r
+    case EfiUsbPortEnable:\r
+      //\r
+      // Ports may only be enabled by the xHC. Software cannot enable a port by writing a '1' to this flag.\r
+      // A port may be disabled by software writing a '1' to this flag.\r
+      //\r
+      Status = EFI_SUCCESS;\r
+      break;\r
 \r
-      if (EFI_ERROR (Status)) {\r
-        DEBUG ((DEBUG_INFO, "XhcSetRootHubPortFeature :failed to start HC - %r\n", Status));\r
-        break;\r
+    case EfiUsbPortSuspend:\r
+      State |= XHC_PORTSC_LWS;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      State &= ~XHC_PORTSC_PLS;\r
+      State |= (3 << 5);\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
+\r
+    case EfiUsbPortReset:\r
+      DEBUG ((DEBUG_INFO, "XhcUsbPortReset!\n"));\r
+      //\r
+      // Make sure Host Controller not halt before reset it\r
+      //\r
+      if (XhcIsHalt (Xhc)) {\r
+        Status = XhcRunHC (Xhc, XHC_GENERIC_TIMEOUT);\r
+\r
+        if (EFI_ERROR (Status)) {\r
+          DEBUG ((DEBUG_INFO, "XhcSetRootHubPortFeature :failed to start HC - %r\n", Status));\r
+          break;\r
+        }\r
       }\r
-    }\r
 \r
-    //\r
-    // 4.3.1 Resetting a Root Hub Port\r
-    // 1) Write the PORTSC register with the Port Reset (PR) bit set to '1'.\r
-    //\r
-    State |= XHC_PORTSC_RESET;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    XhcWaitOpRegBit(Xhc, Offset, XHC_PORTSC_PRC, TRUE, XHC_GENERIC_TIMEOUT);\r
-    break;\r
+      //\r
+      // 4.3.1 Resetting a Root Hub Port\r
+      // 1) Write the PORTSC register with the Port Reset (PR) bit set to '1'.\r
+      //\r
+      State |= XHC_PORTSC_RESET;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      XhcWaitOpRegBit (Xhc, Offset, XHC_PORTSC_PRC, TRUE, XHC_GENERIC_TIMEOUT);\r
+      break;\r
 \r
-  case EfiUsbPortPower:\r
-    //\r
-    // Not supported, ignore the operation\r
-    //\r
-    Status = EFI_SUCCESS;\r
-    break;\r
+    case EfiUsbPortPower:\r
+      //\r
+      // Not supported, ignore the operation\r
+      //\r
+      Status = EFI_SUCCESS;\r
+      break;\r
 \r
-  case EfiUsbPortOwner:\r
-    //\r
-    // XHCI root hub port don't has the owner bit, ignore the operation\r
-    //\r
-    Status = EFI_SUCCESS;\r
-    break;\r
+    case EfiUsbPortOwner:\r
+      //\r
+      // XHCI root hub port don't has the owner bit, ignore the operation\r
+      //\r
+      Status = EFI_SUCCESS;\r
+      break;\r
 \r
-  default:\r
-    Status = EFI_INVALID_PARAMETER;\r
+    default:\r
+      Status = EFI_INVALID_PARAMETER;\r
   }\r
 \r
 ON_EXIT:\r
@@ -577,7 +578,6 @@ ON_EXIT:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Clears a feature for the specified root hub port.\r
 \r
@@ -601,17 +601,17 @@ XhcClearRootHubPortFeature (
   IN EFI_USB_PORT_FEATURE  PortFeature\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  UINT32                  Offset;\r
-  UINT32                  State;\r
-  UINT32                  TotalPort;\r
-  EFI_STATUS              Status;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  UINT32             Offset;\r
+  UINT32             State;\r
+  UINT32             TotalPort;\r
+  EFI_STATUS         Status;\r
+  EFI_TPL            OldTpl;\r
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc       = XHC_FROM_THIS (This);\r
-  Status    = EFI_SUCCESS;\r
+  Xhc    = XHC_FROM_THIS (This);\r
+  Status = EFI_SUCCESS;\r
 \r
   TotalPort = (Xhc->HcSParams1.Data.MaxPorts);\r
 \r
@@ -627,82 +627,82 @@ XhcClearRootHubPortFeature (
   // write clean bit\r
   //\r
   State  = XhcReadOpReg (Xhc, Offset);\r
-  State &= ~ (BIT1 | BIT17 | BIT18 | BIT19 | BIT20 | BIT21 | BIT22 | BIT23);\r
+  State &= ~(BIT1 | BIT17 | BIT18 | BIT19 | BIT20 | BIT21 | BIT22 | BIT23);\r
 \r
   switch (PortFeature) {\r
-  case EfiUsbPortEnable:\r
-    //\r
-    // Ports may only be enabled by the xHC. Software cannot enable a port by writing a '1' to this flag.\r
-    // A port may be disabled by software writing a '1' to this flag.\r
-    //\r
-    State |= XHC_PORTSC_PED;\r
-    State &= ~XHC_PORTSC_RESET;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
-\r
-  case EfiUsbPortSuspend:\r
-    State |= XHC_PORTSC_LWS;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    State &= ~XHC_PORTSC_PLS;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
-\r
-  case EfiUsbPortReset:\r
-    //\r
-    // PORTSC_RESET BIT(4) bit is RW1S attribute, which means Write-1-to-set status:\r
-    // Register bits indicate status when read, a clear bit may be set by\r
-    // writing a '1'. Writing a '0' to RW1S bits has no effect.\r
-    //\r
-    break;\r
+    case EfiUsbPortEnable:\r
+      //\r
+      // Ports may only be enabled by the xHC. Software cannot enable a port by writing a '1' to this flag.\r
+      // A port may be disabled by software writing a '1' to this flag.\r
+      //\r
+      State |= XHC_PORTSC_PED;\r
+      State &= ~XHC_PORTSC_RESET;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
 \r
-  case EfiUsbPortOwner:\r
-    //\r
-    // XHCI root hub port don't has the owner bit, ignore the operation\r
-    //\r
-    break;\r
+    case EfiUsbPortSuspend:\r
+      State |= XHC_PORTSC_LWS;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      State &= ~XHC_PORTSC_PLS;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
 \r
-  case EfiUsbPortConnectChange:\r
-    //\r
-    // Clear connect status change\r
-    //\r
-    State |= XHC_PORTSC_CSC;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
+    case EfiUsbPortReset:\r
+      //\r
+      // PORTSC_RESET BIT(4) bit is RW1S attribute, which means Write-1-to-set status:\r
+      // Register bits indicate status when read, a clear bit may be set by\r
+      // writing a '1'. Writing a '0' to RW1S bits has no effect.\r
+      //\r
+      break;\r
 \r
-  case EfiUsbPortEnableChange:\r
-    //\r
-    // Clear enable status change\r
-    //\r
-    State |= XHC_PORTSC_PEC;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
+    case EfiUsbPortOwner:\r
+      //\r
+      // XHCI root hub port don't has the owner bit, ignore the operation\r
+      //\r
+      break;\r
 \r
-  case EfiUsbPortOverCurrentChange:\r
-    //\r
-    // Clear PortOverCurrent change\r
-    //\r
-    State |= XHC_PORTSC_OCC;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
+    case EfiUsbPortConnectChange:\r
+      //\r
+      // Clear connect status change\r
+      //\r
+      State |= XHC_PORTSC_CSC;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
 \r
-  case EfiUsbPortResetChange:\r
-    //\r
-    // Clear Port Reset change\r
-    //\r
-    State |= XHC_PORTSC_PRC;\r
-    XhcWriteOpReg (Xhc, Offset, State);\r
-    break;\r
+    case EfiUsbPortEnableChange:\r
+      //\r
+      // Clear enable status change\r
+      //\r
+      State |= XHC_PORTSC_PEC;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
 \r
-  case EfiUsbPortPower:\r
-  case EfiUsbPortSuspendChange:\r
-    //\r
-    // Not supported or not related operation\r
-    //\r
-    break;\r
+    case EfiUsbPortOverCurrentChange:\r
+      //\r
+      // Clear PortOverCurrent change\r
+      //\r
+      State |= XHC_PORTSC_OCC;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
 \r
-  default:\r
-    Status = EFI_INVALID_PARAMETER;\r
-    break;\r
+    case EfiUsbPortResetChange:\r
+      //\r
+      // Clear Port Reset change\r
+      //\r
+      State |= XHC_PORTSC_PRC;\r
+      XhcWriteOpReg (Xhc, Offset, State);\r
+      break;\r
+\r
+    case EfiUsbPortPower:\r
+    case EfiUsbPortSuspendChange:\r
+      //\r
+      // Not supported or not related operation\r
+      //\r
+      break;\r
+\r
+    default:\r
+      Status = EFI_INVALID_PARAMETER;\r
+      break;\r
   }\r
 \r
 ON_EXIT:\r
@@ -737,22 +737,22 @@ ON_EXIT:
 **/\r
 EFI_STATUS\r
 XhcTransfer (\r
-  IN     USB_XHCI_INSTANCE                   *Xhc,\r
-  IN     UINT8                               DeviceAddress,\r
-  IN     UINT8                               EndPointAddress,\r
-  IN     UINT8                               DeviceSpeed,\r
-  IN     UINTN                               MaximumPacketLength,\r
-  IN     UINTN                               Type,\r
-  IN     EFI_USB_DEVICE_REQUEST              *Request,\r
-  IN OUT VOID                                *Data,\r
-  IN OUT UINTN                               *DataLength,\r
-  IN     UINTN                               Timeout,\r
-  OUT    UINT32                              *TransferResult\r
+  IN     USB_XHCI_INSTANCE       *Xhc,\r
+  IN     UINT8                   DeviceAddress,\r
+  IN     UINT8                   EndPointAddress,\r
+  IN     UINT8                   DeviceSpeed,\r
+  IN     UINTN                   MaximumPacketLength,\r
+  IN     UINTN                   Type,\r
+  IN     EFI_USB_DEVICE_REQUEST  *Request,\r
+  IN OUT VOID                    *Data,\r
+  IN OUT UINTN                   *DataLength,\r
+  IN     UINTN                   Timeout,\r
+  OUT    UINT32                  *TransferResult\r
   )\r
 {\r
-  EFI_STATUS              Status;\r
-  EFI_STATUS              RecoveryStatus;\r
-  URB                     *Urb;\r
+  EFI_STATUS  Status;\r
+  EFI_STATUS  RecoveryStatus;\r
+  URB         *Urb;\r
 \r
   ASSERT ((Type == XHC_CTRL_TRANSFER) || (Type == XHC_BULK_TRANSFER) || (Type == XHC_INT_TRANSFER_SYNC));\r
   Urb = XhcCreateUrb (\r
@@ -780,7 +780,7 @@ XhcTransfer (
     //\r
     // The transfer timed out. Abort the transfer by dequeueing of the TD.\r
     //\r
-    RecoveryStatus = XhcDequeueTrbFromEndpoint(Xhc, Urb);\r
+    RecoveryStatus = XhcDequeueTrbFromEndpoint (Xhc, Urb);\r
     if (RecoveryStatus == EFI_ALREADY_STARTED) {\r
       //\r
       // The URB is finished just before stopping endpoint.\r
@@ -789,8 +789,8 @@ XhcTransfer (
       ASSERT (Urb->Result == EFI_USB_NOERROR);\r
       Status = EFI_SUCCESS;\r
       DEBUG ((DEBUG_ERROR, "XhcTransfer[Type=%d]: pending URB is finished, Length = %d.\n", Type, Urb->Completed));\r
-    } else if (EFI_ERROR(RecoveryStatus)) {\r
-      DEBUG((DEBUG_ERROR, "XhcTransfer[Type=%d]: XhcDequeueTrbFromEndpoint failed!\n", Type));\r
+    } else if (EFI_ERROR (RecoveryStatus)) {\r
+      DEBUG ((DEBUG_ERROR, "XhcTransfer[Type=%d]: XhcDequeueTrbFromEndpoint failed!\n", Type));\r
     }\r
   }\r
 \r
@@ -799,7 +799,7 @@ XhcTransfer (
 \r
   if ((*TransferResult == EFI_USB_ERR_STALL) || (*TransferResult == EFI_USB_ERR_BABBLE)) {\r
     ASSERT (Status == EFI_DEVICE_ERROR);\r
-    RecoveryStatus = XhcRecoverHaltedEndpoint(Xhc, Urb);\r
+    RecoveryStatus = XhcRecoverHaltedEndpoint (Xhc, Urb);\r
     if (EFI_ERROR (RecoveryStatus)) {\r
       DEBUG ((DEBUG_ERROR, "XhcTransfer[Type=%d]: XhcRecoverHaltedEndpoint failed!\n", Type));\r
     }\r
@@ -876,24 +876,28 @@ XhcControlTransfer (
 \r
   if ((TransferDirection != EfiUsbDataIn) &&\r
       (TransferDirection != EfiUsbDataOut) &&\r
-      (TransferDirection != EfiUsbNoData)) {\r
+      (TransferDirection != EfiUsbNoData))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
   if ((TransferDirection == EfiUsbNoData) &&\r
-      ((Data != NULL) || (*DataLength != 0))) {\r
+      ((Data != NULL) || (*DataLength != 0)))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
   if ((TransferDirection != EfiUsbNoData) &&\r
-     ((Data == NULL) || (*DataLength == 0))) {\r
+      ((Data == NULL) || (*DataLength == 0)))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
   if ((MaximumPacketLength != 8)  && (MaximumPacketLength != 16) &&\r
       (MaximumPacketLength != 32) && (MaximumPacketLength != 64) &&\r
       (MaximumPacketLength != 512)\r
-      ) {\r
+      )\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
@@ -907,7 +911,7 @@ XhcControlTransfer (
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc             = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   Status          = EFI_DEVICE_ERROR;\r
   *TransferResult = EFI_USB_ERR_SYSTEM;\r
@@ -931,7 +935,8 @@ XhcControlTransfer (
   // According to XHCI 1.0 spec, the Set_Address request is replaced by XHCI's Address_Device cmd.\r
   //\r
   if ((Request->Request     == USB_REQ_SET_ADDRESS) &&\r
-      (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_DEVICE))) {\r
+      (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_DEVICE)))\r
+  {\r
     //\r
     // Reset the BusDevAddr field of all disabled entries in UsbDevContext array firstly.\r
     // This way is used to clean the history to avoid using wrong device address by XhcAsyncInterruptTransfer().\r
@@ -939,7 +944,8 @@ XhcControlTransfer (
     for (Index = 0; Index < 255; Index++) {\r
       if (!Xhc->UsbDevContext[Index + 1].Enabled &&\r
           (Xhc->UsbDevContext[Index + 1].SlotId == 0) &&\r
-          (Xhc->UsbDevContext[Index + 1].BusDevAddr == (UINT8)Request->Value)) {\r
+          (Xhc->UsbDevContext[Index + 1].BusDevAddr == (UINT8)Request->Value))\r
+      {\r
         Xhc->UsbDevContext[Index + 1].BusDevAddr = 0;\r
       }\r
     }\r
@@ -948,6 +954,7 @@ XhcControlTransfer (
       Status = EFI_DEVICE_ERROR;\r
       goto ON_EXIT;\r
     }\r
+\r
     //\r
     // The actual device address has been assigned by XHCI during initializing the device slot.\r
     // So we just need establish the mapping relationship between the device address requested from UsbBus\r
@@ -955,7 +962,7 @@ XhcControlTransfer (
     // can find out the actual device address by it.\r
     //\r
     Xhc->UsbDevContext[SlotId].BusDevAddr = (UINT8)Request->Value;\r
-    Status = EFI_SUCCESS;\r
+    Status                                = EFI_SUCCESS;\r
     goto ON_EXIT;\r
   }\r
 \r
@@ -966,20 +973,20 @@ XhcControlTransfer (
   // endpoint is bidirectional. XhcCreateUrb expects this\r
   // combination of Ep addr and its direction.\r
   //\r
-  Endpoint = (UINT8) (0 | ((TransferDirection == EfiUsbDataIn) ? 0x80 : 0));\r
-  Status = XhcTransfer (\r
-             Xhc,\r
-             DeviceAddress,\r
-             Endpoint,\r
-             DeviceSpeed,\r
-             MaximumPacketLength,\r
-             XHC_CTRL_TRANSFER,\r
-             Request,\r
-             Data,\r
-             DataLength,\r
-             Timeout,\r
-             TransferResult\r
-             );\r
+  Endpoint = (UINT8)(0 | ((TransferDirection == EfiUsbDataIn) ? 0x80 : 0));\r
+  Status   = XhcTransfer (\r
+               Xhc,\r
+               DeviceAddress,\r
+               Endpoint,\r
+               DeviceSpeed,\r
+               MaximumPacketLength,\r
+               XHC_CTRL_TRANSFER,\r
+               Request,\r
+               Data,\r
+               DataLength,\r
+               Timeout,\r
+               TransferResult\r
+               );\r
 \r
   if (EFI_ERROR (Status)) {\r
     goto ON_EXIT;\r
@@ -992,28 +999,30 @@ XhcControlTransfer (
   //\r
   if ((Request->Request     == USB_REQ_GET_DESCRIPTOR) &&\r
       ((Request->RequestType == USB_REQUEST_TYPE (EfiUsbDataIn, USB_REQ_TYPE_STANDARD, USB_TARGET_DEVICE)) ||\r
-      ((Request->RequestType == USB_REQUEST_TYPE (EfiUsbDataIn, USB_REQ_TYPE_CLASS, USB_TARGET_DEVICE))))) {\r
+       ((Request->RequestType == USB_REQUEST_TYPE (EfiUsbDataIn, USB_REQ_TYPE_CLASS, USB_TARGET_DEVICE)))))\r
+  {\r
     DescriptorType = (UINT8)(Request->Value >> 8);\r
     if ((DescriptorType == USB_DESC_TYPE_DEVICE) && ((*DataLength == sizeof (EFI_USB_DEVICE_DESCRIPTOR)) || ((DeviceSpeed == EFI_USB_SPEED_FULL) && (*DataLength == 8)))) {\r
-        ASSERT (Data != NULL);\r
+      ASSERT (Data != NULL);\r
+      //\r
+      // Store a copy of device scriptor as hub device need this info to configure endpoint.\r
+      //\r
+      CopyMem (&Xhc->UsbDevContext[SlotId].DevDesc, Data, *DataLength);\r
+      if (Xhc->UsbDevContext[SlotId].DevDesc.BcdUSB >= 0x0300) {\r
         //\r
-        // Store a copy of device scriptor as hub device need this info to configure endpoint.\r
+        // If it's a usb3.0 device, then its max packet size is a 2^n.\r
         //\r
-        CopyMem (&Xhc->UsbDevContext[SlotId].DevDesc, Data, *DataLength);\r
-        if (Xhc->UsbDevContext[SlotId].DevDesc.BcdUSB >= 0x0300) {\r
-          //\r
-          // If it's a usb3.0 device, then its max packet size is a 2^n.\r
-          //\r
-          MaxPacket0 = 1 << Xhc->UsbDevContext[SlotId].DevDesc.MaxPacketSize0;\r
-        } else {\r
-          MaxPacket0 = Xhc->UsbDevContext[SlotId].DevDesc.MaxPacketSize0;\r
-        }\r
-        Xhc->UsbDevContext[SlotId].ConfDesc = AllocateZeroPool (Xhc->UsbDevContext[SlotId].DevDesc.NumConfigurations * sizeof (EFI_USB_CONFIG_DESCRIPTOR *));\r
-        if (Xhc->HcCParams.Data.Csz == 0) {\r
-          Status = XhcEvaluateContext (Xhc, SlotId, MaxPacket0);\r
-        } else {\r
-          Status = XhcEvaluateContext64 (Xhc, SlotId, MaxPacket0);\r
-        }\r
+        MaxPacket0 = 1 << Xhc->UsbDevContext[SlotId].DevDesc.MaxPacketSize0;\r
+      } else {\r
+        MaxPacket0 = Xhc->UsbDevContext[SlotId].DevDesc.MaxPacketSize0;\r
+      }\r
+\r
+      Xhc->UsbDevContext[SlotId].ConfDesc = AllocateZeroPool (Xhc->UsbDevContext[SlotId].DevDesc.NumConfigurations * sizeof (EFI_USB_CONFIG_DESCRIPTOR *));\r
+      if (Xhc->HcCParams.Data.Csz == 0) {\r
+        Status = XhcEvaluateContext (Xhc, SlotId, MaxPacket0);\r
+      } else {\r
+        Status = XhcEvaluateContext64 (Xhc, SlotId, MaxPacket0);\r
+      }\r
     } else if (DescriptorType == USB_DESC_TYPE_CONFIG) {\r
       ASSERT (Data != NULL);\r
       if (*DataLength == ((UINT16 *)Data)[1]) {\r
@@ -1022,7 +1031,7 @@ XhcControlTransfer (
         //\r
         Index = (UINT8)Request->Value;\r
         ASSERT (Index < Xhc->UsbDevContext[SlotId].DevDesc.NumConfigurations);\r
-        Xhc->UsbDevContext[SlotId].ConfDesc[Index] = AllocateZeroPool(*DataLength);\r
+        Xhc->UsbDevContext[SlotId].ConfDesc[Index] = AllocateZeroPool (*DataLength);\r
         CopyMem (Xhc->UsbDevContext[SlotId].ConfDesc[Index], Data, *DataLength);\r
         //\r
         // Default to use AlternateSetting 0 for all interfaces.\r
@@ -1030,7 +1039,8 @@ XhcControlTransfer (
         Xhc->UsbDevContext[SlotId].ActiveAlternateSetting = AllocateZeroPool (Xhc->UsbDevContext[SlotId].ConfDesc[Index]->NumInterfaces * sizeof (UINT8));\r
       }\r
     } else if (((DescriptorType == USB_DESC_TYPE_HUB) ||\r
-               (DescriptorType == USB_DESC_TYPE_HUB_SUPER_SPEED)) && (*DataLength > 2)) {\r
+                (DescriptorType == USB_DESC_TYPE_HUB_SUPER_SPEED)) && (*DataLength > 2))\r
+    {\r
       ASSERT (Data != NULL);\r
       HubDesc = (EFI_USB_HUB_DESCRIPTOR *)Data;\r
       ASSERT (HubDesc->NumPorts <= 15);\r
@@ -1055,7 +1065,8 @@ XhcControlTransfer (
       }\r
     }\r
   } else if ((Request->Request     == USB_REQ_SET_CONFIG) &&\r
-             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_DEVICE))) {\r
+             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_DEVICE)))\r
+  {\r
     //\r
     // Hook Set_Config request from UsbBus as we need configure device endpoint.\r
     //\r
@@ -1066,17 +1077,19 @@ XhcControlTransfer (
         } else {\r
           Status = XhcSetConfigCmd64 (Xhc, SlotId, DeviceSpeed, Xhc->UsbDevContext[SlotId].ConfDesc[Index]);\r
         }\r
+\r
         break;\r
       }\r
     }\r
   } else if ((Request->Request     == USB_REQ_SET_INTERFACE) &&\r
-             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_INTERFACE))) {\r
+             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_STANDARD, USB_TARGET_INTERFACE)))\r
+  {\r
     //\r
     // Hook Set_Interface request from UsbBus as we need configure interface setting.\r
     // Request->Value indicates AlterlateSetting to set\r
     // Request->Index indicates Interface to set\r
     //\r
-    if (Xhc->UsbDevContext[SlotId].ActiveAlternateSetting[(UINT8) Request->Index] != (UINT8) Request->Value) {\r
+    if (Xhc->UsbDevContext[SlotId].ActiveAlternateSetting[(UINT8)Request->Index] != (UINT8)Request->Value) {\r
       if (Xhc->HcCParams.Data.Csz == 0) {\r
         Status = XhcSetInterface (Xhc, SlotId, DeviceSpeed, Xhc->UsbDevContext[SlotId].ConfDesc[Xhc->UsbDevContext[SlotId].ActiveConfiguration - 1], Request);\r
       } else {\r
@@ -1084,7 +1097,8 @@ XhcControlTransfer (
       }\r
     }\r
   } else if ((Request->Request     == USB_REQ_GET_STATUS) &&\r
-             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbDataIn, USB_REQ_TYPE_CLASS, USB_TARGET_OTHER))) {\r
+             (Request->RequestType == USB_REQUEST_TYPE (EfiUsbDataIn, USB_REQ_TYPE_CLASS, USB_TARGET_OTHER)))\r
+  {\r
     ASSERT (Data != NULL);\r
     //\r
     // Hook Get_Status request from UsbBus to keep track of the port status change.\r
@@ -1117,14 +1131,14 @@ XhcControlTransfer (
     MapSize = sizeof (mUsbHubPortStateMap) / sizeof (USB_PORT_STATE_MAP);\r
     for (Index = 0; Index < MapSize; Index++) {\r
       if (XHC_BIT_IS_SET (State, mUsbHubPortStateMap[Index].HwState)) {\r
-        PortStatus.PortStatus = (UINT16) (PortStatus.PortStatus | mUsbHubPortStateMap[Index].UefiState);\r
+        PortStatus.PortStatus = (UINT16)(PortStatus.PortStatus | mUsbHubPortStateMap[Index].UefiState);\r
       }\r
     }\r
 \r
     MapSize = sizeof (mUsbHubPortChangeMap) / sizeof (USB_PORT_STATE_MAP);\r
     for (Index = 0; Index < MapSize; Index++) {\r
       if (XHC_BIT_IS_SET (State, mUsbHubPortChangeMap[Index].HwState)) {\r
-        PortStatus.PortChangeStatus = (UINT16) (PortStatus.PortChangeStatus | mUsbHubPortChangeMap[Index].UefiState);\r
+        PortStatus.PortChangeStatus = (UINT16)(PortStatus.PortChangeStatus | mUsbHubPortChangeMap[Index].UefiState);\r
       }\r
     }\r
 \r
@@ -1133,11 +1147,11 @@ XhcControlTransfer (
     for (Index = 0; Index < MapSize; Index++) {\r
       if (XHC_BIT_IS_SET (State, mUsbHubClearPortChangeMap[Index].HwState)) {\r
         ZeroMem (&ClearPortRequest, sizeof (EFI_USB_DEVICE_REQUEST));\r
-        ClearPortRequest.RequestType  = USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_CLASS, USB_TARGET_OTHER);\r
-        ClearPortRequest.Request      = (UINT8) USB_REQ_CLEAR_FEATURE;\r
-        ClearPortRequest.Value        = mUsbHubClearPortChangeMap[Index].Selector;\r
-        ClearPortRequest.Index        = Request->Index;\r
-        ClearPortRequest.Length       = 0;\r
+        ClearPortRequest.RequestType = USB_REQUEST_TYPE (EfiUsbNoData, USB_REQ_TYPE_CLASS, USB_TARGET_OTHER);\r
+        ClearPortRequest.Request     = (UINT8)USB_REQ_CLEAR_FEATURE;\r
+        ClearPortRequest.Value       = mUsbHubClearPortChangeMap[Index].Selector;\r
+        ClearPortRequest.Index       = Request->Index;\r
+        ClearPortRequest.Length      = 0;\r
 \r
         XhcControlTransfer (\r
           This,\r
@@ -1157,7 +1171,7 @@ XhcControlTransfer (
 \r
     XhcPollPortStatusChange (Xhc, Xhc->UsbDevContext[SlotId].RouteString, (UINT8)Request->Index, &PortStatus);\r
 \r
-    *(UINT32 *)Data = *(UINT32*)&PortStatus;\r
+    *(UINT32 *)Data = *(UINT32 *)&PortStatus;\r
   }\r
 \r
 ON_EXIT:\r
@@ -1170,7 +1184,6 @@ ON_EXIT:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Submits bulk transfer to a bulk endpoint of a USB device.\r
 \r
@@ -1218,16 +1231,17 @@ XhcBulkTransfer (
   OUT    UINT32                              *TransferResult\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  UINT8                   SlotId;\r
-  EFI_STATUS              Status;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  UINT8              SlotId;\r
+  EFI_STATUS         Status;\r
+  EFI_TPL            OldTpl;\r
 \r
   //\r
   // Validate the parameters\r
   //\r
   if ((DataLength == NULL) || (*DataLength == 0) ||\r
-      (Data == NULL) || (Data[0] == NULL) || (TransferResult == NULL)) {\r
+      (Data == NULL) || (Data[0] == NULL) || (TransferResult == NULL))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
@@ -1238,13 +1252,14 @@ XhcBulkTransfer (
   if ((DeviceSpeed == EFI_USB_SPEED_LOW) ||\r
       ((DeviceSpeed == EFI_USB_SPEED_FULL) && (MaximumPacketLength > 64)) ||\r
       ((EFI_USB_SPEED_HIGH == DeviceSpeed) && (MaximumPacketLength > 512)) ||\r
-      ((EFI_USB_SPEED_SUPER == DeviceSpeed) && (MaximumPacketLength > 1024))) {\r
+      ((EFI_USB_SPEED_SUPER == DeviceSpeed) && (MaximumPacketLength > 1024)))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc             = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   *TransferResult = EFI_USB_ERR_SYSTEM;\r
   Status          = EFI_DEVICE_ERROR;\r
@@ -1284,6 +1299,7 @@ ON_EXIT:
   if (EFI_ERROR (Status)) {\r
     DEBUG ((DEBUG_ERROR, "XhcBulkTransfer: error - %r, transfer - %x\n", Status, *TransferResult));\r
   }\r
+\r
   gBS->RestoreTPL (OldTpl);\r
 \r
   return Status;\r
@@ -1335,12 +1351,12 @@ XhcAsyncInterruptTransfer (
   IN     VOID                                *Context OPTIONAL\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  URB                     *Urb;\r
-  EFI_STATUS              Status;\r
-  UINT8                   SlotId;\r
-  UINT8                   Index;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  URB                *Urb;\r
+  EFI_STATUS         Status;\r
+  UINT8              SlotId;\r
+  UINT8              Index;\r
+  EFI_TPL            OldTpl;\r
 \r
   //\r
   // Validate parameters\r
@@ -1365,7 +1381,7 @@ XhcAsyncInterruptTransfer (
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc    = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   //\r
   // Delete Async interrupt transfer request.\r
@@ -1433,7 +1449,6 @@ ON_EXIT:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Submits synchronous interrupt transfer to an interrupt endpoint\r
   of a USB device.\r
@@ -1477,16 +1492,17 @@ XhcSyncInterruptTransfer (
   OUT    UINT32                              *TransferResult\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  UINT8                   SlotId;\r
-  EFI_STATUS              Status;\r
-  EFI_TPL                 OldTpl;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  UINT8              SlotId;\r
+  EFI_STATUS         Status;\r
+  EFI_TPL            OldTpl;\r
 \r
   //\r
   // Validates parameters\r
   //\r
   if ((DataLength == NULL) || (*DataLength == 0) ||\r
-      (Data == NULL) || (TransferResult == NULL)) {\r
+      (Data == NULL) || (TransferResult == NULL))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
@@ -1496,13 +1512,14 @@ XhcSyncInterruptTransfer (
 \r
   if (((DeviceSpeed == EFI_USB_SPEED_LOW) && (MaximumPacketLength != 8))  ||\r
       ((DeviceSpeed == EFI_USB_SPEED_FULL) && (MaximumPacketLength > 64)) ||\r
-      ((DeviceSpeed == EFI_USB_SPEED_HIGH) && (MaximumPacketLength > 3072))) {\r
+      ((DeviceSpeed == EFI_USB_SPEED_HIGH) && (MaximumPacketLength > 3072)))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
   OldTpl = gBS->RaiseTPL (XHC_TPL);\r
 \r
-  Xhc     = XHC_FROM_THIS (This);\r
+  Xhc = XHC_FROM_THIS (This);\r
 \r
   *TransferResult = EFI_USB_ERR_SYSTEM;\r
   Status          = EFI_DEVICE_ERROR;\r
@@ -1538,12 +1555,12 @@ ON_EXIT:
   if (EFI_ERROR (Status)) {\r
     DEBUG ((DEBUG_ERROR, "XhcSyncInterruptTransfer: error - %r, transfer - %x\n", Status, *TransferResult));\r
   }\r
+\r
   gBS->RestoreTPL (OldTpl);\r
 \r
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Submits isochronous transfer to a target USB device.\r
 \r
@@ -1583,7 +1600,6 @@ XhcIsochronousTransfer (
   return EFI_UNSUPPORTED;\r
 }\r
 \r
-\r
 /**\r
   Submits Async isochronous transfer to a target USB device.\r
 \r
@@ -1639,8 +1655,8 @@ XhcAsyncIsochronousTransfer (
 EFI_STATUS\r
 EFIAPI\r
 XhcDriverEntryPoint (\r
-  IN EFI_HANDLE           ImageHandle,\r
-  IN EFI_SYSTEM_TABLE     *SystemTable\r
+  IN EFI_HANDLE        ImageHandle,\r
+  IN EFI_SYSTEM_TABLE  *SystemTable\r
   )\r
 {\r
   return EfiLibInstallDriverBindingComponentName2 (\r
@@ -1653,7 +1669,6 @@ XhcDriverEntryPoint (
            );\r
 }\r
 \r
-\r
 /**\r
   Test to see if this driver supports ControllerHandle. Any\r
   ControllerHandle that has Usb2HcProtocol installed will\r
@@ -1670,14 +1685,14 @@ XhcDriverEntryPoint (
 EFI_STATUS\r
 EFIAPI\r
 XhcDriverBindingSupported (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
-  IN EFI_HANDLE                  Controller,\r
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath\r
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN EFI_HANDLE                   Controller,\r
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   )\r
 {\r
-  EFI_STATUS              Status;\r
-  EFI_PCI_IO_PROTOCOL     *PciIo;\r
-  USB_CLASSC              UsbClassCReg;\r
+  EFI_STATUS           Status;\r
+  EFI_PCI_IO_PROTOCOL  *PciIo;\r
+  USB_CLASSC           UsbClassCReg;\r
 \r
   //\r
   // Test whether there is PCI IO Protocol attached on the controller handle.\r
@@ -1685,7 +1700,7 @@ XhcDriverBindingSupported (
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   &gEfiPciIoProtocolGuid,\r
-                  (VOID **) &PciIo,\r
+                  (VOID **)&PciIo,\r
                   This->DriverBindingHandle,\r
                   Controller,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
@@ -1713,7 +1728,8 @@ XhcDriverBindingSupported (
   //\r
   if ((UsbClassCReg.BaseCode != PCI_CLASS_SERIAL) ||\r
       (UsbClassCReg.SubClassCode != PCI_CLASS_SERIAL_USB) ||\r
-      (UsbClassCReg.ProgInterface != PCI_IF_XHCI)) {\r
+      (UsbClassCReg.ProgInterface != PCI_IF_XHCI))\r
+  {\r
     Status = EFI_UNSUPPORTED;\r
   }\r
 \r
@@ -1739,18 +1755,18 @@ ON_EXIT:
           otherwise NULL.\r
 \r
 **/\r
-USB_XHCI_INSTANCE*\r
+USB_XHCI_INSTANCE *\r
 XhcCreateUsbHc (\r
   IN EFI_PCI_IO_PROTOCOL       *PciIo,\r
   IN EFI_DEVICE_PATH_PROTOCOL  *DevicePath,\r
   IN UINT64                    OriginalPciAttributes\r
   )\r
 {\r
-  USB_XHCI_INSTANCE       *Xhc;\r
-  EFI_STATUS              Status;\r
-  UINT32                  PageSize;\r
-  UINT16                  ExtCapReg;\r
-  UINT8                   ReleaseNumber;\r
+  USB_XHCI_INSTANCE  *Xhc;\r
+  EFI_STATUS         Status;\r
+  UINT32             PageSize;\r
+  UINT16             ExtCapReg;\r
+  UINT8              ReleaseNumber;\r
 \r
   Xhc = AllocateZeroPool (sizeof (USB_XHCI_INSTANCE));\r
 \r
@@ -1797,12 +1813,12 @@ XhcCreateUsbHc (
   // This xHC supports a page size of 2^(n+12) if bit n is Set. For example,\r
   // if bit 0 is Set, the xHC supports 4k byte page sizes.\r
   //\r
-  PageSize      = XhcReadOpReg(Xhc, XHC_PAGESIZE_OFFSET) & XHC_PAGESIZE_MASK;\r
-  Xhc->PageSize = 1 << (HighBitSet32(PageSize) + 12);\r
+  PageSize      = XhcReadOpReg (Xhc, XHC_PAGESIZE_OFFSET) & XHC_PAGESIZE_MASK;\r
+  Xhc->PageSize = 1 << (HighBitSet32 (PageSize) + 12);\r
 \r
-  ExtCapReg            = (UINT16) (Xhc->HcCParams.Data.ExtCapReg);\r
-  Xhc->ExtCapRegBase   = ExtCapReg << 2;\r
-  Xhc->UsbLegSupOffset = XhcGetCapabilityAddr (Xhc, XHC_CAP_USB_LEGACY);\r
+  ExtCapReg              = (UINT16)(Xhc->HcCParams.Data.ExtCapReg);\r
+  Xhc->ExtCapRegBase     = ExtCapReg << 2;\r
+  Xhc->UsbLegSupOffset   = XhcGetCapabilityAddr (Xhc, XHC_CAP_USB_LEGACY);\r
   Xhc->DebugCapSupOffset = XhcGetCapabilityAddr (Xhc, XHC_CAP_USB_DEBUG);\r
 \r
   DEBUG ((DEBUG_INFO, "XhcCreateUsb3Hc: Capability length 0x%x\n", Xhc->CapLength));\r
@@ -1854,7 +1870,7 @@ XhcExitBootService (
   USB_XHCI_INSTANCE    *Xhc;\r
   EFI_PCI_IO_PROTOCOL  *PciIo;\r
 \r
-  Xhc = (USB_XHCI_INSTANCE*) Context;\r
+  Xhc   = (USB_XHCI_INSTANCE *)Context;\r
   PciIo = Xhc->PciIo;\r
 \r
   //\r
@@ -1874,11 +1890,11 @@ XhcExitBootService (
   // Restore original PCI attributes\r
   //\r
   PciIo->Attributes (\r
-                  PciIo,\r
-                  EfiPciIoAttributeOperationSet,\r
-                  Xhc->OriginalPciAttributes,\r
-                  NULL\r
-                  );\r
+           PciIo,\r
+           EfiPciIoAttributeOperationSet,\r
+           Xhc->OriginalPciAttributes,\r
+           NULL\r
+           );\r
 }\r
 \r
 /**\r
@@ -1897,17 +1913,17 @@ XhcExitBootService (
 EFI_STATUS\r
 EFIAPI\r
 XhcDriverBindingStart (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
-  IN EFI_HANDLE                  Controller,\r
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath\r
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN EFI_HANDLE                   Controller,\r
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   )\r
 {\r
-  EFI_STATUS              Status;\r
-  EFI_PCI_IO_PROTOCOL     *PciIo;\r
-  UINT64                  Supports;\r
-  UINT64                  OriginalPciAttributes;\r
-  BOOLEAN                 PciAttributesSaved;\r
-  USB_XHCI_INSTANCE       *Xhc;\r
+  EFI_STATUS                Status;\r
+  EFI_PCI_IO_PROTOCOL       *PciIo;\r
+  UINT64                    Supports;\r
+  UINT64                    OriginalPciAttributes;\r
+  BOOLEAN                   PciAttributesSaved;\r
+  USB_XHCI_INSTANCE         *Xhc;\r
   EFI_DEVICE_PATH_PROTOCOL  *HcDevicePath;\r
 \r
   //\r
@@ -1916,7 +1932,7 @@ XhcDriverBindingStart (
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   &gEfiPciIoProtocolGuid,\r
-                  (VOID **) &PciIo,\r
+                  (VOID **)&PciIo,\r
                   This->DriverBindingHandle,\r
                   Controller,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
@@ -1930,14 +1946,14 @@ XhcDriverBindingStart (
   // Open Device Path Protocol for on USB host controller\r
   //\r
   HcDevicePath = NULL;\r
-  Status = gBS->OpenProtocol (\r
-                  Controller,\r
-                  &gEfiDevicePathProtocolGuid,\r
-                  (VOID **) &HcDevicePath,\r
-                  This->DriverBindingHandle,\r
-                  Controller,\r
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                  );\r
+  Status       = gBS->OpenProtocol (\r
+                        Controller,\r
+                        &gEfiDevicePathProtocolGuid,\r
+                        (VOID **)&HcDevicePath,\r
+                        This->DriverBindingHandle,\r
+                        Controller,\r
+                        EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
+                        );\r
 \r
   PciAttributesSaved = FALSE;\r
   //\r
@@ -1953,6 +1969,7 @@ XhcDriverBindingStart (
   if (EFI_ERROR (Status)) {\r
     goto CLOSE_PCIIO;\r
   }\r
+\r
   PciAttributesSaved = TRUE;\r
 \r
   Status = PciIo->Attributes (\r
@@ -1963,12 +1980,12 @@ XhcDriverBindingStart (
                     );\r
   if (!EFI_ERROR (Status)) {\r
     Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE;\r
-    Status = PciIo->Attributes (\r
-                      PciIo,\r
-                      EfiPciIoAttributeOperationEnable,\r
-                      Supports,\r
-                      NULL\r
-                      );\r
+    Status    = PciIo->Attributes (\r
+                         PciIo,\r
+                         EfiPciIoAttributeOperationEnable,\r
+                         Supports,\r
+                         NULL\r
+                         );\r
   }\r
 \r
   if (EFI_ERROR (Status)) {\r
@@ -2000,9 +2017,13 @@ XhcDriverBindingStart (
     if (!EFI_ERROR (Status)) {\r
       Xhc->Support64BitDma = TRUE;\r
     } else {\r
-      DEBUG ((DEBUG_WARN,\r
+      DEBUG ((\r
+        DEBUG_WARN,\r
         "%a: failed to enable 64-bit DMA on 64-bit capable controller @ %p (%r)\n",\r
-        __FUNCTION__, Controller, Status));\r
+        __FUNCTION__,\r
+        Controller,\r
+        Status\r
+        ));\r
     }\r
   }\r
 \r
@@ -2025,7 +2046,7 @@ XhcDriverBindingStart (
   //\r
   // Start the Host Controller\r
   //\r
-  XhcRunHC(Xhc, XHC_GENERIC_TIMEOUT);\r
+  XhcRunHC (Xhc, XHC_GENERIC_TIMEOUT);\r
 \r
   //\r
   // Start the asynchronous interrupt monitor\r
@@ -2096,11 +2117,11 @@ CLOSE_PCIIO:
     // Restore original PCI attributes\r
     //\r
     PciIo->Attributes (\r
-                    PciIo,\r
-                    EfiPciIoAttributeOperationSet,\r
-                    OriginalPciAttributes,\r
-                    NULL\r
-                    );\r
+             PciIo,\r
+             EfiPciIoAttributeOperationSet,\r
+             OriginalPciAttributes,\r
+             NULL\r
+             );\r
   }\r
 \r
   gBS->CloseProtocol (\r
@@ -2113,7 +2134,6 @@ CLOSE_PCIIO:
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Stop this driver on ControllerHandle. Support stopping any child handles\r
   created by this driver.\r
@@ -2130,10 +2150,10 @@ CLOSE_PCIIO:
 EFI_STATUS\r
 EFIAPI\r
 XhcDriverBindingStop (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
-  IN EFI_HANDLE                  Controller,\r
-  IN UINTN                       NumberOfChildren,\r
-  IN EFI_HANDLE                  *ChildHandleBuffer\r
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN EFI_HANDLE                   Controller,\r
+  IN UINTN                        NumberOfChildren,\r
+  IN EFI_HANDLE                   *ChildHandleBuffer\r
   )\r
 {\r
   EFI_STATUS            Status;\r
@@ -2150,7 +2170,7 @@ XhcDriverBindingStop (
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   &gEfiUsb2HcProtocolGuid,\r
-                  (VOID **) &Usb2Hc,\r
+                  (VOID **)&Usb2Hc,\r
                   This->DriverBindingHandle,\r
                   Controller,\r
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
@@ -2185,9 +2205,11 @@ XhcDriverBindingStop (
   //\r
   for (Index = 0; Index < 255; Index++) {\r
     if (!Xhc->UsbDevContext[Index + 1].Enabled ||\r
-        (Xhc->UsbDevContext[Index + 1].SlotId == 0)) {\r
+        (Xhc->UsbDevContext[Index + 1].SlotId == 0))\r
+    {\r
       continue;\r
     }\r
+\r
     if (Xhc->HcCParams.Data.Csz == 0) {\r
       XhcDisableSlotCmd (Xhc, Xhc->UsbDevContext[Index + 1].SlotId);\r
     } else {\r