Home | History | Annotate | Download | only in Library
      1 /** @file
      2   Provide FSP wrapper platform related function.
      3 
      4   Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
      5   This program and the accompanying materials
      6   are licensed and made available under the terms and conditions of the BSD License
      7   which accompanies this distribution.  The full text of the license may be found at
      8   http://opensource.org/licenses/bsd-license.php.
      9 
     10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     12 
     13 **/
     14 
     15 #ifndef __FSP_WRAPPER_PLATFORM_LIB_H__
     16 #define __FSP_WRAPPER_PLATFORM_LIB_H__
     17 
     18 /**
     19   This function overrides the default configurations in the FSP-M UPD data region.
     20 
     21   @param[in,out] FspUpdRgnPtr   A pointer to the UPD data region data strcture.
     22 
     23 **/
     24 VOID
     25 EFIAPI
     26 UpdateFspmUpdData (
     27   IN OUT VOID        *FspUpdRgnPtr
     28   );
     29 
     30 /**
     31   This function overrides the default configurations in the FSP-S UPD data region.
     32 
     33   @param[in,out] FspUpdRgnPtr   A pointer to the UPD data region data strcture.
     34 
     35 **/
     36 VOID
     37 EFIAPI
     38 UpdateFspsUpdData (
     39   IN OUT VOID        *FspUpdRgnPtr
     40   );
     41 
     42 /**
     43   Update TempRamExit parameter.
     44 
     45   @note At this point, memory is ready, PeiServices are available to use.
     46 
     47   @return TempRamExit parameter.
     48 **/
     49 VOID *
     50 EFIAPI
     51 UpdateTempRamExitParam (
     52   VOID
     53   );
     54 
     55 /**
     56   Get S3 PEI memory information.
     57 
     58   @note At this point, memory is ready, and PeiServices are available to use.
     59   Platform can get some data from SMRAM directly.
     60 
     61   @param[out] S3PeiMemSize  PEI memory size to be installed in S3 phase.
     62   @param[out] S3PeiMemBase  PEI memory base to be installed in S3 phase.
     63 
     64   @return If S3 PEI memory information is got successfully.
     65 **/
     66 EFI_STATUS
     67 EFIAPI
     68 GetS3MemoryInfo (
     69   OUT UINT64               *S3PeiMemSize,
     70   OUT EFI_PHYSICAL_ADDRESS *S3PeiMemBase
     71   );
     72 
     73 /**
     74   Perform platform related reset in FSP wrapper.
     75 
     76   This function will reset the system with requested ResetType.
     77 
     78   @param[in] FspStatusResetType  The type of reset the platform has to perform.
     79 **/
     80 VOID
     81 EFIAPI
     82 CallFspWrapperResetSystem (
     83   IN UINT32    FspStatusResetType
     84   );
     85 
     86 #endif
     87