]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c
Replace Fixed PCD with Feature PCD for useHalfHandshake to reduce code size.
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Isa / IsaSerialDxe / Serial.c
index c50e532ee3a6c77e4fcf0709d226995652749e6f..4a86257e73266d55186fe3f68b87d5e052c6d7a7 100644 (file)
@@ -83,8 +83,7 @@ SERIAL_DEV  gSerialDevTempate = {
   FALSE,\r
   FALSE,\r
   Uart16550A,\r
-  NULL,\r
-  FixedPcdGetBool (PcdIsaBusSerialUseHalfHandshake)   //UseHalfHandshake\r
+  NULL\r
 };\r
 \r
 /**\r
@@ -807,7 +806,7 @@ IsaSerialReceiveTransmit (
     // if receive buffer is available.\r
     //\r
     if (SerialDevice->HardwareFlowControl &&\r
-        !SerialDevice->UseHalfHandshake   &&\r
+        !FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake)&&\r
         !ReceiveFifoFull\r
         ) {\r
       Mcr.Data     = READ_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
@@ -844,7 +843,7 @@ IsaSerialReceiveTransmit (
           // tell the peer to stop sending data.\r
           //\r
           if (SerialDevice->HardwareFlowControl &&\r
-              !SerialDevice->UseHalfHandshake   &&\r
+              !FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake)   &&\r
               IsaSerialFifoFull (&SerialDevice->Receive)\r
               ) {\r
             Mcr.Data     = READ_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
@@ -873,7 +872,7 @@ IsaSerialReceiveTransmit (
           //\r
           // For half handshake flow control assert RTS before sending.\r
           //\r
-          if (SerialDevice->UseHalfHandshake) {\r
+          if (FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake)) {\r
             Mcr.Data     = READ_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
             Mcr.Bits.Rts= 0;\r
             WRITE_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress, Mcr.Data);\r
@@ -883,7 +882,7 @@ IsaSerialReceiveTransmit (
           //\r
           TimeOut   = 0;\r
           Msr.Data  = READ_MSR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
-          while (Msr.Bits.Dcd == 1 && (!Msr.Bits.Cts ^ SerialDevice->UseHalfHandshake)) {\r
+          while (Msr.Bits.Dcd == 1 && (!Msr.Bits.Cts ^ FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake))) {\r
             gBS->Stall (TIMEOUT_STALL_INTERVAL);\r
             TimeOut++;\r
             if (TimeOut > 5) {\r
@@ -893,7 +892,7 @@ IsaSerialReceiveTransmit (
             Msr.Data = READ_MSR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
           }\r
 \r
-          if (Msr.Bits.Dcd== 0 || (Msr.Bits.Cts ^ SerialDevice->UseHalfHandshake)) {\r
+          if (Msr.Bits.Dcd== 0 || (Msr.Bits.Cts ^ FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake))) {\r
             IsaSerialFifoRemove (&SerialDevice->Transmit, &Data);\r
             WRITE_THR (SerialDevice->IsaIo, SerialDevice->BaseAddress, Data);\r
           }\r
@@ -901,7 +900,7 @@ IsaSerialReceiveTransmit (
           //\r
           // For half handshake flow control, tell DCE we are done.\r
           //\r
-          if (SerialDevice->UseHalfHandshake) {\r
+          if (FeaturePcdGet(PcdIsaBusSerialUseHalfHandshake)) {\r
             Mcr.Data = READ_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress);\r
             Mcr.Bits.Rts = 1;\r
             WRITE_MCR (SerialDevice->IsaIo, SerialDevice->BaseAddress, Mcr.Data);\r