TianoCore EDK2 master
|
#include <Uefi.h>
#include <Library/GdbSerialLib.h>
#include <Library/PcdLib.h>
#include <Library/IoLib.h>
#include <Library/DebugLib.h>
Go to the source code of this file.
Macros | |
#define | BAUD_LOW_OFFSET 0x00 |
#define | BAUD_HIGH_OFFSET 0x01 |
#define | IER_OFFSET 0x01 |
#define | LCR_SHADOW_OFFSET 0x01 |
#define | FCR_SHADOW_OFFSET 0x02 |
#define | IR_CONTROL_OFFSET 0x02 |
#define | FCR_OFFSET 0x02 |
#define | EIR_OFFSET 0x02 |
#define | BSR_OFFSET 0x03 |
#define | LCR_OFFSET 0x03 |
#define | MCR_OFFSET 0x04 |
#define | LSR_OFFSET 0x05 |
#define | MSR_OFFSET 0x06 |
#define | LSR_TXRDY 0x20U |
#define | LSR_RXDA 0x01U |
#define | DLAB 0x01U |
#define | ENABLE_FIFO 0x01U |
#define | CLEAR_FIFOS 0x06U |
Functions | |
RETURN_STATUS EFIAPI | GdbSerialLibConstructor (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 | |
UINTN | gPort |
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 GdbSerialLib.c.
#define BAUD_HIGH_OFFSET 0x01 |
Definition at line 20 of file GdbSerialLib.c.
#define BAUD_LOW_OFFSET 0x00 |
Definition at line 19 of file GdbSerialLib.c.
#define BSR_OFFSET 0x03 |
Definition at line 27 of file GdbSerialLib.c.
#define CLEAR_FIFOS 0x06U |
Definition at line 40 of file GdbSerialLib.c.
#define DLAB 0x01U |
Definition at line 38 of file GdbSerialLib.c.
#define EIR_OFFSET 0x02 |
Definition at line 26 of file GdbSerialLib.c.
#define ENABLE_FIFO 0x01U |
Definition at line 39 of file GdbSerialLib.c.
#define FCR_OFFSET 0x02 |
Definition at line 25 of file GdbSerialLib.c.
#define FCR_SHADOW_OFFSET 0x02 |
Definition at line 23 of file GdbSerialLib.c.
#define IER_OFFSET 0x01 |
Definition at line 21 of file GdbSerialLib.c.
#define IR_CONTROL_OFFSET 0x02 |
Definition at line 24 of file GdbSerialLib.c.
#define LCR_OFFSET 0x03 |
Definition at line 28 of file GdbSerialLib.c.
#define LCR_SHADOW_OFFSET 0x01 |
Definition at line 22 of file GdbSerialLib.c.
#define LSR_OFFSET 0x05 |
Definition at line 30 of file GdbSerialLib.c.
#define LSR_RXDA 0x01U |
Definition at line 37 of file GdbSerialLib.c.
#define LSR_TXRDY 0x20U |
Definition at line 36 of file GdbSerialLib.c.
#define MCR_OFFSET 0x04 |
Definition at line 29 of file GdbSerialLib.c.
#define MSR_OFFSET 0x06 |
Definition at line 31 of file GdbSerialLib.c.
CHAR8 EFIAPI GdbGetChar | ( | VOID | ) |
Get a character from GDB. This function must be able to run in interrupt context.
Definition at line 178 of file GdbSerialLib.c.
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().
Definition at line 159 of file GdbSerialLib.c.
VOID EFIAPI GdbPutChar | ( | IN CHAR8 | Char | ) |
Send a character to GDB. This function must be able to run in interrupt context.
Char | Send a character to GDB |
Definition at line 206 of file GdbSerialLib.c.
VOID GdbPutString | ( | IN CHAR8 * | String | ) |
Send an ASCII string to GDB. This function must be able to run in interrupt context.
String | Send a string to GDB |
Definition at line 231 of file GdbSerialLib.c.
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.
BaudRate | The requested baud rate. A BaudRate value of 0 will use the device's default interface speed. |
Parity | The type of parity to use on this serial device. A Parity value of DefaultParity will use the device's default parity value. |
DataBits | The number of data bits to use on the serial device. A DataBits value of 0 will use the device's default data bit setting. |
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. |
EFI_SUCCESS | The device was configured. |
EFI_DEVICE_ERROR | The serial device could not be configured. |
Definition at line 97 of file GdbSerialLib.c.
RETURN_STATUS EFIAPI GdbSerialLibConstructor | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_SYSTEM_TABLE * | SystemTable | ||
) |
The constructor function initializes the UART.
ImageHandle | The firmware allocated handle for the EFI image. |
SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The constructor always returns EFI_SUCCESS. |
Definition at line 56 of file GdbSerialLib.c.
UINTN gPort |
Definition at line 43 of file GdbSerialLib.c.