Subrata Banik has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/76920?usp=email )
Change subject: include/efi: Include BMP and BLT header macro definitions ......................................................................
include/efi: Include BMP and BLT header macro definitions
This patch adds BMP image header and BLT header macros in `efi_datatype.h` to implement a converter inside coreboot FSP 2.0 driver that converts any input *.BMP image into the BLT buffer. The output BLT buffer is used by FSP-S to render any pre-boot display.
Added `Bmp.h` and `GraphicsOutput.h` files for `UDK base >= 2017`, as these files were added with the UDK version 2017.
Note: BLT in UEFI BMP implementation stands for `Bit-block transfer`. It is a method of copying graphis data (specifically images and fonts) from one location to another (framebuffer), where the data is stored in blocks of bits.
BUG=b:284799726 TEST=Able to build and boot google/rex.
Signed-off-by: Subrata Banik subratabanik@google.com Change-Id: I4e282d135007d288aadb5996a662524f76428874 --- M src/include/efi/efi_datatype.h 1 file changed, 8 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/20/76920/1
diff --git a/src/include/efi/efi_datatype.h b/src/include/efi/efi_datatype.h index 581193a..cbc47c7 100644 --- a/src/include/efi/efi_datatype.h +++ b/src/include/efi/efi_datatype.h @@ -7,9 +7,11 @@ #include <Uefi/UefiBaseType.h>
#if CONFIG_UDK_VERSION >= CONFIG_UDK_2017_VERSION +#include <IndustryStandard/Bmp.h> #include <Guid/StatusCodeDataTypeId.h> #include <Pi/PiPeiCis.h> #include <Pi/PiStatusCode.h> +#include <Protocol/GraphicsOutput.h> #include <Protocol/MpService.h>
/* Data structure for EFI_PEI_SERVICE. */ @@ -24,6 +26,12 @@ typedef EFI_STATUS_CODE_DATA efi_status_code_data_t; /* Status string data type definition */ typedef EFI_STATUS_CODE_STRING_DATA efi_status_code_string_data; +/* Data structure for EFI_GRAPHICS_OUTPUT_BLT_PIXEL. */ +typedef EFI_GRAPHICS_OUTPUT_BLT_PIXEL efi_graphics_output_blt_pixel; +/* Data structure for BMP_IMAGE_HEADER. */ +typedef BMP_IMAGE_HEADER efi_bmp_image_header; +/* Data structure for BMP_COLOR_MAP; . */ +typedef BMP_COLOR_MAP efi_bmp_color_map; #endif
/* Basic Data types */