1 /** @file 2 Boot Logo protocol is used to convey information of Logo dispayed during boot. 3 4 Copyright (c) 2011, Intel Corporation. All rights reserved.<BR> 5 This program and the accompanying materials are licensed and made available under 6 the terms and conditions of the BSD License that accompanies this distribution. 7 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 _BOOT_LOGO_H_ 16 #define _BOOT_LOGO_H_ 17 18 #include <Protocol/GraphicsOutput.h> 19 20 #define EFI_BOOT_LOGO_PROTOCOL_GUID \ 21 { \ 22 0xcdea2bd3, 0xfc25, 0x4c1c, { 0xb9, 0x7c, 0xb3, 0x11, 0x86, 0x6, 0x49, 0x90 } \ 23 } 24 25 // 26 // Forward reference for pure ANSI compatability 27 // 28 typedef struct _EFI_BOOT_LOGO_PROTOCOL EFI_BOOT_LOGO_PROTOCOL; 29 30 /** 31 Update information of logo image drawn on screen. 32 33 @param This The pointer to the Boot Logo protocol instance. 34 @param BltBuffer The BLT buffer for logo drawn on screen. If BltBuffer 35 is set to NULL, it indicates that logo image is no 36 longer on the screen. 37 @param DestinationX X coordinate of destination for the BltBuffer. 38 @param DestinationY Y coordinate of destination for the BltBuffer. 39 @param Width Width of rectangle in BltBuffer in pixels. 40 @param Height Hight of rectangle in BltBuffer in pixels. 41 42 @retval EFI_SUCCESS The boot logo information was updated. 43 @retval EFI_INVALID_PARAMETER One of the parameters has an invalid value. 44 @retval EFI_OUT_OF_RESOURCES The logo information was not updated due to 45 insufficient memory resources. 46 47 **/ 48 typedef 49 EFI_STATUS 50 (EFIAPI *EFI_SET_BOOT_LOGO)( 51 IN EFI_BOOT_LOGO_PROTOCOL *This, 52 IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, 53 IN UINTN DestinationX, 54 IN UINTN DestinationY, 55 IN UINTN Width, 56 IN UINTN Height 57 ); 58 59 struct _EFI_BOOT_LOGO_PROTOCOL { 60 EFI_SET_BOOT_LOGO SetBootLogo; 61 }; 62 63 extern EFI_GUID gEfiBootLogoProtocolGuid; 64 65 #endif 66