https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
		
			
				
	
	
		
			102 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
| Boot Logo 2 Protocol is used to convey information of Logo dispayed during boot.
 | |
| 
 | |
| The Boot Logo 2 Protocol is a replacement for the Boot Logo Protocol.  If a
 | |
| platform produces both the Boot Logo 2 Protocol and the Boot Logo Protocol
 | |
| then the Boot Logo 2 Protocol must be used instead of the Boot Logo Protocol.
 | |
| 
 | |
| Copyright (c) 2016, Microsoft Corporation
 | |
| Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
 | |
| 
 | |
| All rights reserved.
 | |
| SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef _BOOT_LOGO2_H_
 | |
| #define _BOOT_LOGO2_H_
 | |
| 
 | |
| #include <Protocol/GraphicsOutput.h>
 | |
| 
 | |
| #define EDKII_BOOT_LOGO2_PROTOCOL_GUID \
 | |
|   { \
 | |
|     0x4b5dc1df, 0x1eaa, 0x48b2, { 0xa7, 0xe9, 0xea, 0xc4, 0x89, 0xa0, 0xb, 0x5c } \
 | |
|   }
 | |
| 
 | |
| //
 | |
| // Forward reference for pure ANSI compatability
 | |
| //
 | |
| typedef struct _EDKII_BOOT_LOGO2_PROTOCOL EDKII_BOOT_LOGO2_PROTOCOL;
 | |
| 
 | |
| /**
 | |
|   Update information of logo image drawn on screen.
 | |
| 
 | |
|   @param[in] This          The pointer to the Boot Logo protocol 2 instance.
 | |
|   @param[in] BltBuffer     The BLT buffer for logo drawn on screen. If BltBuffer
 | |
|                            is set to NULL, it indicates that logo image is no
 | |
|                            longer on the screen.
 | |
|   @param[in] DestinationX  X coordinate of destination for the BltBuffer.
 | |
|   @param[in] DestinationY  Y coordinate of destination for the BltBuffer.
 | |
|   @param[in] Width         Width of rectangle in BltBuffer in pixels.
 | |
|   @param[in] Height        Hight of rectangle in BltBuffer in pixels.
 | |
| 
 | |
|   @retval EFI_SUCCESS            The boot logo information was updated.
 | |
|   @retval EFI_INVALID_PARAMETER  One of the parameters has an invalid value.
 | |
|   @retval EFI_OUT_OF_RESOURCES   The logo information was not updated due to
 | |
|                                  insufficient memory resources.
 | |
| **/
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EDKII_SET_BOOT_LOGO2)(
 | |
|   IN EDKII_BOOT_LOGO2_PROTOCOL      *This,
 | |
|   IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL  *BltBuffer       OPTIONAL,
 | |
|   IN UINTN                          DestinationX,
 | |
|   IN UINTN                          DestinationY,
 | |
|   IN UINTN                          Width,
 | |
|   IN UINTN                          Height
 | |
|   );
 | |
| 
 | |
| /**
 | |
|   Get the location of the boot logo on the screen.
 | |
| 
 | |
|   @param[in]  This          The pointer to the Boot Logo Protocol 2 instance
 | |
|   @param[out] BltBuffer     Returns pointer to the GOP BLT buffer that was
 | |
|                             previously registered with SetBootLogo2(). The
 | |
|                             buffer returned must not be modified or freed.
 | |
|   @param[out] DestinationX  Returns the X start position of the GOP BLT buffer
 | |
|                             that was previously registered with SetBootLogo2().
 | |
|   @param[out] DestinationY  Returns the Y start position of the GOP BLT buffer
 | |
|                             that was previously registered with SetBootLogo2().
 | |
|   @param[out] Width         Returns the width of the GOP BLT buffer
 | |
|                             that was previously registered with SetBootLogo2().
 | |
|   @param[out] Height        Returns the height of the GOP BLT buffer
 | |
|                             that was previously registered with SetBootLogo2().
 | |
| 
 | |
|   @retval EFI_SUCCESS            The location of the boot logo was returned.
 | |
|   @retval EFI_NOT_READY          The boot logo has not been set.
 | |
|   @retval EFI_INVALID_PARAMETER  BltBuffer is NULL.
 | |
|   @retval EFI_INVALID_PARAMETER  DestinationX is NULL.
 | |
|   @retval EFI_INVALID_PARAMETER  DestinationY is NULL.
 | |
|   @retval EFI_INVALID_PARAMETER  Width is NULL.
 | |
|   @retval EFI_INVALID_PARAMETER  Height is NULL.
 | |
| **/
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EDKII_GET_BOOT_LOGO2)(
 | |
|   IN  EDKII_BOOT_LOGO2_PROTOCOL      *This,
 | |
|   OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL  **BltBuffer,
 | |
|   OUT UINTN                          *DestinationX,
 | |
|   OUT UINTN                          *DestinationY,
 | |
|   OUT UINTN                          *Width,
 | |
|   OUT UINTN                          *Height
 | |
|   );
 | |
| 
 | |
| struct _EDKII_BOOT_LOGO2_PROTOCOL {
 | |
|   EDKII_SET_BOOT_LOGO2  SetBootLogo;
 | |
|   EDKII_GET_BOOT_LOGO2  GetBootLogo;
 | |
| };
 | |
| 
 | |
| extern EFI_GUID  gEdkiiBootLogo2ProtocolGuid;
 | |
| 
 | |
| #endif
 |