X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=IntelFrameworkPkg%2FInclude%2FProtocol%2FAcpiSupport.h;h=278ef8e42b35764720e4c250af52a8378bcde61e;hp=bca149ebd5c0c18c239cf76525a4c672e985555c;hb=639a76d1912f8eb07e26b1a8f2393b682be65f2c;hpb=534b8251cc3c62a2a7cf90afb379692c1af2a35f diff --git a/IntelFrameworkPkg/Include/Protocol/AcpiSupport.h b/IntelFrameworkPkg/Include/Protocol/AcpiSupport.h index bca149ebd5..278ef8e42b 100644 --- a/IntelFrameworkPkg/Include/Protocol/AcpiSupport.h +++ b/IntelFrameworkPkg/Include/Protocol/AcpiSupport.h @@ -1,24 +1,24 @@ /** @file This protocol provides some basic services to support publishing ACPI system tables. The services handle many of the more mundane tasks that are required to publish a set of tables. The - services will do the following: - - Generate common tables. + services will: + - Generate common tables. - Update the table links. - Ensure that tables are properly aligned and use correct types of memory. - Update checksum values and IDs. - Complete the final installation of the tables. - Copyright (c) 2007, Intel Corporation - All rights reserved. This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.
+This program and the accompanying materials are licensed and made available under +the terms and conditions of the BSD License that accompanies this distribution. +The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php. + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. @par Revision Reference: - This Protocol is defined in Framework of ACPI Specification. + This Protocol is defined in Framework ACPI Specification. Version 0.9. **/ @@ -26,7 +26,7 @@ #ifndef _ACPI_SUPPORT_PROTOCOL_H_ #define _ACPI_SUPPORT_PROTOCOL_H_ -#include +#include typedef struct _EFI_ACPI_SUPPORT_PROTOCOL EFI_ACPI_SUPPORT_PROTOCOL; @@ -38,32 +38,6 @@ typedef struct _EFI_ACPI_SUPPORT_PROTOCOL EFI_ACPI_SUPPORT_PROTOCOL; 0xdbff9d55, 0x89b7, 0x46da, {0xbd, 0xdf, 0x67, 0x7d, 0x3d, 0xc0, 0x24, 0x1d } \ } -// -// Protocol Data Definitions -// -// -// ACPI Version bitmap definition: -// -// EFI_ACPI_TABLE_VERSION_1_0B - ACPI Version 1.0b -// EFI_ACPI_TABLE_VERSION_2_0 - ACPI Version 2.0 -// EFI_ACPI_TABLE_VERSION_3_0 - ACPI Version 3.0 -// EFI_ACPI_TABLE_VERSION_NONE - No ACPI Versions. This might be used -// to create memory-based operation regions or other information -// that is not part of the ACPI "tree" but must still be found -// in ACPI memory space and/or managed by the core ACPI driver. -// -// Note that EFI provides discrete GUIDs for each version of ACPI -// that is supported. It is expected that each EFI GUIDed -// version of ACPI will also have a corresponding bitmap -// definition. This allows maintenance of separate ACPI trees -// for each distinctly different version of ACPI. -// -#define EFI_ACPI_TABLE_VERSION UINT32 - -#define EFI_ACPI_TABLE_VERSION_NONE (1 << 0) -#define EFI_ACPI_TABLE_VERSION_1_0B (1 << 1) -#define EFI_ACPI_TABLE_VERSION_2_0 (1 << 2) -#define EFI_ACPI_TABLE_VERSION_3_0 (1 << 3) // // Protocol Member Functions @@ -74,9 +48,9 @@ typedef struct _EFI_ACPI_SUPPORT_PROTOCOL EFI_ACPI_SUPPORT_PROTOCOL; @param This A pointer to the EFI_ACPI_SUPPORT_PROTOCOL instance. @param Index The zero-based index of the table to retrieve. - @param Table Pointer for returning the table buffer. + @param Table The pointer for returning the table buffer. @param Version Updated with the ACPI versions to which this table belongs. - @param Handle Pointer for identifying the table. + @param Handle The pointer for identifying the table. @retval EFI_SUCCESS The function completed successfully. @retval EFI_NOT_FOUND The requested index is too large and a table was not found. @@ -96,11 +70,11 @@ EFI_STATUS Used to add, remove, or update ACPI tables. @param This A pointer to the EFI_ACPI_SUPPORT_PROTOCOL instance. - @param Table Pointer to the new table to add or update. + @param Table The pointer to the new table to add or update. @param Checksum If TRUE, indicates that the checksum should be calculated for this table. @param Version Indicates to which version(s) of ACPI the table should be added. - @param Pointer to the handle of the table to remove or update. + @param Handle The pointer to the handle of the table to remove or update. @retval EFI_SUCCESS The function completed successfully. @retval EFI_INVALID_PARAMETER *Handle was zero and Table was NULL. @@ -127,7 +101,7 @@ EFI_STATUS EFI_ACPI_SUPPORT_PROTOCOL.SetAcpiTable(). @param This A pointer to the EFI_ACPI_SUPPORT_PROTOCOL instance. - @param Version Indicates to which version(s) of ACPI that the table should be published. + @param Version Indicates to which version(s) of ACPI the table should be published. @retval EFI_SUCCESS The function completed successfully. @retval EFI_ABORTED An error occurred and the function could not complete successfully. @@ -147,20 +121,21 @@ EFI_STATUS This protocol provides some basic services to support publishing ACPI system tables. The services handle many of the more mundane tasks that are required to publish a set of tables. - - @param GetAcpiTable - Returns a table specified by an index if it exists. - - @param SetAcpiTable - Adds, removes, or updates ACPI tables - - @param PublishTables - Publishes the ACPI tables. - **/ struct _EFI_ACPI_SUPPORT_PROTOCOL { + /// + /// Returns a table specified by an index if it exists. + /// EFI_ACPI_GET_ACPI_TABLE GetAcpiTable; + + /// + /// Adds, removes, or updates ACPI tables. + /// EFI_ACPI_SET_ACPI_TABLE SetAcpiTable; + + /// + /// Publishes the ACPI tables. + /// EFI_ACPI_PUBLISH_TABLES PublishTables; };