]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/IndustryStandard/HighPrecisionEventTimerTable.h
Use doxygen comment style for document entity such as struct, enum, variable that...
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / HighPrecisionEventTimerTable.h
1 /** @file
2 ACPI high precision event timer table definition, defined at
3 ftp://download.intel.com/labs/platcomp/hpet/download/hpetspec098a.pdf.
4 Specification name is IA-PC HPET (High Precision Event Timers) Specification.
5
6 Copyright (c) 2007, Intel Corporation
7 All rights reserved. This program and the accompanying materials
8 are licensed and made available under the terms and conditions of the BSD License
9 which accompanies this distribution. The full text of the license may be found at
10 http://opensource.org/licenses/bsd-license.php
11
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14 **/
15
16 #ifndef _HIGH_PRECISION_EVENT_TIMER_TABLE_H_
17 #define _HIGH_PRECISION_EVENT_TIMER_TABLE_H_
18
19 #include <IndustryStandard/Acpi.h>
20
21 //
22 // Ensure proper structure formats
23 //
24 #pragma pack(1)
25
26 ///
27 /// High Precision Event Timer Table header definition.
28 ///
29 typedef struct {
30 EFI_ACPI_DESCRIPTION_HEADER Header;
31 UINT32 EventTimerBlockId;
32 EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddressLower32Bit;
33 UINT8 HpetNumber;
34 UINT16 MainCounterMinimumClockTickInPeriodicMode;
35 UINT8 PageProtectionAndOemAttribute;
36 } EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER;
37
38 ///
39 /// HPET Revision (defined in spec)
40 ///
41 #define EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_REVISION 0x01
42
43 //
44 // Page protection setting
45 // Values 3 through 15 are reserved for use by the specification
46 //
47 #define EFI_ACPI_NO_PAGE_PROTECTION 0
48 #define EFI_ACPI_4KB_PAGE_PROTECTION 1
49 #define EFI_ACPI_64KB_PAGE_PROTECTION 2
50
51 #pragma pack()
52
53 #endif