/* For Td guest TDVMCALL_IO is invoked to read I/O port. */
UINT16 EFIAPI IoRead16(IN UINTN Port)
/* For Td guest TDVMCALL_IO is invoked to read I/O port. */
UINT16 EFIAPI IoRead16(IN UINTN Port)
{
  UINT16   Value;
  BOOLEAN  Flag;
  ASSERT ((Port & 1) == 0);
  Flag = FilterBeforeIoRead (FilterWidth16, Port, &Value);
  if (Flag) {
    if (IsTdxGuest ()) {
      Value = TdIoRead16 (Port);
    } else {
      _ReadWriteBarrier ();
      Value = _inpw ((UINT16)Port);
      _ReadWriteBarrier ();
    }
  }
  FilterBeforeIoRead (FilterWidth16, Port, &Value);
  return Value;
}