DynamicTablesPkg[all]  1.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
SsdtSerialPortFixupLib.h File Reference

Functions

EFI_STATUS EFIAPI BuildSsdtSerialPortTable (IN CONST CM_STD_OBJ_ACPI_TABLE_INFO *AcpiTableInfo, IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfo, IN CONST CHAR8 *Name, IN CONST UINT64 Uid, OUT EFI_ACPI_DESCRIPTION_HEADER **Table)
 
EFI_STATUS EFIAPI FreeSsdtSerialPortTable (IN EFI_ACPI_DESCRIPTION_HEADER *Table)
 
EFI_STATUS EFIAPI ValidateSerialPortInfo (IN CONST CM_ARM_SERIAL_PORT_INFO *SerialPortInfoTable, IN UINT32 SerialPortCount)
 

Detailed Description

Ssdt Serial Port Fixup Library

Copyright (c) 2020, Arm Limited. All rights reserved.

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

Function Documentation

EFI_STATUS EFIAPI BuildSsdtSerialPortTable ( IN CONST CM_STD_OBJ_ACPI_TABLE_INFO AcpiTableInfo,
IN CONST CM_ARM_SERIAL_PORT_INFO SerialPortInfo,
IN CONST CHAR8 *  Name,
IN CONST UINT64  Uid,
OUT EFI_ACPI_DESCRIPTION_HEADER **  Table 
)

Build a SSDT table describing the input serial port.

The table created by this function must be freed by FreeSsdtSerialTable.

Parameters
[in]AcpiTableInfoPointer to the ACPI table information.
[in]SerialPortInfoSerial port to describe in the SSDT table.
[in]NameThe Name to give to the Device. Must be a NULL-terminated ASL NameString e.g.: "DEV0", "DV15.DEV0", etc.
[in]UidUID for the Serial Port.
[out]TableIf success, pointer to the created SSDT table.
Return values
EFI_SUCCESSTable generated successfully.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDCould not find information.
EFI_OUT_OF_RESOURCESCould not allocate memory.
EFI_STATUS EFIAPI FreeSsdtSerialPortTable ( IN EFI_ACPI_DESCRIPTION_HEADER *  Table)

Free an SSDT table previously created by the BuildSsdtSerialTable function.

Parameters
[in]TablePointer to a SSDT table allocated by the BuildSsdtSerialTable function.
Return values
EFI_SUCCESSSuccess.
EFI_STATUS EFIAPI ValidateSerialPortInfo ( IN CONST CM_ARM_SERIAL_PORT_INFO SerialPortInfoTable,
IN UINT32  SerialPortCount 
)

Validate the Serial Port Information.

Parameters
[in]SerialPortInfoTableTable of CM_ARM_SERIAL_PORT_INFO.
[in]SerialPortCountCount of SerialPort in the table.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERInvalid parameter.