You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
3.4 KiB
80 lines
3.4 KiB
4 years ago
|
/** @file
|
||
|
ACPI debug port 2 table definition, defined at
|
||
|
Microsoft DebugPort2Specification.
|
||
|
|
||
|
Copyright (c) 2012 - 2018, Intel Corporation. All rights reserved.<BR>
|
||
|
Copyright (c) 2012 - 2016, ARM Limited. All rights reserved.<BR>
|
||
|
This program and the accompanying materials
|
||
|
are licensed and made available under the terms and conditions of the BSD License
|
||
|
which accompanies this distribution. The full text of the license may be found at
|
||
|
http://opensource.org/licenses/bsd-license.php
|
||
|
|
||
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||
|
|
||
|
**/
|
||
|
|
||
|
|
||
|
#ifndef _DEBUG_PORT_2_TABLE_H_
|
||
|
#define _DEBUG_PORT_2_TABLE_H_
|
||
|
|
||
|
#include <IndustryStandard/Acpi.h>
|
||
|
|
||
|
//
|
||
|
// Ensure proper structure formats
|
||
|
//
|
||
|
#pragma pack(1)
|
||
|
|
||
|
//
|
||
|
// Debug Device Information structure.
|
||
|
//
|
||
|
typedef struct {
|
||
|
UINT8 Revision;
|
||
|
UINT16 Length;
|
||
|
UINT8 NumberofGenericAddressRegisters;
|
||
|
UINT16 NameSpaceStringLength;
|
||
|
UINT16 NameSpaceStringOffset;
|
||
|
UINT16 OemDataLength;
|
||
|
UINT16 OemDataOffset;
|
||
|
UINT16 PortType;
|
||
|
UINT16 PortSubtype;
|
||
|
UINT8 Reserved[2];
|
||
|
UINT16 BaseAddressRegisterOffset;
|
||
|
UINT16 AddressSizeOffset;
|
||
|
} EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT;
|
||
|
|
||
|
#define EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT_REVISION 0x00
|
||
|
|
||
|
#define EFI_ACPI_DBG2_PORT_TYPE_SERIAL 0x8000
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_FULL_16550 0x0000
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_16550_SUBSET_COMPATIBLE_WITH_MS_DBGP_SPEC 0x0001
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_ARM_PL011_UART 0x0003
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_ARM_SBSA_GENERIC_UART_2X 0x000d
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_ARM_SBSA_GENERIC_UART 0x000e
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_DCC 0x000f
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_BCM2835_UART 0x0010
|
||
|
#define EFI_ACPI_DBG2_PORT_TYPE_1394 0x8001
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_1394_STANDARD 0x0000
|
||
|
#define EFI_ACPI_DBG2_PORT_TYPE_USB 0x8002
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_USB_XHCI 0x0000
|
||
|
#define EFI_ACPI_DBG2_PORT_SUBTYPE_USB_EHCI 0x0001
|
||
|
#define EFI_ACPI_DBG2_PORT_TYPE_NET 0x8003
|
||
|
|
||
|
//
|
||
|
// Debug Port 2 Table definition.
|
||
|
//
|
||
|
typedef struct {
|
||
|
EFI_ACPI_DESCRIPTION_HEADER Header;
|
||
|
UINT32 OffsetDbgDeviceInfo;
|
||
|
UINT32 NumberDbgDeviceInfo;
|
||
|
} EFI_ACPI_DEBUG_PORT_2_DESCRIPTION_TABLE;
|
||
|
|
||
|
#pragma pack()
|
||
|
|
||
|
//
|
||
|
// DBG2 Revision (defined in spec)
|
||
|
//
|
||
|
#define EFI_ACPI_DEBUG_PORT_2_TABLE_REVISION 0x00
|
||
|
|
||
|
#endif
|