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