2 ACPI high precision event timer table definition, at www.intel.com
3 Specification name is IA-PC HPET (High Precision Event Timers) Specification.
5 Copyright (c) 2007 - 2018, 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
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.
15 #ifndef _HIGH_PRECISION_EVENT_TIMER_TABLE_H_
16 #define _HIGH_PRECISION_EVENT_TIMER_TABLE_H_
18 #include <IndustryStandard/Acpi.h>
21 // Ensure proper structure formats
26 /// HPET Event Timer Block ID described in IA-PC HPET Specification, 3.2.4.
31 UINT32 NumberOfTimers
: 5;
32 UINT32 CounterSize
: 1;
34 UINT32 LegacyRoute
: 1;
38 } EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_BLOCK_ID
;
42 /// High Precision Event Timer Table header definition.
45 EFI_ACPI_DESCRIPTION_HEADER Header
;
46 UINT32 EventTimerBlockId
;
47 EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddressLower32Bit
;
49 UINT16 MainCounterMinimumClockTickInPeriodicMode
;
50 UINT8 PageProtectionAndOemAttribute
;
51 } EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER
;
54 /// HPET Revision (defined in spec)
56 #define EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_REVISION 0x01
59 // Page protection setting
60 // Values 3 through 15 are reserved for use by the specification
62 #define EFI_ACPI_NO_PAGE_PROTECTION 0
63 #define EFI_ACPI_4KB_PAGE_PROTECTION 1
64 #define EFI_ACPI_64KB_PAGE_PROTECTION 2