Home | History | Annotate | Download | only in AcpiS3SaveDxe
      1 /** @file
      2   This is an implementation of the ACPI S3 Save protocol.  This is defined in
      3   S3 boot path specification 0.9.
      4 
      5 Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
      6 
      7 This program and the accompanying materials
      8 are licensed and made available under the terms and conditions
      9 of the BSD License which accompanies this distribution.  The
     10 full text of the license may be found at
     11 http://opensource.org/licenses/bsd-license.php
     12 
     13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     14 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     15 
     16 **/
     17 
     18 #ifndef _ACPI_S3_SAVE_H_
     19 #define _ACPI_S3_SAVE_H_
     20 
     21 /**
     22   Gets the buffer of legacy memory below 1 MB
     23   This function is to get the buffer in legacy memory below 1MB that is required during S3 resume.
     24 
     25   @param This           A pointer to the EFI_ACPI_S3_SAVE_PROTOCOL instance.
     26   @param Size           The returned size of legacy memory below 1 MB.
     27 
     28   @retval EFI_SUCCESS           Size is successfully returned.
     29   @retval EFI_INVALID_PARAMETER The pointer Size is NULL.
     30 
     31 **/
     32 EFI_STATUS
     33 EFIAPI
     34 LegacyGetS3MemorySize (
     35   IN  EFI_ACPI_S3_SAVE_PROTOCOL    * This,
     36   OUT UINTN                        * Size
     37   );
     38 
     39 /**
     40   Prepares all information that is needed in the S3 resume boot path.
     41 
     42   Allocate the resources or prepare informations and save in ACPI variable set for S3 resume boot path
     43 
     44   @param This                 A pointer to the EFI_ACPI_S3_SAVE_PROTOCOL instance.
     45   @param LegacyMemoryAddress  The base address of legacy memory.
     46 
     47   @retval EFI_NOT_FOUND         Some necessary information cannot be found.
     48   @retval EFI_SUCCESS           All information was saved successfully.
     49   @retval EFI_OUT_OF_RESOURCES  Resources were insufficient to save all the information.
     50   @retval EFI_INVALID_PARAMETER The memory range is not located below 1 MB.
     51 
     52 **/
     53 EFI_STATUS
     54 EFIAPI
     55 S3Ready (
     56   IN EFI_ACPI_S3_SAVE_PROTOCOL     *This,
     57   IN VOID                          *LegacyMemoryAddress
     58   );
     59 #endif
     60