]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/IndustryStandard/HighPrecisionEventTimerTable.h
ShellPkg/Dp: Initialize summary date when run DP
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / HighPrecisionEventTimerTable.h
CommitLineData
42eedea9 1/** @file\r
000f6a28 2 ACPI high precision event timer table definition, at www.intel.com\r
568eb0cb 3 Specification name is IA-PC HPET (High Precision Event Timers) Specification.\r
4 \r
9df063a0
HT
5 Copyright (c) 2007 - 2008, Intel Corporation. All rights reserved.<BR>\r
6 This program and the accompanying materials \r
568eb0cb 7 are licensed and made available under the terms and conditions of the BSD License \r
8 which accompanies this distribution. The full text of the license may be found at \r
9 http://opensource.org/licenses/bsd-license.php \r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
13**/\r
14\r
15#ifndef _HIGH_PRECISION_EVENT_TIMER_TABLE_H_\r
16#define _HIGH_PRECISION_EVENT_TIMER_TABLE_H_\r
17\r
ecc40942 18#include <IndustryStandard/Acpi.h>\r
19\r
568eb0cb 20//\r
21// Ensure proper structure formats\r
22//\r
23#pragma pack(1)\r
1bc5d021 24\r
c9734786
MH
25///\r
26/// HPET Event Timer Block ID described in IA-PC HPET Specification, 3.2.4.\r
27///\r
28typedef union {\r
29 struct {\r
30 UINT32 Revision : 8;\r
31 UINT32 NumberOfTimers : 5;\r
32 UINT32 CounterSize : 1;\r
33 UINT32 Reserved : 1;\r
34 UINT32 LegacyRoute : 1;\r
35 UINT32 VendorId : 16;\r
36 } Bits;\r
37 UINT32 Uint32;\r
38} EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_BLOCK_ID;\r
39\r
40\r
1bc5d021 41///\r
42/// High Precision Event Timer Table header definition.\r
43///\r
568eb0cb 44typedef struct {\r
45 EFI_ACPI_DESCRIPTION_HEADER Header;\r
46 UINT32 EventTimerBlockId;\r
47 EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddressLower32Bit;\r
48 UINT8 HpetNumber;\r
49 UINT16 MainCounterMinimumClockTickInPeriodicMode;\r
50 UINT8 PageProtectionAndOemAttribute;\r
51} EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER;\r
52\r
1bc5d021 53///\r
54/// HPET Revision (defined in spec)\r
55///\r
568eb0cb 56#define EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_REVISION 0x01\r
57\r
58//\r
59// Page protection setting\r
60// Values 3 through 15 are reserved for use by the specification\r
61//\r
62#define EFI_ACPI_NO_PAGE_PROTECTION 0\r
63#define EFI_ACPI_4KB_PAGE_PROTECTION 1\r
64#define EFI_ACPI_64KB_PAGE_PROTECTION 2\r
65\r
766f4bc1 66#pragma pack()\r
67\r
568eb0cb 68#endif\r