]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / PciSioSerialDxe / Serial.c
index 7ce2e06afea6bcc7bd2dd3899db767a95ece1fb4..2b5ff0a37a102e01f272f47de18b4006bf313c9e 100644 (file)
@@ -12,7 +12,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 // ISA Serial Driver Global Variables\r
 //\r
 \r
-EFI_DRIVER_BINDING_PROTOCOL gSerialControllerDriver = {\r
+EFI_DRIVER_BINDING_PROTOCOL  gSerialControllerDriver = {\r
   SerialControllerDriverSupported,\r
   SerialControllerDriverStart,\r
   SerialControllerDriverStop,\r
@@ -21,13 +21,13 @@ EFI_DRIVER_BINDING_PROTOCOL gSerialControllerDriver = {
   NULL\r
 };\r
 \r
-CONTROLLER_DEVICE_PATH mControllerDevicePathTemplate = {\r
+CONTROLLER_DEVICE_PATH  mControllerDevicePathTemplate = {\r
   {\r
     HARDWARE_DEVICE_PATH,\r
     HW_CONTROLLER_DP,\r
     {\r
-      (UINT8) (sizeof (CONTROLLER_DEVICE_PATH)),\r
-      (UINT8) ((sizeof (CONTROLLER_DEVICE_PATH)) >> 8)\r
+      (UINT8)(sizeof (CONTROLLER_DEVICE_PATH)),\r
+      (UINT8)((sizeof (CONTROLLER_DEVICE_PATH)) >> 8)\r
     }\r
   },\r
   0\r
@@ -62,26 +62,26 @@ SERIAL_DEV  gSerialDevTemplate = {
       MESSAGING_DEVICE_PATH,\r
       MSG_UART_DP,\r
       {\r
-        (UINT8) (sizeof (UART_DEVICE_PATH)),\r
-        (UINT8) ((sizeof (UART_DEVICE_PATH)) >> 8)\r
+        (UINT8)(sizeof (UART_DEVICE_PATH)),\r
+        (UINT8)((sizeof (UART_DEVICE_PATH)) >> 8)\r
       }\r
     },\r
-    0, 0, 0, 0, 0\r
-  },                                       // UartDevicePath\r
-  0,                                       // BaseAddress\r
-  FALSE,                                   // MmioAccess\r
-  1,                                       // RegisterStride\r
-  0,                                       // ClockRate\r
-  16,                                      // ReceiveFifoDepth\r
-  { 0, 0 },                                // Receive;\r
-  16,                                      // TransmitFifoDepth\r
-  { 0, 0 },                                // Transmit;\r
-  FALSE,                                   // SoftwareLoopbackEnable;\r
-  FALSE,                                   // HardwareFlowControl;\r
-  NULL,                                    // *ControllerNameTable;\r
-  FALSE,                                   // ContainsControllerNode;\r
-  0,                                       // Instance;\r
-  NULL                                     // *PciDeviceInfo;\r
+    0,                                     0,0, 0, 0\r
+  },                                            // UartDevicePath\r
+  0,                                            // BaseAddress\r
+  FALSE,                                        // MmioAccess\r
+  1,                                            // RegisterStride\r
+  0,                                            // ClockRate\r
+  16,                                           // ReceiveFifoDepth\r
+  { 0,                                     0 }, // Receive;\r
+  16,                                           // TransmitFifoDepth\r
+  { 0,                                     0 }, // Transmit;\r
+  FALSE,                                        // SoftwareLoopbackEnable;\r
+  FALSE,                                        // HardwareFlowControl;\r
+  NULL,                                         // *ControllerNameTable;\r
+  FALSE,                                        // ContainsControllerNode;\r
+  0,                                            // Instance;\r
+  NULL                                          // *PciDeviceInfo;\r
 };\r
 \r
 /**\r
@@ -95,14 +95,14 @@ SERIAL_DEV  gSerialDevTemplate = {
 **/\r
 BOOLEAN\r
 IsUartFlowControlDevicePathNode (\r
-  IN UART_FLOW_CONTROL_DEVICE_PATH *FlowControl\r
+  IN UART_FLOW_CONTROL_DEVICE_PATH  *FlowControl\r
   )\r
 {\r
-  return (BOOLEAN) (\r
-           (DevicePathType (FlowControl) == MESSAGING_DEVICE_PATH) &&\r
-           (DevicePathSubType (FlowControl) == MSG_VENDOR_DP) &&\r
-           (CompareGuid (&FlowControl->Guid, &gEfiUartDevicePathGuid))\r
-           );\r
+  return (BOOLEAN)(\r
+                   (DevicePathType (FlowControl) == MESSAGING_DEVICE_PATH) &&\r
+                   (DevicePathSubType (FlowControl) == MSG_VENDOR_DP) &&\r
+                   (CompareGuid (&FlowControl->Guid, &gEfiUartDevicePathGuid))\r
+                   );\r
 }\r
 \r
 /**\r
@@ -118,11 +118,11 @@ IsUartFlowControlDevicePathNode (
 EFI_STATUS\r
 EFIAPI\r
 InitializePciSioSerial (\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
-  EFI_STATUS              Status;\r
+  EFI_STATUS  Status;\r
 \r
   //\r
   // Install driver model protocol(s).\r
@@ -140,15 +140,15 @@ InitializePciSioSerial (
   //\r
   // Initialize UART default setting in gSerialDevTempate\r
   //\r
-  gSerialDevTemplate.SerialMode.BaudRate = PcdGet64 (PcdUartDefaultBaudRate);\r
-  gSerialDevTemplate.SerialMode.DataBits = PcdGet8 (PcdUartDefaultDataBits);\r
-  gSerialDevTemplate.SerialMode.Parity   = PcdGet8 (PcdUartDefaultParity);\r
-  gSerialDevTemplate.SerialMode.StopBits = PcdGet8 (PcdUartDefaultStopBits);\r
+  gSerialDevTemplate.SerialMode.BaudRate     = PcdGet64 (PcdUartDefaultBaudRate);\r
+  gSerialDevTemplate.SerialMode.DataBits     = PcdGet8 (PcdUartDefaultDataBits);\r
+  gSerialDevTemplate.SerialMode.Parity       = PcdGet8 (PcdUartDefaultParity);\r
+  gSerialDevTemplate.SerialMode.StopBits     = PcdGet8 (PcdUartDefaultStopBits);\r
   gSerialDevTemplate.UartDevicePath.BaudRate = PcdGet64 (PcdUartDefaultBaudRate);\r
   gSerialDevTemplate.UartDevicePath.DataBits = PcdGet8 (PcdUartDefaultDataBits);\r
   gSerialDevTemplate.UartDevicePath.Parity   = PcdGet8 (PcdUartDefaultParity);\r
   gSerialDevTemplate.UartDevicePath.StopBits = PcdGet8 (PcdUartDefaultStopBits);\r
-  gSerialDevTemplate.ClockRate = PcdGet32 (PcdSerialClockRate);\r
+  gSerialDevTemplate.ClockRate               = PcdGet32 (PcdSerialClockRate);\r
 \r
   return Status;\r
 }\r
@@ -163,13 +163,13 @@ InitializePciSioSerial (
 **/\r
 EFI_STATUS\r
 IsSioSerialController (\r
-  EFI_HANDLE               Controller\r
+  EFI_HANDLE  Controller\r
   )\r
 {\r
-  EFI_STATUS               Status;\r
-  EFI_SIO_PROTOCOL         *Sio;\r
-  EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
-  ACPI_HID_DEVICE_PATH     *Acpi;\r
+  EFI_STATUS                Status;\r
+  EFI_SIO_PROTOCOL          *Sio;\r
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
+  ACPI_HID_DEVICE_PATH      *Acpi;\r
 \r
   //\r
   // Open the IO Abstraction(s) needed to perform the supported test\r
@@ -177,7 +177,7 @@ IsSioSerialController (
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   &gEfiSioProtocolGuid,\r
-                  (VOID **) &Sio,\r
+                  (VOID **)&Sio,\r
                   gSerialControllerDriver.DriverBindingHandle,\r
                   Controller,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
@@ -198,25 +198,26 @@ IsSioSerialController (
            );\r
 \r
     Status = gBS->OpenProtocol (\r
-      Controller,\r
-      &gEfiDevicePathProtocolGuid,\r
-      (VOID **) &DevicePath,\r
-      gSerialControllerDriver.DriverBindingHandle,\r
-      Controller,\r
-      EFI_OPEN_PROTOCOL_BY_DRIVER\r
-      );\r
+                    Controller,\r
+                    &gEfiDevicePathProtocolGuid,\r
+                    (VOID **)&DevicePath,\r
+                    gSerialControllerDriver.DriverBindingHandle,\r
+                    Controller,\r
+                    EFI_OPEN_PROTOCOL_BY_DRIVER\r
+                    );\r
     ASSERT (Status != EFI_ALREADY_STARTED);\r
 \r
     if (!EFI_ERROR (Status)) {\r
       do {\r
-        Acpi = (ACPI_HID_DEVICE_PATH *) DevicePath;\r
+        Acpi       = (ACPI_HID_DEVICE_PATH *)DevicePath;\r
         DevicePath = NextDevicePathNode (DevicePath);\r
       } while (!IsDevicePathEnd (DevicePath));\r
 \r
-      if (DevicePathType (Acpi) != ACPI_DEVICE_PATH ||\r
-          (DevicePathSubType (Acpi) != ACPI_DP && DevicePathSubType (Acpi) != ACPI_EXTENDED_DP) ||\r
-          Acpi->HID != EISA_PNP_ID (0x501)\r
-          ) {\r
+      if ((DevicePathType (Acpi) != ACPI_DEVICE_PATH) ||\r
+          ((DevicePathSubType (Acpi) != ACPI_DP) && (DevicePathSubType (Acpi) != ACPI_EXTENDED_DP)) ||\r
+          (Acpi->HID != EISA_PNP_ID (0x501))\r
+          )\r
+      {\r
         Status = EFI_UNSUPPORTED;\r
       }\r
     }\r
@@ -225,12 +226,13 @@ IsSioSerialController (
     // Close protocol, don't use device path protocol in the Support() function\r
     //\r
     gBS->CloseProtocol (\r
-      Controller,\r
-      &gEfiDevicePathProtocolGuid,\r
-      gSerialControllerDriver.DriverBindingHandle,\r
-      Controller\r
-      );\r
+           Controller,\r
+           &gEfiDevicePathProtocolGuid,\r
+           gSerialControllerDriver.DriverBindingHandle,\r
+           Controller\r
+           );\r
   }\r
+\r
   return Status;\r
 }\r
 \r
@@ -244,26 +246,26 @@ IsSioSerialController (
 **/\r
 EFI_STATUS\r
 IsPciSerialController (\r
-  EFI_HANDLE               Controller\r
+  EFI_HANDLE  Controller\r
   )\r
 {\r
-  EFI_STATUS               Status;\r
-  EFI_PCI_IO_PROTOCOL      *PciIo;\r
-  EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
-  PCI_TYPE00               Pci;\r
-  PCI_SERIAL_PARAMETER     *PciSerialParameter;\r
+  EFI_STATUS                Status;\r
+  EFI_PCI_IO_PROTOCOL       *PciIo;\r
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
+  PCI_TYPE00                Pci;\r
+  PCI_SERIAL_PARAMETER      *PciSerialParameter;\r
 \r
   //\r
   // Open the IO Abstraction(s) needed to perform the supported test\r
   //\r
   Status = gBS->OpenProtocol (\r
-    Controller,\r
-    &gEfiPciIoProtocolGuid,\r
-    (VOID **) &PciIo,\r
-    gSerialControllerDriver.DriverBindingHandle,\r
-    Controller,\r
-    EFI_OPEN_PROTOCOL_BY_DRIVER\r
-    );\r
+                  Controller,\r
+                  &gEfiPciIoProtocolGuid,\r
+                  (VOID **)&PciIo,\r
+                  gSerialControllerDriver.DriverBindingHandle,\r
+                  Controller,\r
+                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
+                  );\r
   if (Status == EFI_ALREADY_STARTED) {\r
     return EFI_SUCCESS;\r
   }\r
@@ -272,16 +274,19 @@ IsPciSerialController (
     Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint8, 0, sizeof (Pci), &Pci);\r
     if (!EFI_ERROR (Status)) {\r
       if (!IS_PCI_16550_SERIAL (&Pci)) {\r
-        for (PciSerialParameter = (PCI_SERIAL_PARAMETER *) PcdGetPtr (PcdPciSerialParameters)\r
+        for (PciSerialParameter = (PCI_SERIAL_PARAMETER *)PcdGetPtr (PcdPciSerialParameters)\r
              ; PciSerialParameter->VendorId != 0xFFFF\r
              ; PciSerialParameter++\r
-             ) {\r
+             )\r
+        {\r
           if ((Pci.Hdr.VendorId == PciSerialParameter->VendorId) &&\r
               (Pci.Hdr.DeviceId == PciSerialParameter->DeviceId)\r
-              ) {\r
+              )\r
+          {\r
             break;\r
           }\r
         }\r
+\r
         if (PciSerialParameter->VendorId == 0xFFFF) {\r
           Status = EFI_UNSUPPORTED;\r
         } else {\r
@@ -294,12 +299,13 @@ IsPciSerialController (
     // Close the I/O Abstraction(s) used to perform the supported test\r
     //\r
     gBS->CloseProtocol (\r
-      Controller,\r
-      &gEfiPciIoProtocolGuid,\r
-      gSerialControllerDriver.DriverBindingHandle,\r
-      Controller\r
-      );\r
+           Controller,\r
+           &gEfiPciIoProtocolGuid,\r
+           gSerialControllerDriver.DriverBindingHandle,\r
+           Controller\r
+           );\r
   }\r
+\r
   if (EFI_ERROR (Status)) {\r
     return Status;\r
   }\r
@@ -308,24 +314,24 @@ IsPciSerialController (
   // Open the EFI Device Path protocol needed to perform the supported test\r
   //\r
   Status = gBS->OpenProtocol (\r
-    Controller,\r
-    &gEfiDevicePathProtocolGuid,\r
-    (VOID **) &DevicePath,\r
-    gSerialControllerDriver.DriverBindingHandle,\r
-    Controller,\r
-    EFI_OPEN_PROTOCOL_BY_DRIVER\r
-    );\r
+                  Controller,\r
+                  &gEfiDevicePathProtocolGuid,\r
+                  (VOID **)&DevicePath,\r
+                  gSerialControllerDriver.DriverBindingHandle,\r
+                  Controller,\r
+                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
+                  );\r
   ASSERT (Status != EFI_ALREADY_STARTED);\r
 \r
   //\r
   // Close protocol, don't use device path protocol in the Support() function\r
   //\r
   gBS->CloseProtocol (\r
-    Controller,\r
-    &gEfiDevicePathProtocolGuid,\r
-    gSerialControllerDriver.DriverBindingHandle,\r
-    Controller\r
-    );\r
+         Controller,\r
+         &gEfiDevicePathProtocolGuid,\r
+         gSerialControllerDriver.DriverBindingHandle,\r
+         Controller\r
+         );\r
 \r
   return Status;\r
 }\r
@@ -343,15 +349,15 @@ IsPciSerialController (
 EFI_STATUS\r
 EFIAPI\r
 SerialControllerDriverSupported (\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
 {\r
-  EFI_STATUS                                Status;\r
-  UART_DEVICE_PATH                          *Uart;\r
-  UART_FLOW_CONTROL_DEVICE_PATH             *FlowControl;\r
+  EFI_STATUS                     Status;\r
+  UART_DEVICE_PATH               *Uart;\r
+  UART_FLOW_CONTROL_DEVICE_PATH  *FlowControl;\r
 \r
   //\r
   // Test RemainingDevicePath\r
@@ -360,10 +366,11 @@ SerialControllerDriverSupported (
     Status = EFI_UNSUPPORTED;\r
 \r
     Uart = SkipControllerDevicePathNode (RemainingDevicePath, NULL, NULL);\r
-    if (DevicePathType (Uart) != MESSAGING_DEVICE_PATH ||\r
-        DevicePathSubType (Uart) != MSG_UART_DP ||\r
-        DevicePathNodeLength (Uart) != sizeof (UART_DEVICE_PATH)\r
-        ) {\r
+    if ((DevicePathType (Uart) != MESSAGING_DEVICE_PATH) ||\r
+        (DevicePathSubType (Uart) != MSG_UART_DP) ||\r
+        (DevicePathNodeLength (Uart) != sizeof (UART_DEVICE_PATH))\r
+        )\r
+    {\r
       return EFI_UNSUPPORTED;\r
     }\r
 \r
@@ -374,7 +381,7 @@ SerialControllerDriverSupported (
       return EFI_UNSUPPORTED;\r
     }\r
 \r
-    FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *) NextDevicePathNode (Uart);\r
+    FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *)NextDevicePathNode (Uart);\r
     if (IsUartFlowControlDevicePathNode (FlowControl)) {\r
       //\r
       // If the second node is Flow Control Node,\r
@@ -390,6 +397,7 @@ SerialControllerDriverSupported (
   if (EFI_ERROR (Status)) {\r
     Status = IsPciSerialController (Controller);\r
   }\r
+\r
   return Status;\r
 }\r
 \r
@@ -415,31 +423,31 @@ SerialControllerDriverSupported (
 **/\r
 EFI_STATUS\r
 CreateSerialDevice (\r
-  IN EFI_HANDLE                     Controller,\r
-  IN UART_DEVICE_PATH               *Uart,\r
-  IN EFI_DEVICE_PATH_PROTOCOL       *ParentDevicePath,\r
-  IN BOOLEAN                        CreateControllerNode,\r
-  IN UINT32                         Instance,\r
-  IN PARENT_IO_PROTOCOL_PTR         ParentIo,\r
-  IN PCI_SERIAL_PARAMETER           *PciSerialParameter  OPTIONAL,\r
-  IN PCI_DEVICE_INFO                *PciDeviceInfo       OPTIONAL\r
+  IN EFI_HANDLE                Controller,\r
+  IN UART_DEVICE_PATH          *Uart,\r
+  IN EFI_DEVICE_PATH_PROTOCOL  *ParentDevicePath,\r
+  IN BOOLEAN                   CreateControllerNode,\r
+  IN UINT32                    Instance,\r
+  IN PARENT_IO_PROTOCOL_PTR    ParentIo,\r
+  IN PCI_SERIAL_PARAMETER      *PciSerialParameter  OPTIONAL,\r
+  IN PCI_DEVICE_INFO           *PciDeviceInfo       OPTIONAL\r
   )\r
 {\r
-  EFI_STATUS                                 Status;\r
-  SERIAL_DEV                                 *SerialDevice;\r
-  UINT8                                      BarIndex;\r
-  UINT64                                     Offset;\r
-  UART_FLOW_CONTROL_DEVICE_PATH              *FlowControl;\r
-  UINT32                                     FlowControlMap;\r
-  ACPI_RESOURCE_HEADER_PTR                   Resources;\r
-  EFI_ACPI_IO_PORT_DESCRIPTOR                *Io;\r
-  EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR *FixedIo;\r
-  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR          *AddressSpace;\r
-  EFI_DEVICE_PATH_PROTOCOL                   *TempDevicePath;\r
-\r
-  BarIndex = 0;\r
-  Offset = 0;\r
-  FlowControl = NULL;\r
+  EFI_STATUS                                  Status;\r
+  SERIAL_DEV                                  *SerialDevice;\r
+  UINT8                                       BarIndex;\r
+  UINT64                                      Offset;\r
+  UART_FLOW_CONTROL_DEVICE_PATH               *FlowControl;\r
+  UINT32                                      FlowControlMap;\r
+  ACPI_RESOURCE_HEADER_PTR                    Resources;\r
+  EFI_ACPI_IO_PORT_DESCRIPTOR                 *Io;\r
+  EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR  *FixedIo;\r
+  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR           *AddressSpace;\r
+  EFI_DEVICE_PATH_PROTOCOL                    *TempDevicePath;\r
+\r
+  BarIndex       = 0;\r
+  Offset         = 0;\r
+  FlowControl    = NULL;\r
   FlowControlMap = 0;\r
 \r
   //\r
@@ -455,7 +463,7 @@ CreateSerialDevice (
 \r
   if (Uart != NULL) {\r
     CopyMem (&SerialDevice->UartDevicePath, Uart, sizeof (UART_DEVICE_PATH));\r
-    FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *) NextDevicePathNode (Uart);\r
+    FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *)NextDevicePathNode (Uart);\r
     if (IsUartFlowControlDevicePathNode (FlowControl)) {\r
       FlowControlMap = ReadUnaligned32 (&FlowControl->FlowControlMap);\r
     } else {\r
@@ -468,16 +476,19 @@ CreateSerialDevice (
   //\r
   if (PciSerialParameter != NULL) {\r
     BarIndex = (PciSerialParameter->BarIndex == MAX_UINT8) ? 0 : PciSerialParameter->BarIndex;\r
-    Offset = PciSerialParameter->Offset;\r
+    Offset   = PciSerialParameter->Offset;\r
     if (PciSerialParameter->RegisterStride != 0) {\r
       SerialDevice->RegisterStride = PciSerialParameter->RegisterStride;\r
     }\r
+\r
     if (PciSerialParameter->ClockRate != 0) {\r
       SerialDevice->ClockRate = PciSerialParameter->ClockRate;\r
     }\r
+\r
     if (PciSerialParameter->ReceiveFifoDepth != 0) {\r
       SerialDevice->ReceiveFifoDepth = PciSerialParameter->ReceiveFifoDepth;\r
     }\r
+\r
     if (PciSerialParameter->TransmitFifoDepth != 0) {\r
       SerialDevice->TransmitFifoDepth = PciSerialParameter->TransmitFifoDepth;\r
     }\r
@@ -487,9 +498,16 @@ CreateSerialDevice (
   // Pass NULL ActualBaudRate to VerifyUartParameters to disallow baudrate degrade.\r
   // DriverBindingStart() shouldn't create a handle with different UART device path.\r
   //\r
-  if (!VerifyUartParameters (SerialDevice->ClockRate, SerialDevice->UartDevicePath.BaudRate, SerialDevice->UartDevicePath.DataBits,\r
-                            SerialDevice->UartDevicePath.Parity, SerialDevice->UartDevicePath.StopBits, NULL, NULL\r
-                            )) {\r
+  if (!VerifyUartParameters (\r
+         SerialDevice->ClockRate,\r
+         SerialDevice->UartDevicePath.BaudRate,\r
+         SerialDevice->UartDevicePath.DataBits,\r
+         SerialDevice->UartDevicePath.Parity,\r
+         SerialDevice->UartDevicePath.StopBits,\r
+         NULL,\r
+         NULL\r
+         ))\r
+  {\r
     Status = EFI_INVALID_PARAMETER;\r
     goto CreateError;\r
   }\r
@@ -497,7 +515,7 @@ CreateSerialDevice (
   if (PciSerialParameter == NULL) {\r
     Status = ParentIo.Sio->GetResources (ParentIo.Sio, &Resources);\r
   } else {\r
-    Status = ParentIo.PciIo->GetBarAttributes (ParentIo.PciIo, BarIndex, NULL, (VOID **) &Resources);\r
+    Status = ParentIo.PciIo->GetBarAttributes (ParentIo.PciIo, BarIndex, NULL, (VOID **)&Resources);\r
   }\r
 \r
   if (!EFI_ERROR (Status)) {\r
@@ -508,39 +526,43 @@ CreateSerialDevice (
     //\r
     while ((Resources.SmallHeader->Byte != ACPI_END_TAG_DESCRIPTOR) && (SerialDevice->BaseAddress == 0)) {\r
       switch (Resources.SmallHeader->Byte) {\r
-      case ACPI_IO_PORT_DESCRIPTOR:\r
-        Io = (EFI_ACPI_IO_PORT_DESCRIPTOR *) Resources.SmallHeader;\r
-        if (Io->Length != 0) {\r
-          SerialDevice->BaseAddress = Io->BaseAddressMin;\r
-        }\r
-        break;\r
+        case ACPI_IO_PORT_DESCRIPTOR:\r
+          Io = (EFI_ACPI_IO_PORT_DESCRIPTOR *)Resources.SmallHeader;\r
+          if (Io->Length != 0) {\r
+            SerialDevice->BaseAddress = Io->BaseAddressMin;\r
+          }\r
 \r
-      case ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR:\r
-        FixedIo = (EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR *) Resources.SmallHeader;\r
-        if (FixedIo->Length != 0) {\r
-          SerialDevice->BaseAddress = FixedIo->BaseAddress;\r
-        }\r
-        break;\r
+          break;\r
 \r
-      case ACPI_ADDRESS_SPACE_DESCRIPTOR:\r
-        AddressSpace = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *) Resources.SmallHeader;\r
-        if (AddressSpace->AddrLen != 0) {\r
-          if (AddressSpace->ResType == ACPI_ADDRESS_SPACE_TYPE_MEM) {\r
-            SerialDevice->MmioAccess = TRUE;\r
+        case ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR:\r
+          FixedIo = (EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR *)Resources.SmallHeader;\r
+          if (FixedIo->Length != 0) {\r
+            SerialDevice->BaseAddress = FixedIo->BaseAddress;\r
           }\r
-          SerialDevice->BaseAddress = AddressSpace->AddrRangeMin + Offset;\r
-        }\r
-        break;\r
+\r
+          break;\r
+\r
+        case ACPI_ADDRESS_SPACE_DESCRIPTOR:\r
+          AddressSpace = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *)Resources.SmallHeader;\r
+          if (AddressSpace->AddrLen != 0) {\r
+            if (AddressSpace->ResType == ACPI_ADDRESS_SPACE_TYPE_MEM) {\r
+              SerialDevice->MmioAccess = TRUE;\r
+            }\r
+\r
+            SerialDevice->BaseAddress = AddressSpace->AddrRangeMin + Offset;\r
+          }\r
+\r
+          break;\r
       }\r
 \r
       if (Resources.SmallHeader->Bits.Type == 0) {\r
-        Resources.SmallHeader = (ACPI_SMALL_RESOURCE_HEADER *) ((UINT8 *) Resources.SmallHeader\r
-                                                                + Resources.SmallHeader->Bits.Length\r
-                                                                + sizeof (*Resources.SmallHeader));\r
+        Resources.SmallHeader = (ACPI_SMALL_RESOURCE_HEADER *)((UINT8 *)Resources.SmallHeader\r
+                                                               + Resources.SmallHeader->Bits.Length\r
+                                                               + sizeof (*Resources.SmallHeader));\r
       } else {\r
-        Resources.LargeHeader = (ACPI_LARGE_RESOURCE_HEADER *) ((UINT8 *) Resources.LargeHeader\r
-                                                                + Resources.LargeHeader->Length\r
-                                                                + sizeof (*Resources.LargeHeader));\r
+        Resources.LargeHeader = (ACPI_LARGE_RESOURCE_HEADER *)((UINT8 *)Resources.LargeHeader\r
+                                                               + Resources.LargeHeader->Length\r
+                                                               + sizeof (*Resources.LargeHeader));\r
       }\r
     }\r
   }\r
@@ -550,7 +572,7 @@ CreateSerialDevice (
     goto CreateError;\r
   }\r
 \r
-  SerialDevice->HardwareFlowControl = (BOOLEAN) (FlowControlMap == UART_FLOW_CONTROL_HARDWARE);\r
+  SerialDevice->HardwareFlowControl = (BOOLEAN)(FlowControlMap == UART_FLOW_CONTROL_HARDWARE);\r
 \r
   //\r
   // Report status code the serial present\r
@@ -576,10 +598,10 @@ CreateSerialDevice (
   //\r
   if (CreateControllerNode) {\r
     mControllerDevicePathTemplate.ControllerNumber = SerialDevice->Instance;\r
-    SerialDevice->DevicePath = AppendDevicePathNode (\r
-                                 SerialDevice->ParentDevicePath,\r
-                                 (EFI_DEVICE_PATH_PROTOCOL *) &mControllerDevicePathTemplate\r
-                                 );\r
+    SerialDevice->DevicePath                       = AppendDevicePathNode (\r
+                                                       SerialDevice->ParentDevicePath,\r
+                                                       (EFI_DEVICE_PATH_PROTOCOL *)&mControllerDevicePathTemplate\r
+                                                       );\r
     SerialDevice->ContainsControllerNode = TRUE;\r
   }\r
 \r
@@ -592,15 +614,16 @@ CreateSerialDevice (
   if (TempDevicePath != NULL) {\r
     SerialDevice->DevicePath = AppendDevicePathNode (\r
                                  TempDevicePath,\r
-                                 (EFI_DEVICE_PATH_PROTOCOL *) &SerialDevice->UartDevicePath\r
+                                 (EFI_DEVICE_PATH_PROTOCOL *)&SerialDevice->UartDevicePath\r
                                  );\r
     FreePool (TempDevicePath);\r
   } else {\r
     SerialDevice->DevicePath = AppendDevicePathNode (\r
                                  SerialDevice->ParentDevicePath,\r
-                                 (EFI_DEVICE_PATH_PROTOCOL *) &SerialDevice->UartDevicePath\r
+                                 (EFI_DEVICE_PATH_PROTOCOL *)&SerialDevice->UartDevicePath\r
                                  );\r
   }\r
+\r
   //\r
   // 3. Append the Flow Control device path node.\r
   //    Only produce the Flow Control node when remaining device path has it\r
@@ -610,11 +633,12 @@ CreateSerialDevice (
     if (TempDevicePath != NULL) {\r
       SerialDevice->DevicePath = AppendDevicePathNode (\r
                                    TempDevicePath,\r
-                                   (EFI_DEVICE_PATH_PROTOCOL *) FlowControl\r
+                                   (EFI_DEVICE_PATH_PROTOCOL *)FlowControl\r
                                    );\r
       FreePool (TempDevicePath);\r
     }\r
   }\r
+\r
   ASSERT (SerialDevice->DevicePath != NULL);\r
 \r
   //\r
@@ -644,20 +668,23 @@ CreateSerialDevice (
   //\r
   Status = gBS->InstallMultipleProtocolInterfaces (\r
                   &SerialDevice->Handle,\r
-                  &gEfiDevicePathProtocolGuid, SerialDevice->DevicePath,\r
-                  &gEfiSerialIoProtocolGuid, &SerialDevice->SerialIo,\r
+                  &gEfiDevicePathProtocolGuid,\r
+                  SerialDevice->DevicePath,\r
+                  &gEfiSerialIoProtocolGuid,\r
+                  &SerialDevice->SerialIo,\r
                   NULL\r
                   );\r
   if (EFI_ERROR (Status)) {\r
     goto CreateError;\r
   }\r
+\r
   //\r
   // Open For Child Device\r
   //\r
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   PciSerialParameter != NULL ? &gEfiPciIoProtocolGuid : &gEfiSioProtocolGuid,\r
-                  (VOID **) &ParentIo,\r
+                  (VOID **)&ParentIo,\r
                   gSerialControllerDriver.DriverBindingHandle,\r
                   SerialDevice->Handle,\r
                   EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER\r
@@ -666,8 +693,10 @@ CreateSerialDevice (
   if (EFI_ERROR (Status)) {\r
     gBS->UninstallMultipleProtocolInterfaces (\r
            SerialDevice->Handle,\r
-           &gEfiDevicePathProtocolGuid, SerialDevice->DevicePath,\r
-           &gEfiSerialIoProtocolGuid, &SerialDevice->SerialIo,\r
+           &gEfiDevicePathProtocolGuid,\r
+           SerialDevice->DevicePath,\r
+           &gEfiSerialIoProtocolGuid,\r
+           &SerialDevice->SerialIo,\r
            NULL\r
            );\r
   }\r
@@ -677,11 +706,14 @@ CreateError:
     if (SerialDevice->DevicePath != NULL) {\r
       FreePool (SerialDevice->DevicePath);\r
     }\r
+\r
     if (SerialDevice->ControllerNameTable != NULL) {\r
       FreeUnicodeStringTable (SerialDevice->ControllerNameTable);\r
     }\r
+\r
     FreePool (SerialDevice);\r
   }\r
+\r
   return Status;\r
 }\r
 \r
@@ -697,18 +729,18 @@ CreateError:
 **/\r
 SERIAL_DEV **\r
 GetChildSerialDevices (\r
-  IN EFI_HANDLE                       Controller,\r
-  IN EFI_GUID                         *IoProtocolGuid,\r
-  OUT UINTN                           *Count\r
+  IN EFI_HANDLE  Controller,\r
+  IN EFI_GUID    *IoProtocolGuid,\r
+  OUT UINTN      *Count\r
   )\r
 {\r
-  EFI_STATUS                                 Status;\r
-  UINTN                                      Index;\r
-  EFI_OPEN_PROTOCOL_INFORMATION_ENTRY        *OpenInfoBuffer;\r
-  UINTN                                      EntryCount;\r
-  SERIAL_DEV                                 **SerialDevices;\r
-  EFI_SERIAL_IO_PROTOCOL                     *SerialIo;\r
-  BOOLEAN                                    OpenByDriver;\r
+  EFI_STATUS                           Status;\r
+  UINTN                                Index;\r
+  EFI_OPEN_PROTOCOL_INFORMATION_ENTRY  *OpenInfoBuffer;\r
+  UINTN                                EntryCount;\r
+  SERIAL_DEV                           **SerialDevices;\r
+  EFI_SERIAL_IO_PROTOCOL               *SerialIo;\r
+  BOOLEAN                              OpenByDriver;\r
 \r
   *Count = 0;\r
   //\r
@@ -716,11 +748,11 @@ GetChildSerialDevices (
   // update the attributes/control.\r
   //\r
   Status = gBS->OpenProtocolInformation (\r
-    Controller,\r
-    IoProtocolGuid,\r
-    &OpenInfoBuffer,\r
-    &EntryCount\r
-    );\r
+                  Controller,\r
+                  IoProtocolGuid,\r
+                  &OpenInfoBuffer,\r
+                  &EntryCount\r
+                  );\r
   if (EFI_ERROR (Status)) {\r
     return NULL;\r
   }\r
@@ -728,29 +760,29 @@ GetChildSerialDevices (
   SerialDevices = AllocatePool (EntryCount * sizeof (SERIAL_DEV *));\r
   ASSERT (SerialDevices != NULL);\r
 \r
-  *Count = 0;\r
+  *Count       = 0;\r
   OpenByDriver = FALSE;\r
   for (Index = 0; Index < EntryCount; Index++) {\r
     if ((OpenInfoBuffer[Index].Attributes & EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER) != 0) {\r
       Status = gBS->OpenProtocol (\r
-        OpenInfoBuffer[Index].ControllerHandle,\r
-        &gEfiSerialIoProtocolGuid,\r
-        (VOID **) &SerialIo,\r
-        gSerialControllerDriver.DriverBindingHandle,\r
-        Controller,\r
-        EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-        );\r
+                      OpenInfoBuffer[Index].ControllerHandle,\r
+                      &gEfiSerialIoProtocolGuid,\r
+                      (VOID **)&SerialIo,\r
+                      gSerialControllerDriver.DriverBindingHandle,\r
+                      Controller,\r
+                      EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
+                      );\r
       if (!EFI_ERROR (Status)) {\r
         SerialDevices[(*Count)++] = SERIAL_DEV_FROM_THIS (SerialIo);\r
       }\r
     }\r
 \r
-\r
     if ((OpenInfoBuffer[Index].Attributes & EFI_OPEN_PROTOCOL_BY_DRIVER) != 0) {\r
       ASSERT (OpenInfoBuffer[Index].AgentHandle == gSerialControllerDriver.DriverBindingHandle);\r
       OpenByDriver = TRUE;\r
     }\r
   }\r
+\r
   if (OpenInfoBuffer != NULL) {\r
     FreePool (OpenInfoBuffer);\r
   }\r
@@ -772,32 +804,32 @@ GetChildSerialDevices (
 EFI_STATUS\r
 EFIAPI\r
 SerialControllerDriverStart (\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
-  UINTN                                      Index;\r
-  EFI_DEVICE_PATH_PROTOCOL                   *ParentDevicePath;\r
-  EFI_DEVICE_PATH_PROTOCOL                   *Node;\r
-  EFI_SERIAL_IO_PROTOCOL                     *SerialIo;\r
-  UINT32                                     ControllerNumber;\r
-  UART_DEVICE_PATH                           *Uart;\r
-  UART_FLOW_CONTROL_DEVICE_PATH              *FlowControl;\r
-  UINT32                                     Control;\r
-  PARENT_IO_PROTOCOL_PTR                     ParentIo;\r
-  ACPI_HID_DEVICE_PATH                       *Acpi;\r
-  EFI_GUID                                   *IoProtocolGuid;\r
-  PCI_SERIAL_PARAMETER                       *PciSerialParameter;\r
-  PCI_SERIAL_PARAMETER                       DefaultPciSerialParameter;\r
-  PCI_TYPE00                                 Pci;\r
-  UINT32                                     PciSerialCount;\r
-  SERIAL_DEV                                 **SerialDevices;\r
-  UINTN                                      SerialDeviceCount;\r
-  PCI_DEVICE_INFO                            *PciDeviceInfo;\r
-  UINT64                                     Supports;\r
-  BOOLEAN                                    ContainsControllerNode;\r
+  EFI_STATUS                     Status;\r
+  UINTN                          Index;\r
+  EFI_DEVICE_PATH_PROTOCOL       *ParentDevicePath;\r
+  EFI_DEVICE_PATH_PROTOCOL       *Node;\r
+  EFI_SERIAL_IO_PROTOCOL         *SerialIo;\r
+  UINT32                         ControllerNumber;\r
+  UART_DEVICE_PATH               *Uart;\r
+  UART_FLOW_CONTROL_DEVICE_PATH  *FlowControl;\r
+  UINT32                         Control;\r
+  PARENT_IO_PROTOCOL_PTR         ParentIo;\r
+  ACPI_HID_DEVICE_PATH           *Acpi;\r
+  EFI_GUID                       *IoProtocolGuid;\r
+  PCI_SERIAL_PARAMETER           *PciSerialParameter;\r
+  PCI_SERIAL_PARAMETER           DefaultPciSerialParameter;\r
+  PCI_TYPE00                     Pci;\r
+  UINT32                         PciSerialCount;\r
+  SERIAL_DEV                     **SerialDevices;\r
+  UINTN                          SerialDeviceCount;\r
+  PCI_DEVICE_INFO                *PciDeviceInfo;\r
+  UINT64                         Supports;\r
+  BOOLEAN                        ContainsControllerNode;\r
 \r
   //\r
   // Get the Parent Device Path\r
@@ -805,14 +837,15 @@ SerialControllerDriverStart (
   Status = gBS->OpenProtocol (\r
                   Controller,\r
                   &gEfiDevicePathProtocolGuid,\r
-                  (VOID **) &ParentDevicePath,\r
+                  (VOID **)&ParentDevicePath,\r
                   This->DriverBindingHandle,\r
                   Controller,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
                   );\r
-  if (EFI_ERROR (Status) && Status != EFI_ALREADY_STARTED) {\r
+  if (EFI_ERROR (Status) && (Status != EFI_ALREADY_STARTED)) {\r
     return Status;\r
   }\r
+\r
   //\r
   // Report status code enable the serial\r
   //\r
@@ -826,25 +859,26 @@ SerialControllerDriverStart (
   // Grab the IO abstraction we need to get any work done\r
   //\r
   IoProtocolGuid = &gEfiSioProtocolGuid;\r
-  Status = gBS->OpenProtocol (\r
-                  Controller,\r
-                  IoProtocolGuid,\r
-                  (VOID **) &ParentIo,\r
-                  This->DriverBindingHandle,\r
-                  Controller,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-  if (EFI_ERROR (Status) && Status != EFI_ALREADY_STARTED) {\r
+  Status         = gBS->OpenProtocol (\r
+                          Controller,\r
+                          IoProtocolGuid,\r
+                          (VOID **)&ParentIo,\r
+                          This->DriverBindingHandle,\r
+                          Controller,\r
+                          EFI_OPEN_PROTOCOL_BY_DRIVER\r
+                          );\r
+  if (EFI_ERROR (Status) && (Status != EFI_ALREADY_STARTED)) {\r
     IoProtocolGuid = &gEfiPciIoProtocolGuid;\r
-    Status = gBS->OpenProtocol (\r
-                    Controller,\r
-                    IoProtocolGuid,\r
-                    (VOID **) &ParentIo,\r
-                    This->DriverBindingHandle,\r
-                    Controller,\r
-                    EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                    );\r
+    Status         = gBS->OpenProtocol (\r
+                            Controller,\r
+                            IoProtocolGuid,\r
+                            (VOID **)&ParentIo,\r
+                            This->DriverBindingHandle,\r
+                            Controller,\r
+                            EFI_OPEN_PROTOCOL_BY_DRIVER\r
+                            );\r
   }\r
+\r
   ASSERT (!EFI_ERROR (Status) || Status == EFI_ALREADY_STARTED);\r
 \r
   //\r
@@ -854,9 +888,9 @@ SerialControllerDriverStart (
     return EFI_SUCCESS;\r
   }\r
 \r
-  ControllerNumber = 0;\r
+  ControllerNumber       = 0;\r
   ContainsControllerNode = FALSE;\r
-  SerialDevices = GetChildSerialDevices (Controller, IoProtocolGuid, &SerialDeviceCount);\r
+  SerialDevices          = GetChildSerialDevices (Controller, IoProtocolGuid, &SerialDeviceCount);\r
 \r
   if (SerialDeviceCount != 0) {\r
     if (RemainingDevicePath == NULL) {\r
@@ -869,31 +903,41 @@ SerialControllerDriverStart (
       //\r
       // Update the attributes/control of the SerialIo instance specified by RemainingDevicePath.\r
       //\r
-      Uart = (UART_DEVICE_PATH *) SkipControllerDevicePathNode (RemainingDevicePath, &ContainsControllerNode, &ControllerNumber);\r
+      Uart = (UART_DEVICE_PATH *)SkipControllerDevicePathNode (RemainingDevicePath, &ContainsControllerNode, &ControllerNumber);\r
       for (Index = 0; Index < SerialDeviceCount; Index++) {\r
         ASSERT ((SerialDevices != NULL) && (SerialDevices[Index] != NULL));\r
         if ((!SerialDevices[Index]->ContainsControllerNode && !ContainsControllerNode) ||\r
-            (SerialDevices[Index]->ContainsControllerNode && ContainsControllerNode && SerialDevices[Index]->Instance == ControllerNumber)\r
-            ) {\r
+            (SerialDevices[Index]->ContainsControllerNode && ContainsControllerNode && (SerialDevices[Index]->Instance == ControllerNumber))\r
+            )\r
+        {\r
           SerialIo = &SerialDevices[Index]->SerialIo;\r
-          Status = EFI_INVALID_PARAMETER;\r
+          Status   = EFI_INVALID_PARAMETER;\r
           //\r
           // Pass NULL ActualBaudRate to VerifyUartParameters to disallow baudrate degrade.\r
           // DriverBindingStart() shouldn't create a handle with different UART device path.\r
           //\r
-          if (VerifyUartParameters (SerialDevices[Index]->ClockRate, Uart->BaudRate, Uart->DataBits,\r
-                                    (EFI_PARITY_TYPE) Uart->Parity, (EFI_STOP_BITS_TYPE) Uart->StopBits, NULL, NULL)) {\r
+          if (VerifyUartParameters (\r
+                SerialDevices[Index]->ClockRate,\r
+                Uart->BaudRate,\r
+                Uart->DataBits,\r
+                (EFI_PARITY_TYPE)Uart->Parity,\r
+                (EFI_STOP_BITS_TYPE)Uart->StopBits,\r
+                NULL,\r
+                NULL\r
+                ))\r
+          {\r
             Status = SerialIo->SetAttributes (\r
                                  SerialIo,\r
                                  Uart->BaudRate,\r
                                  SerialIo->Mode->ReceiveFifoDepth,\r
                                  SerialIo->Mode->Timeout,\r
-                                 (EFI_PARITY_TYPE) Uart->Parity,\r
+                                 (EFI_PARITY_TYPE)Uart->Parity,\r
                                  Uart->DataBits,\r
-                                 (EFI_STOP_BITS_TYPE) Uart->StopBits\r
+                                 (EFI_STOP_BITS_TYPE)Uart->StopBits\r
                                  );\r
           }\r
-          FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *) NextDevicePathNode (Uart);\r
+\r
+          FlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *)NextDevicePathNode (Uart);\r
           if (!EFI_ERROR (Status) && IsUartFlowControlDevicePathNode (FlowControl)) {\r
             Status = SerialIo->GetControl (SerialIo, &Control);\r
             if (!EFI_ERROR (Status)) {\r
@@ -902,6 +946,7 @@ SerialControllerDriverStart (
               } else {\r
                 Control &= ~EFI_SERIAL_HARDWARE_FLOW_CONTROL_ENABLE;\r
               }\r
+\r
               //\r
               // Clear the bits that are not allowed to pass to SetControl\r
               //\r
@@ -911,9 +956,11 @@ SerialControllerDriverStart (
               Status = SerialIo->SetControl (SerialIo, Control);\r
             }\r
           }\r
+\r
           break;\r
         }\r
       }\r
+\r
       if (Index != SerialDeviceCount) {\r
         //\r
         // Directly return if the SerialIo instance specified by RemainingDevicePath is found and updated.\r
@@ -922,13 +969,14 @@ SerialControllerDriverStart (
         if (SerialDevices != NULL) {\r
           FreePool (SerialDevices);\r
         }\r
+\r
         return Status;\r
       }\r
     }\r
   }\r
 \r
   if (RemainingDevicePath != NULL) {\r
-    Uart = (UART_DEVICE_PATH *) SkipControllerDevicePathNode (RemainingDevicePath, &ContainsControllerNode, &ControllerNumber);\r
+    Uart = (UART_DEVICE_PATH *)SkipControllerDevicePathNode (RemainingDevicePath, &ContainsControllerNode, &ControllerNumber);\r
   } else {\r
     Uart = NULL;\r
   }\r
@@ -936,12 +984,13 @@ SerialControllerDriverStart (
   PciDeviceInfo = NULL;\r
   if (IoProtocolGuid == &gEfiSioProtocolGuid) {\r
     Status = EFI_NOT_FOUND;\r
-    if (RemainingDevicePath == NULL || !ContainsControllerNode) {\r
+    if ((RemainingDevicePath == NULL) || !ContainsControllerNode) {\r
       Node = ParentDevicePath;\r
       do {\r
-        Acpi = (ACPI_HID_DEVICE_PATH *) Node;\r
+        Acpi = (ACPI_HID_DEVICE_PATH *)Node;\r
         Node = NextDevicePathNode (Node);\r
       } while (!IsDevicePathEnd (Node));\r
+\r
       Status = CreateSerialDevice (Controller, Uart, ParentDevicePath, FALSE, Acpi->UID, ParentIo, NULL, NULL);\r
       DEBUG ((DEBUG_INFO, "PciSioSerial: Create SIO child serial device - %r\n", Status));\r
     }\r
@@ -955,7 +1004,8 @@ SerialControllerDriverStart (
       for (PciSerialParameter = PcdGetPtr (PcdPciSerialParameters); PciSerialParameter->VendorId != 0xFFFF; PciSerialParameter++) {\r
         if ((PciSerialParameter->VendorId == Pci.Hdr.VendorId) &&\r
             (PciSerialParameter->DeviceId == Pci.Hdr.DeviceId)\r
-            ) {\r
+            )\r
+        {\r
           PciSerialCount++;\r
         }\r
       }\r
@@ -968,29 +1018,29 @@ SerialControllerDriverStart (
         PciDeviceInfo = AllocatePool (sizeof (PCI_DEVICE_INFO));\r
         ASSERT (PciDeviceInfo != NULL);\r
         PciDeviceInfo->ChildCount = 0;\r
-        PciDeviceInfo->PciIo = ParentIo.PciIo;\r
-        Status = ParentIo.PciIo->Attributes (\r
-          ParentIo.PciIo,\r
-          EfiPciIoAttributeOperationGet,\r
-          0,\r
-          &PciDeviceInfo->PciAttributes\r
-          );\r
+        PciDeviceInfo->PciIo      = ParentIo.PciIo;\r
+        Status                    = ParentIo.PciIo->Attributes (\r
+                                                      ParentIo.PciIo,\r
+                                                      EfiPciIoAttributeOperationGet,\r
+                                                      0,\r
+                                                      &PciDeviceInfo->PciAttributes\r
+                                                      );\r
 \r
         if (!EFI_ERROR (Status)) {\r
           Status = ParentIo.PciIo->Attributes (\r
-            ParentIo.PciIo,\r
-            EfiPciIoAttributeOperationSupported,\r
-            0,\r
-            &Supports\r
-            );\r
+                                     ParentIo.PciIo,\r
+                                     EfiPciIoAttributeOperationSupported,\r
+                                     0,\r
+                                     &Supports\r
+                                     );\r
           if (!EFI_ERROR (Status)) {\r
             Supports &= (UINT64)(EFI_PCI_IO_ATTRIBUTE_IO | EFI_PCI_IO_ATTRIBUTE_MEMORY);\r
-            Status = ParentIo.PciIo->Attributes (\r
-              ParentIo.PciIo,\r
-              EfiPciIoAttributeOperationEnable,\r
-              Supports,\r
-              NULL\r
-              );\r
+            Status    = ParentIo.PciIo->Attributes (\r
+                                          ParentIo.PciIo,\r
+                                          EfiPciIoAttributeOperationEnable,\r
+                                          Supports,\r
+                                          NULL\r
+                                          );\r
           }\r
         }\r
       } else {\r
@@ -1007,18 +1057,18 @@ SerialControllerDriverStart (
         //\r
         // PCI serial device contains only one UART\r
         //\r
-        if (RemainingDevicePath == NULL || !ContainsControllerNode) {\r
+        if ((RemainingDevicePath == NULL) || !ContainsControllerNode) {\r
           //\r
           // This PCI serial device is matched by class code in Supported()\r
           //\r
           if (PciSerialCount == 0) {\r
-            DefaultPciSerialParameter.VendorId = Pci.Hdr.VendorId;\r
-            DefaultPciSerialParameter.DeviceId = Pci.Hdr.DeviceId;\r
-            DefaultPciSerialParameter.BarIndex = 0;\r
-            DefaultPciSerialParameter.Offset = 0;\r
+            DefaultPciSerialParameter.VendorId       = Pci.Hdr.VendorId;\r
+            DefaultPciSerialParameter.DeviceId       = Pci.Hdr.DeviceId;\r
+            DefaultPciSerialParameter.BarIndex       = 0;\r
+            DefaultPciSerialParameter.Offset         = 0;\r
             DefaultPciSerialParameter.RegisterStride = 0;\r
-            DefaultPciSerialParameter.ClockRate = 0;\r
-            PciSerialParameter = &DefaultPciSerialParameter;\r
+            DefaultPciSerialParameter.ClockRate      = 0;\r
+            PciSerialParameter                       = &DefaultPciSerialParameter;\r
           } else if (PciSerialCount == 1) {\r
             PciSerialParameter = PcdGetPtr (PcdPciSerialParameters);\r
           }\r
@@ -1033,13 +1083,14 @@ SerialControllerDriverStart (
         //\r
         // PCI serial device contains multiple UARTs\r
         //\r
-        if (RemainingDevicePath == NULL || ContainsControllerNode) {\r
+        if ((RemainingDevicePath == NULL) || ContainsControllerNode) {\r
           PciSerialCount = 0;\r
           for (PciSerialParameter = PcdGetPtr (PcdPciSerialParameters); PciSerialParameter->VendorId != 0xFFFF; PciSerialParameter++) {\r
             if ((PciSerialParameter->VendorId == Pci.Hdr.VendorId) &&\r
                 (PciSerialParameter->DeviceId == Pci.Hdr.DeviceId) &&\r
                 ((RemainingDevicePath == NULL) || (ControllerNumber == PciSerialCount))\r
-                ) {\r
+                )\r
+            {\r
               //\r
               // Create controller node when PCI serial device contains multiple UARTs\r
               //\r
@@ -1070,14 +1121,15 @@ SerialControllerDriverStart (
   if (EFI_ERROR (Status) && (SerialDeviceCount == 0)) {\r
     if (PciDeviceInfo != NULL) {\r
       Status = ParentIo.PciIo->Attributes (\r
-        ParentIo.PciIo,\r
-        EfiPciIoAttributeOperationSet,\r
-        PciDeviceInfo->PciAttributes,\r
-        NULL\r
-        );\r
+                                 ParentIo.PciIo,\r
+                                 EfiPciIoAttributeOperationSet,\r
+                                 PciDeviceInfo->PciAttributes,\r
+                                 NULL\r
+                                 );\r
       ASSERT_EFI_ERROR (Status);\r
       FreePool (PciDeviceInfo);\r
     }\r
+\r
     gBS->CloseProtocol (\r
            Controller,\r
            &gEfiDevicePathProtocolGuid,\r
@@ -1110,28 +1162,28 @@ SerialControllerDriverStart (
 EFI_STATUS\r
 EFIAPI\r
 SerialControllerDriverStop (\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
 {\r
-  EFI_STATUS                          Status;\r
-  UINTN                               Index;\r
-  BOOLEAN                             AllChildrenStopped;\r
-  EFI_SERIAL_IO_PROTOCOL              *SerialIo;\r
-  SERIAL_DEV                          *SerialDevice;\r
-  VOID                                *IoProtocol;\r
-  EFI_DEVICE_PATH_PROTOCOL            *DevicePath;\r
-  PCI_DEVICE_INFO                     *PciDeviceInfo;\r
+  EFI_STATUS                Status;\r
+  UINTN                     Index;\r
+  BOOLEAN                   AllChildrenStopped;\r
+  EFI_SERIAL_IO_PROTOCOL    *SerialIo;\r
+  SERIAL_DEV                *SerialDevice;\r
+  VOID                      *IoProtocol;\r
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
+  PCI_DEVICE_INFO           *PciDeviceInfo;\r
 \r
   PciDeviceInfo = NULL;\r
 \r
   Status = gBS->HandleProtocol (\r
                   Controller,\r
                   &gEfiDevicePathProtocolGuid,\r
-                  (VOID **) &DevicePath\r
+                  (VOID **)&DevicePath\r
                   );\r
 \r
   //\r
@@ -1174,17 +1226,15 @@ SerialControllerDriverStop (
   AllChildrenStopped = TRUE;\r
 \r
   for (Index = 0; Index < NumberOfChildren; Index++) {\r
-\r
     Status = gBS->OpenProtocol (\r
                     ChildHandleBuffer[Index],\r
                     &gEfiSerialIoProtocolGuid,\r
-                    (VOID **) &SerialIo,\r
+                    (VOID **)&SerialIo,\r
                     This->DriverBindingHandle,\r
                     Controller,\r
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
                     );\r
     if (!EFI_ERROR (Status)) {\r
-\r
       SerialDevice = SERIAL_DEV_FROM_THIS (SerialIo);\r
       ASSERT ((PciDeviceInfo == NULL) || (PciDeviceInfo == SerialDevice->PciDeviceInfo));\r
       PciDeviceInfo = SerialDevice->PciDeviceInfo;\r
@@ -1198,8 +1248,10 @@ SerialControllerDriverStop (
 \r
       Status = gBS->UninstallMultipleProtocolInterfaces (\r
                       ChildHandleBuffer[Index],\r
-                      &gEfiDevicePathProtocolGuid, SerialDevice->DevicePath,\r
-                      &gEfiSerialIoProtocolGuid,   &SerialDevice->SerialIo,\r
+                      &gEfiDevicePathProtocolGuid,\r
+                      SerialDevice->DevicePath,\r
+                      &gEfiSerialIoProtocolGuid,\r
+                      &SerialDevice->SerialIo,\r
                       NULL\r
                       );\r
       if (EFI_ERROR (Status)) {\r
@@ -1237,14 +1289,15 @@ SerialControllerDriverStop (
     if ((PciDeviceInfo != NULL) && (PciDeviceInfo->ChildCount == 0)) {\r
       ASSERT (PciDeviceInfo->PciIo != NULL);\r
       Status = PciDeviceInfo->PciIo->Attributes (\r
-        PciDeviceInfo->PciIo,\r
-        EfiPciIoAttributeOperationSet,\r
-        PciDeviceInfo->PciAttributes,\r
-        NULL\r
-        );\r
+                                       PciDeviceInfo->PciIo,\r
+                                       EfiPciIoAttributeOperationSet,\r
+                                       PciDeviceInfo->PciAttributes,\r
+                                       NULL\r
+                                       );\r
       ASSERT_EFI_ERROR (Status);\r
       FreePool (PciDeviceInfo);\r
     }\r
+\r
     return EFI_SUCCESS;\r
   }\r
 }\r