Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com>

On 2015-11-17 03:07:21, Star Zeng wrote:
> It is also to add GetControl/SetControl/SetAttributes implementation
> for DxeEmuSerialPortLib.
> 
> Cc: Michael D Kinney <michael.d.kin...@intel.com>
> Cc: Liming Gao <liming....@intel.com>
> Cc: Jordan Justen <jordan.l.jus...@intel.com>
> Cc: Andrew Fish <af...@apple.com>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Star Zeng <star.z...@intel.com>
> ---
>  EmulatorPkg/EmulatorPkg.dsc                        |  3 +-
>  EmulatorPkg/EmulatorPkg.fdf                        |  2 +-
>  .../DxeEmuSerialPortLib/DxeEmuSerialPortLib.c      | 85 
> +++++++++++++++++++++-
>  3 files changed, 86 insertions(+), 4 deletions(-)
> 
> diff --git a/EmulatorPkg/EmulatorPkg.dsc b/EmulatorPkg/EmulatorPkg.dsc
> index 8eff20e..27a78d5 100644
> --- a/EmulatorPkg/EmulatorPkg.dsc
> +++ b/EmulatorPkg/EmulatorPkg.dsc
> @@ -87,7 +87,6 @@ [LibraryClasses]
>    
> SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
>    
> TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
>    
> SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
> -  
> SerialPortExtLib|EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf
>    CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
>    #
>    # Platform
> @@ -325,7 +324,7 @@ [Components]
>    MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
>    MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
>    MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
> -  EmbeddedPkg/SerialDxe/SerialDxe.inf {
> +  MdeModulePkg/Universal/SerialDxe/SerialDxe.inf {
>     <LibraryClasses>
>        DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
>        
> SerialPortLib|EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.inf
> diff --git a/EmulatorPkg/EmulatorPkg.fdf b/EmulatorPkg/EmulatorPkg.fdf
> index a002389..985a78e 100644
> --- a/EmulatorPkg/EmulatorPkg.fdf
> +++ b/EmulatorPkg/EmulatorPkg.fdf
> @@ -161,7 +161,7 @@ [FV.FvRecovery]
>  INF  MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
>  INF  MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
>  
> -INF  EmbeddedPkg/SerialDxe/SerialDxe.inf
> +INF  MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
>  INF  MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
>  INF  MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
>  INF  MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
> diff --git a/EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.c 
> b/EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.c
> index 792bd62..9978e51 100644
> --- a/EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.c
> +++ b/EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.c
> @@ -2,7 +2,7 @@
>    Serial Port Lib that thunks back to Emulator services to write to StdErr.
>    All read functions are stubed out.
>  
> -  Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
>    Portions copyright (c) 2011, Apple Inc. All rights reserved.<BR>
>    This program and the accompanying materials
>    are licensed and made available under the terms and conditions of the BSD 
> License
> @@ -116,3 +116,86 @@ SerialPortPoll (
>    return gEmuThunk->PollStdIn ();
>  }
>  
> +/**
> +  Sets the control bits on a serial device.
> +
> +  @param Control                Sets the bits of Control that are settable.
> +
> +  @retval RETURN_SUCCESS        The new control bits were set on the serial 
> device.
> +  @retval RETURN_UNSUPPORTED    The serial device does not support this 
> operation.
> +  @retval RETURN_DEVICE_ERROR   The serial device is not functioning 
> correctly.
> +
> +**/
> +RETURN_STATUS
> +EFIAPI
> +SerialPortSetControl (
> +  IN UINT32 Control
> +  )
> +{
> +  return RETURN_UNSUPPORTED;
> +}
> +
> +/**
> +  Retrieve the status of the control bits on a serial device.
> +
> +  @param Control                A pointer to return the current control 
> signals from the serial device.
> +
> +  @retval RETURN_SUCCESS        The control bits were read from the serial 
> device.
> +  @retval RETURN_UNSUPPORTED    The serial device does not support this 
> operation.
> +  @retval RETURN_DEVICE_ERROR   The serial device is not functioning 
> correctly.
> +
> +**/
> +RETURN_STATUS
> +EFIAPI
> +SerialPortGetControl (
> +  OUT UINT32 *Control
> +  )
> +{
> +  *Control = 0;
> +  if (!SerialPortPoll ()) {
> +    *Control = EFI_SERIAL_INPUT_BUFFER_EMPTY;
> +  }
> +  return RETURN_SUCCESS;
> +}
> +
> +/**
> +  Sets the baud rate, receive FIFO depth, transmit/receice time out, parity,
> +  data buts, and stop bits on a serial device.
> +
> +  @param BaudRate           The requested baud rate. A BaudRate value of 0 
> will use the
> +                            device's default interface speed.
> +  @param ReveiveFifoDepth   The requested depth of the FIFO on the receive 
> side of the
> +                            serial interface. A ReceiveFifoDepth value of 0 
> will use
> +                            the device's default FIFO depth.
> +  @param Timeout            The requested time out for a single character in 
> microseconds.
> +                            This timeout applies to both the transmit and 
> receive side of the
> +                            interface. A Timeout value of 0 will use the 
> device's default time
> +                            out value.
> +  @param Parity             The type of parity to use on this serial device. 
> A Parity value of
> +                            DefaultParity will use the device's default 
> parity value.
> +  @param DataBits           The number of data bits to use on the serial 
> device. A DataBits
> +                            vaule of 0 will use the device's default data 
> bit setting.
> +  @param StopBits           The number of stop bits to use on this serial 
> device. A StopBits
> +                            value of DefaultStopBits will use the device's 
> default number of
> +                            stop bits.
> +
> +  @retval RETURN_SUCCESS            The new attributes were set on the 
> serial device.
> +  @retval RETURN_UNSUPPORTED        The serial device does not support this 
> operation.
> +  @retval RETURN_INVALID_PARAMETER  One or more of the attributes has an 
> unsupported value.
> +  @retval RETURN_DEVICE_ERROR       The serial device is not functioning 
> correctly.
> +
> +**/
> +RETURN_STATUS
> +EFIAPI
> +SerialPortSetAttributes (
> +  IN OUT UINT64             *BaudRate,
> +  IN OUT UINT32             *ReceiveFifoDepth,
> +  IN OUT UINT32             *Timeout,
> +  IN OUT EFI_PARITY_TYPE    *Parity,
> +  IN OUT UINT8              *DataBits,
> +  IN OUT EFI_STOP_BITS_TYPE *StopBits
> +  )
> +{
> +  return RETURN_UNSUPPORTED;
> +}
> +
> -- 
> 1.9.5.msysgit.0
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to