mirror of https://github.com/acidanthera/audk.git
86 lines
3.2 KiB
C
86 lines
3.2 KiB
C
|
/** @file
|
||
|
This file declares Graphics PPI.
|
||
|
This PPI is the main interface exposed by the Graphics PEIM to be used by the
|
||
|
other firmware modules.
|
||
|
|
||
|
Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
|
||
|
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.
|
||
|
|
||
|
@par Revision Reference:
|
||
|
This PPI is introduced in PI Version 1.4.
|
||
|
|
||
|
**/
|
||
|
|
||
|
#ifndef __PEI_GRAPHICS_PPI_H__
|
||
|
#define __PEI_GRAPHICS_PPI_H__
|
||
|
|
||
|
#include <Protocol/GraphicsOutput.h>
|
||
|
|
||
|
#define EFI_PEI_GRAPHICS_PPI_GUID \
|
||
|
{ \
|
||
|
0x6ecd1463, 0x4a4a, 0x461b, { 0xaf, 0x5f, 0x5a, 0x33, 0xe3, 0xb2, 0x16, 0x2b } \
|
||
|
}
|
||
|
|
||
|
typedef struct _EFI_PEI_GRAPHICS_PPI EFI_PEI_GRAPHICS_PPI;
|
||
|
|
||
|
/**
|
||
|
The GraphicsPpiInit initializes the graphics subsystem in phases.
|
||
|
|
||
|
@param[in] GraphicsPolicyPtr GraphicsPolicyPtr points to a configuration data
|
||
|
block of policy settings required by Graphics PEIM.
|
||
|
|
||
|
@retval EFI_SUCCESS The invocation was successful.
|
||
|
@retval EFI_INVALID_PARAMETER The phase parameter is not valid.
|
||
|
@retval EFI_NOT_ABORTED The stages was not called in the proper order.
|
||
|
@retval EFI_NOT_FOUND The PeiGraphicsPlatformPolicyPpi is not located.
|
||
|
@retval EFI_DEVICE_ERROR The initialization failed due to device error.
|
||
|
@retval EFI_NOT_READY The previous init stage is still in progress and not
|
||
|
ready for the current initialization phase yet. The
|
||
|
platform code should call this again sometime later.
|
||
|
**/
|
||
|
typedef
|
||
|
EFI_STATUS
|
||
|
(EFIAPI *EFI_PEI_GRAPHICS_INIT) (
|
||
|
IN VOID *GraphicsPolicyPtr
|
||
|
);
|
||
|
|
||
|
/**
|
||
|
The GraphicsPpiGetMode returns the mode information supported by the Graphics PEI
|
||
|
Module.
|
||
|
|
||
|
@param[in, out] Mode Pointer to EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE data.
|
||
|
|
||
|
@retval EFI_SUCCESS Valid mode information was returned.
|
||
|
@retval EFI_INVALID_PARAMETER The Mode parameter is not valid.
|
||
|
@retval EFI_DEVICE_ERROR A hardware error occurred trying to retrieve the video
|
||
|
mode.
|
||
|
@retval EFI_NOT_READY The Graphics Initialization is not competed and Mode
|
||
|
information is not yet available.The platform code
|
||
|
should call this again after the Graphics
|
||
|
initialization is done.
|
||
|
**/
|
||
|
typedef
|
||
|
EFI_STATUS
|
||
|
(EFIAPI *EFI_PEI_GRAPHICS_GET_MODE) (
|
||
|
IN OUT EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode
|
||
|
);
|
||
|
|
||
|
///
|
||
|
/// This PPI is the main interface exposed by the Graphics PEIM to be used by the other
|
||
|
/// firmware modules.
|
||
|
///
|
||
|
struct _EFI_PEI_GRAPHICS_PPI {
|
||
|
EFI_PEI_GRAPHICS_INIT GraphicsPpiInit;
|
||
|
EFI_PEI_GRAPHICS_GET_MODE GraphicsPpiGetMode;
|
||
|
};
|
||
|
|
||
|
extern EFI_GUID gEfiPeiGraphicsPpiGuid;
|
||
|
|
||
|
#endif
|