Add missing braces in module global mControllerDevicePathTemplate.
Initialize ControllerNumber and ContainsControllerNode in
SerialControllerDriverStart() to address warning for potential
use before initialization warning.
Move initialization of local SerialIo earlier in
SerialControllerDriverStart() to address warning for potential
use before initialization warning.

Cc: Ruiyu Ni <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <[email protected]>
---
 MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c 
b/MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c
index 86e75a4..7fc0535 100644
--- a/MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c
+++ b/MdeModulePkg/Bus/Pci/PciSioSerialDxe/Serial.c
@@ -31,8 +31,10 @@ CONTROLLER_DEVICE_PATH mControllerDevicePathTemplate = {
   {
     HARDWARE_DEVICE_PATH,
     HW_CONTROLLER_DP,
-    sizeof (CONTROLLER_DEVICE_PATH),
-    0
+    {
+      (UINT8) (sizeof (CONTROLLER_DEVICE_PATH)),
+      (UINT8) ((sizeof (CONTROLLER_DEVICE_PATH)) >> 8)
+    }
   },
   0
 };
@@ -858,7 +860,8 @@ SerialControllerDriverStart (
     return EFI_SUCCESS;
   }
 
-
+  ControllerNumber = 0;
+  ContainsControllerNode = FALSE;
   SerialDevices = GetChildSerialDevices (Controller, IoProtocolGuid, 
&SerialDeviceCount);
   //
   // If the SerialIo instance specified by RemainingDevicePath is already 
created,
@@ -870,6 +873,7 @@ SerialControllerDriverStart (
       if ((!SerialDevices[Index]->ContainsControllerNode && 
!ContainsControllerNode) ||
           (SerialDevices[Index]->ContainsControllerNode && 
ContainsControllerNode && SerialDevices[Index]->Instance == ControllerNumber)
           ) {
+        SerialIo = &SerialDevices[Index]->SerialIo;
         Status = EFI_INVALID_PARAMETER;
         //
         // Pass NULL ActualBaudRate to VerifyUartParameters to disallow 
baudrate degrade.
@@ -877,7 +881,6 @@ SerialControllerDriverStart (
         //
         if (VerifyUartParameters (SerialDevices[Index]->ClockRate, 
Uart->BaudRate, Uart->DataBits,
                                   (EFI_PARITY_TYPE) Uart->Parity, 
(EFI_STOP_BITS_TYPE) Uart->StopBits, NULL, NULL)) {
-          SerialIo = &SerialDevices[Index]->SerialIo;
           Status = SerialIo->SetAttributes (
                                SerialIo,
                                Uart->BaudRate,
-- 
2.6.3.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to