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