/*++ Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved SPDX-License-Identifier: BSD-2-Clause-Patent Module Name: Hpet.c Abstract: This file contains a structure definition for the ACPI HPET Table. --*/ // // Statements that include other files // #ifdef ECP_FLAG #include #endif #include #include "AcpiTablePlatform.h" // Hpet Table EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER HPET = { { EFI_ACPI_3_0_HIGH_PRECISION_EVENT_TIMER_TABLE_SIGNATURE, sizeof (EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER), EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_REVISION, 0, // to make sum of entire table == 0 EFI_ACPI_OEM_ID, // OEMID is a 6 bytes long field EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long) EFI_ACPI_OEM_REVISION, // OEM revision EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID EFI_ACPI_CREATOR_REVISION // ASL compiler revision number }, 0x0, // EventTimerBlockId { 0x00, // Address_Space_ID = System Memory 0x40, // Register_Bit_Width = 32 bits, mentioned about write failures when in 64bit in SCU HAS 0x00, // Register_Bit_offset 0x00, // Dword access HPET_BASE_ADDRESS, // Base addresse of HPET }, 0x0, // Only HPET's _UID in Namespace MAIN_COUNTER_MIN_PERIODIC_CLOCK_TICKS, 0x0 }; VOID* ReferenceAcpiTable ( VOID ) { // // Reference the table being generated to prevent the optimizer from // removing the data structure from the executable // return (VOID*)&HPET; }