]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Hpet/Hpet.aslc
ecbe51e6b06f44ea379fcdc8f2679999b8f54d93
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / AcpiTablesPCAT / Hpet / Hpet.aslc
1 /*++
2
3 Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7
8
9 Module Name:
10
11 Hpet.c
12
13 Abstract:
14
15 This file contains a structure definition for the ACPI HPET Table.
16 --*/
17
18 //
19 // Statements that include other files
20 //
21 #ifdef ECP_FLAG
22 #include <Tiano.h>
23 #endif
24 #include <Hpet.h>
25 #include "AcpiTablePlatform.h"
26
27 // Hpet Table
28 EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER HPET = {
29 {
30 EFI_ACPI_3_0_HIGH_PRECISION_EVENT_TIMER_TABLE_SIGNATURE,
31 sizeof (EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER),
32 EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_REVISION,
33 0, // to make sum of entire table == 0
34 EFI_ACPI_OEM_ID, // OEMID is a 6 bytes long field
35 EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long)
36 EFI_ACPI_OEM_REVISION, // OEM revision
37 EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID
38 EFI_ACPI_CREATOR_REVISION // ASL compiler revision number
39 },
40 0x0, // EventTimerBlockId
41 {
42 0x00, // Address_Space_ID = System Memory
43 0x40, // Register_Bit_Width = 32 bits, mentioned about write failures when in 64bit in SCU HAS
44 0x00, // Register_Bit_offset
45 0x00, // Dword access
46 HPET_BASE_ADDRESS, // Base addresse of HPET
47 },
48 0x0, // Only HPET's _UID in Namespace
49 MAIN_COUNTER_MIN_PERIODIC_CLOCK_TICKS,
50 0x0
51 };
52
53 VOID*
54 ReferenceAcpiTable (
55 VOID
56 )
57 {
58 //
59 // Reference the table being generated to prevent the optimizer from
60 // removing the data structure from the executable
61 //
62 return (VOID*)&HPET;
63 }