// Baud Rate\r
//\r
\r
- // If BaudRate is zero then use default baud rate\r
- if (*BaudRate == 0) {\r
- if (PcdGet32 (PL011UartInteger) != 0) {\r
+ // If PL011 Integral value has been defined then always ignore the BAUD rate\r
+ if (PcdGet32 (PL011UartInteger) != 0) {\r
MmioWrite32 (UartBase + UARTIBRD, PcdGet32 (PL011UartInteger));\r
MmioWrite32 (UartBase + UARTFBRD, PcdGet32 (PL011UartFractional));\r
- } else {\r
+ } else {\r
+ // If BAUD rate is zero then replace it with the system default value\r
+ if (*BaudRate == 0) {\r
*BaudRate = PcdGet32 (PcdSerialBaudRate);\r
ASSERT (*BaudRate != 0);\r
}\r
- }\r
\r
- // If BaudRate != 0 then we must calculate the divisor from the value\r
- if (*BaudRate != 0) {\r
Divisor = (PcdGet32 (PL011UartClkInHz) * 4) / *BaudRate;\r
MmioWrite32 (UartBase + UARTIBRD, Divisor >> 6);\r
MmioWrite32 (UartBase + UARTFBRD, Divisor & 0x3F);\r