TianoCore EDK2 master
Loading...
Searching...
No Matches
GdbSerialDebugPortLib.c File Reference

Go to the source code of this file.

Functions

RETURN_STATUS EFIAPI GdbSerialLibDebugPortConstructor (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
 
RETURN_STATUS EFIAPI GdbSerialInit (IN UINT64 BaudRate, IN UINT8 Parity, IN UINT8 DataBits, IN UINT8 StopBits)
 
BOOLEAN EFIAPI GdbIsCharAvailable (VOID)
 
CHAR8 EFIAPI GdbGetChar (VOID)
 
VOID EFIAPI GdbPutChar (IN CHAR8 Char)
 
VOID GdbPutString (IN CHAR8 *String)
 

Variables

EFI_DEBUGPORT_PROTOCOLgDebugPort = NULL
 
UINT32 gTimeOut = 0
 

Detailed Description

Basic serial IO abstraction for GDB

Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file GdbSerialDebugPortLib.c.

Function Documentation

◆ GdbGetChar()

CHAR8 EFIAPI GdbGetChar ( VOID  )

Get a character from GDB. This function must be able to run in interrupt context.

Returns
A character from GDB

Definition at line 112 of file GdbSerialDebugPortLib.c.

◆ GdbIsCharAvailable()

BOOLEAN EFIAPI GdbIsCharAvailable ( VOID  )

Check to see if a character is available from GDB. Do not read the character as that is done via GdbGetChar().

Returns
TRUE - Character available
FALSE - Character not available

Definition at line 93 of file GdbSerialDebugPortLib.c.

◆ GdbPutChar()

VOID EFIAPI GdbPutChar ( IN CHAR8  Char)

Send a character to GDB. This function must be able to run in interrupt context.

Parameters
CharSend a character to GDB

Definition at line 137 of file GdbSerialDebugPortLib.c.

◆ GdbPutString()

VOID GdbPutString ( IN CHAR8 *  String)

Send an ASCII string to GDB. This function must be able to run in interrupt context.

Parameters
StringSend a string to GDB

Definition at line 160 of file GdbSerialDebugPortLib.c.

◆ GdbSerialInit()

RETURN_STATUS EFIAPI GdbSerialInit ( IN UINT64  BaudRate,
IN UINT8  Parity,
IN UINT8  DataBits,
IN UINT8  StopBits 
)

Sets the baud rate, receive FIFO depth, transmit/receive time out, parity, data buts, and stop bits on a serial device. This call is optional as the serial port will be set up with defaults base on PCD values.

Parameters
BaudRateThe requested baud rate. A BaudRate value of 0 will use the device's default interface speed.
ParityThe type of parity to use on this serial device. A Parity value of DefaultParity will use the device's default parity value.
DataBitsThe number of data bits to use on the serial device. A DataBits value of 0 will use the device's default data bit setting.
StopBitsThe 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.
Return values
EFI_SUCCESSThe device was configured.
EFI_DEVICE_ERRORThe serial device could not be configured.

Definition at line 70 of file GdbSerialDebugPortLib.c.

◆ GdbSerialLibDebugPortConstructor()

RETURN_STATUS EFIAPI GdbSerialLibDebugPortConstructor ( IN EFI_HANDLE  ImageHandle,
IN EFI_SYSTEM_TABLE SystemTable 
)

The constructor function initializes the UART.

Parameters
ImageHandleThe firmware allocated handle for the EFI image.
SystemTableA pointer to the EFI System Table.
Return values
EFI_SUCCESSThe constructor always returns EFI_SUCCESS.

Definition at line 33 of file GdbSerialDebugPortLib.c.

Variable Documentation

◆ gDebugPort

Definition at line 19 of file GdbSerialDebugPortLib.c.

◆ gTimeOut

UINT32 gTimeOut = 0

Definition at line 20 of file GdbSerialDebugPortLib.c.