From 18c4970711ac6e6f33b920f7d0b56f498da2c4e8 Mon Sep 17 00:00:00 2001 From: jyao1 Date: Thu, 27 Sep 2012 06:33:35 +0000 Subject: Add debug port and debug port 2 table. signed off by: jiewen.yao@intel.com reviewed by: liming.gao@intel.com git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13750 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Include/IndustryStandard/DebugPort2Table.h | 73 +++++++++++++++++++++++ MdePkg/Include/IndustryStandard/DebugPortTable.h | 50 ++++++++++++++++ 2 files changed, 123 insertions(+) create mode 100644 MdePkg/Include/IndustryStandard/DebugPort2Table.h create mode 100644 MdePkg/Include/IndustryStandard/DebugPortTable.h (limited to 'MdePkg/Include/IndustryStandard') diff --git a/MdePkg/Include/IndustryStandard/DebugPort2Table.h b/MdePkg/Include/IndustryStandard/DebugPort2Table.h new file mode 100644 index 0000000000..b50aff6d0f --- /dev/null +++ b/MdePkg/Include/IndustryStandard/DebugPort2Table.h @@ -0,0 +1,73 @@ +/** @file + ACPI debug port 2 table definition, defined at + Microsoft DebugPort2Specification. + +Copyright (c) 2012, Intel Corporation. All rights reserved.
+This software and associated documentation (if any) is furnished +under a license and may only be used or copied in accordance +with the terms of the license. Except as permitted by such +license, no part of this software or documentation may be +reproduced, stored in a retrieval system, or transmitted in any +form or by any means without the express written consent of +Intel Corporation. + +**/ + + +#ifndef _DEBUG_PORT_2_TABLE_H_ +#define _DEBUG_PORT_2_TABLE_H_ + +#include + +// +// 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_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 diff --git a/MdePkg/Include/IndustryStandard/DebugPortTable.h b/MdePkg/Include/IndustryStandard/DebugPortTable.h new file mode 100644 index 0000000000..779082996c --- /dev/null +++ b/MdePkg/Include/IndustryStandard/DebugPortTable.h @@ -0,0 +1,50 @@ +/** @file + ACPI debug port table definition, defined at + Microsoft DebugPortSpecification. + +Copyright (c) 2012, Intel Corporation. All rights reserved.
+This software and associated documentation (if any) is furnished +under a license and may only be used or copied in accordance +with the terms of the license. Except as permitted by such +license, no part of this software or documentation may be +reproduced, stored in a retrieval system, or transmitted in any +form or by any means without the express written consent of +Intel Corporation. + +**/ + + +#ifndef _DEBUG_PORT_TABLE_H_ +#define _DEBUG_PORT_TABLE_H_ + +#include + +// +// Ensure proper structure formats +// +#pragma pack(1) + +// +// Debug Port Table definition. +// +typedef struct { + EFI_ACPI_DESCRIPTION_HEADER Header; + UINT8 InterfaceType; + UINT8 Reserved_37[3]; + EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddress; +} EFI_ACPI_DEBUG_PORT_DESCRIPTION_TABLE; + +#pragma pack() + +// +// DBGP Revision (defined in spec) +// +#define EFI_ACPI_DEBUG_PORT_TABLE_REVISION 0x01 + +// +// Interface Type +// +#define EFI_ACPI_DBGP_INTERFACE_TYPE_FULL_16550 0 +#define EFI_ACPI_DBGP_INTERFACE_TYPE_16550_SUBSET_COMPATIBLE_WITH_MS_DBGP_SPEC 1 + +#endif -- cgit v1.2.3