diff --git a/MdePkg/Include/Library/SerialPortLib.h b/MdePkg/Include/Library/SerialPortLib.h index dc4031a974..59c5c27e3f 100644 --- a/MdePkg/Include/Library/SerialPortLib.h +++ b/MdePkg/Include/Library/SerialPortLib.h @@ -70,5 +70,21 @@ SerialPortRead ( IN UINTN NumberOfBytes ); +/** + Poll the serial device to see if there is any data waiting. + + If there is data waiting to be read from the serial port, then return + TRUE. If there is no data waiting to be read from the serial port, then + return FALSE. + + @retval TRUE Data is waiting to be read. + @retval FALSE There is no data waiting to be read. + +**/ +BOOLEAN +EFIAPI +SerialPortPoll ( + VOID + ); #endif diff --git a/MdePkg/Library/SerialPortLibNull/SerialPortLibNull.c b/MdePkg/Library/SerialPortLibNull/SerialPortLibNull.c index 1fdc6586a5..fa256facc7 100644 --- a/MdePkg/Library/SerialPortLibNull/SerialPortLibNull.c +++ b/MdePkg/Library/SerialPortLibNull/SerialPortLibNull.c @@ -73,3 +73,23 @@ SerialPortRead ( return 0; } +/** + Poll the serial device to see if there is any data waiting. + + If there is data waiting to be read from the serial port, then return + TRUE. If there is no data waiting to be read from the serial port, then + return FALSE. + + @retval FALSE There is no data waiting to be read. + +**/ +BOOLEAN +EFIAPI +SerialPortPoll ( + VOID + ) +{ + return FALSE; +} + + \ No newline at end of file