MdeModulePkg/BootLogoLib&PlatformLogo: Use HII data types in parameters
1. Change PlatformLogo protocol to return EFI_IMAGE_INPUT instead of RAW image data. PlatformLogo implementation can use HiiImageEx to decode the image if it's JPEG or PNG format. 2. Change BootLogoLib to consume the new PlatformLogo protocol. 3. Change BootLogoEnableLogo() to only use images returned from PlatformLogo protocol. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Liming Gao <liming.gao@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Dandan Bi <dandan.bi@intel.com> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
The Platform Logo Protocol defines the interface to get the Platform logo
|
||||
image with the display attribute.
|
||||
|
||||
Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2015 - 2016, 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 that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
@ -16,22 +16,16 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
#ifndef __PLATFORM_LOGO_H__
|
||||
#define __PLATFORM_LOGO_H__
|
||||
|
||||
#include <Protocol/HiiImage.h>
|
||||
|
||||
//
|
||||
// GUID for EDKII Platform Logo Protocol
|
||||
//
|
||||
#define EDKII_PLATFORM_LOGO_PROTOCOL_GUID \
|
||||
{ 0x9b517978, 0xeba1, 0x44e7, { 0xba, 0x65, 0x7c, 0x2c, 0xd0, 0x8b, 0xf8, 0xe9 } }
|
||||
{ 0x53cd299f, 0x2bc1, 0x40c0, { 0x8c, 0x07, 0x23, 0xf6, 0x4f, 0xdb, 0x30, 0xe0 } }
|
||||
|
||||
typedef struct _EDKII_PLATFORM_LOGO_PROTOCOL EDKII_PLATFORM_LOGO_PROTOCOL;
|
||||
|
||||
typedef enum {
|
||||
ImageFormatUnknown,
|
||||
ImageFormatBmp,
|
||||
ImageFormatJpeg,
|
||||
ImageFormatTiff,
|
||||
ImageFormatGif
|
||||
} IMAGE_FORMAT;
|
||||
|
||||
typedef enum {
|
||||
EdkiiPlatformLogoDisplayAttributeLeftTop,
|
||||
EdkiiPlatformLogoDisplayAttributeCenterTop,
|
||||
@ -67,13 +61,11 @@ EFI_STATUS
|
||||
(EFIAPI *EDKII_PLATFORM_LOGO_GET_IMAGE)(
|
||||
IN EDKII_PLATFORM_LOGO_PROTOCOL *This,
|
||||
IN OUT UINT32 *Instance,
|
||||
OUT IMAGE_FORMAT *Format,
|
||||
OUT UINT8 **ImageData,
|
||||
OUT UINTN *ImageSize,
|
||||
OUT EFI_IMAGE_INPUT *Image,
|
||||
OUT EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE *Attribute,
|
||||
OUT INTN *OffsetX,
|
||||
OUT INTN *OffsetY
|
||||
);
|
||||
);
|
||||
|
||||
|
||||
struct _EDKII_PLATFORM_LOGO_PROTOCOL {
|
||||
|
Reference in New Issue
Block a user