--- /dev/null
+/** @file\r
+ Hob guid for Information about the graphics mode.\r
+\r
+ Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+ @par Revision Reference:\r
+ This HOB is introduced in in PI Version 1.4.\r
+\r
+**/\r
+\r
+#ifndef _GRAPHICS_INFO_HOB_GUID_H_\r
+#define _GRAPHICS_INFO_HOB_GUID_H_\r
+\r
+#include <Protocol/GraphicsOutput.h>\r
+\r
+#define EFI_PEI_GRAPHICS_INFO_HOB_GUID \\r
+ { \\r
+ 0x39f62cce, 0x6825, 0x4669, { 0xbb, 0x56, 0x54, 0x1a, 0xba, 0x75, 0x3a, 0x07 } \\r
+ }\r
+\r
+typedef struct {\r
+ EFI_PHYSICAL_ADDRESS FrameBufferBase;\r
+ UINT32 FrameBufferSize;\r
+ EFI_GRAPHICS_OUTPUT_MODE_INFORMATION GraphicsMode;\r
+} EFI_PEI_GRAPHICS_INFO_HOB;\r
+\r
+extern EFI_GUID gEfiGraphicsInfoHobGuid;\r
+\r
+#endif\r
--- /dev/null
+/** @file\r
+ This file declares Graphics PPI.\r
+ This PPI is the main interface exposed by the Graphics PEIM to be used by the\r
+ other firmware modules.\r
+\r
+ Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+ @par Revision Reference:\r
+ This PPI is introduced in PI Version 1.4.\r
+\r
+**/\r
+\r
+#ifndef __PEI_GRAPHICS_PPI_H__\r
+#define __PEI_GRAPHICS_PPI_H__\r
+\r
+#include <Protocol/GraphicsOutput.h>\r
+\r
+#define EFI_PEI_GRAPHICS_PPI_GUID \\r
+ { \\r
+ 0x6ecd1463, 0x4a4a, 0x461b, { 0xaf, 0x5f, 0x5a, 0x33, 0xe3, 0xb2, 0x16, 0x2b } \\r
+ }\r
+\r
+typedef struct _EFI_PEI_GRAPHICS_PPI EFI_PEI_GRAPHICS_PPI;\r
+\r
+/**\r
+ The GraphicsPpiInit initializes the graphics subsystem in phases.\r
+\r
+ @param[in] GraphicsPolicyPtr GraphicsPolicyPtr points to a configuration data\r
+ block of policy settings required by Graphics PEIM.\r
+\r
+ @retval EFI_SUCCESS The invocation was successful.\r
+ @retval EFI_INVALID_PARAMETER The phase parameter is not valid.\r
+ @retval EFI_NOT_ABORTED The stages was not called in the proper order.\r
+ @retval EFI_NOT_FOUND The PeiGraphicsPlatformPolicyPpi is not located.\r
+ @retval EFI_DEVICE_ERROR The initialization failed due to device error.\r
+ @retval EFI_NOT_READY The previous init stage is still in progress and not\r
+ ready for the current initialization phase yet. The\r
+ platform code should call this again sometime later.\r
+**/\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_PEI_GRAPHICS_INIT) (\r
+ IN VOID *GraphicsPolicyPtr\r
+ );\r
+\r
+/**\r
+ The GraphicsPpiGetMode returns the mode information supported by the Graphics PEI\r
+ Module.\r
+\r
+ @param[in, out] Mode Pointer to EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE data.\r
+\r
+ @retval EFI_SUCCESS Valid mode information was returned.\r
+ @retval EFI_INVALID_PARAMETER The Mode parameter is not valid.\r
+ @retval EFI_DEVICE_ERROR A hardware error occurred trying to retrieve the video\r
+ mode.\r
+ @retval EFI_NOT_READY The Graphics Initialization is not competed and Mode\r
+ information is not yet available.The platform code\r
+ should call this again after the Graphics\r
+ initialization is done.\r
+**/\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_PEI_GRAPHICS_GET_MODE) (\r
+ IN OUT EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode\r
+ );\r
+\r
+///\r
+/// This PPI is the main interface exposed by the Graphics PEIM to be used by the other\r
+/// firmware modules.\r
+///\r
+struct _EFI_PEI_GRAPHICS_PPI {\r
+ EFI_PEI_GRAPHICS_INIT GraphicsPpiInit;\r
+ EFI_PEI_GRAPHICS_GET_MODE GraphicsPpiGetMode;\r
+};\r
+\r
+extern EFI_GUID gEfiPeiGraphicsPpiGuid;\r
+\r
+#endif\r
## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Nvme interface.\r
## Include/Protocol/DiskInfo.h\r
gEfiDiskInfoNvmeInterfaceGuid = { 0x3ab14680, 0x5d3f, 0x4a4d, { 0xbc, 0xdc, 0xcc, 0x38, 0x0, 0x18, 0xc7, 0xf7 }}\r
+ \r
+ #\r
+ # GUID defined in PI1.4\r
+ #\r
+ ## Include/Guid/GraphicsInfoHob.h\r
+ gEfiGraphicsInfoHobGuid = { 0x39f62cce, 0x6825, 0x4669, { 0xbb, 0x56, 0x54, 0x1a, 0xba, 0x75, 0x3a, 0x07 }}\r
\r
[Guids.IA32, Guids.X64]\r
## Include/Guid/Cper.h\r
## Include/Ppi/FirmwareVolumeInfo2.h\r
gEfiPeiFirmwareVolumeInfo2PpiGuid = { 0xea7ca24b, 0xded5, 0x4dad, { 0xa3, 0x89, 0xbf, 0x82, 0x7e, 0x8f, 0x9b, 0x38 } }\r
\r
+ #\r
+ # PPIs defined in PI 1.4.\r
+ #\r
+\r
+ ## Include/Ppi/Graphics.h\r
+ gEfiPeiGraphicsPpiGuid = { 0x6ecd1463, 0x4a4a, 0x461b, { 0xaf, 0x5f, 0x5a, 0x33, 0xe3, 0xb2, 0x16, 0x2b } }\r
+\r
\r
\r
[Protocols]\r