From 411f8f5367ca8f55faa8a9c34735e31ac665c7dc Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Tue, 4 Nov 2025 12:07:02 +0100 Subject: efi: Use struct efi_gop_mode_info in struct efi_entry_gopmode Since C99 flexible array members are allowed at the end of structures. We require C11. Use struct efi_gop_mode_info in the definition of struct efi_entry_gopmode to avoid code duplication and unnecessary conversions. Reviewed-by: Bin Meng Signed-off-by: Heinrich Schuchardt --- include/efi.h | 36 +++++++++++++++++++++++------------- include/efi_api.h | 9 --------- 2 files changed, 23 insertions(+), 22 deletions(-) (limited to 'include') diff --git a/include/efi.h b/include/efi.h index f9bbb175c3a..66725b876f9 100644 --- a/include/efi.h +++ b/include/efi.h @@ -385,6 +385,28 @@ struct efi_entry_memmap { struct efi_mem_desc desc[]; }; +/** + * struct efi_gop_mode_info - graphics output mode information + */ +struct efi_gop_mode_info { + /** @version: version of the data structure (use zero) */ + u32 version; + /** @width: horizontal screen size */ + u32 width; + /** @height: vertical screen size */ + u32 height; + /** @pixel_format: enum that specifies the storage format of pixels */ + u32 pixel_format; + /** + * @pixel_bitmask: bitmasks used with PixelPixelBitMask + * + * The values which bits are used for red, green, blue, and alpha. + */ + u32 pixel_bitmask[4]; + /** @pixels_per_scanline: pixels per video memory line */ + u32 pixels_per_scanline; +}; + /** * struct efi_entry_gopmode - a GOP mode table passed to U-Boot * @@ -404,19 +426,7 @@ struct efi_entry_gopmode { */ u64 fb_size; u64 info_size; - /* - * We cannot directly use 'struct efi_gop_mode_info info[]' here as - * it causes compiler to complain: array type has incomplete element - * type 'struct efi_gop_mode_info'. - */ - struct /* efi_gop_mode_info */ { - u32 version; - u32 width; - u32 height; - u32 pixel_format; - u32 pixel_bitmask[4]; - u32 pixels_per_scanline; - } info[]; + struct efi_gop_mode_info info[]; }; /** diff --git a/include/efi_api.h b/include/efi_api.h index 77a05f752e5..d4fdd50c49e 100644 --- a/include/efi_api.h +++ b/include/efi_api.h @@ -1490,15 +1490,6 @@ struct efi_hii_config_access_protocol { #define EFI_GOT_BGRA8 1 #define EFI_GOT_BITMASK 2 -struct efi_gop_mode_info { - u32 version; - u32 width; - u32 height; - u32 pixel_format; - u32 pixel_bitmask[4]; - u32 pixels_per_scanline; -}; - struct efi_gop_mode { u32 max_mode; u32 mode; -- cgit v1.2.3 From d05190bd65ccd212e8540d609fb6066e2692cc6a Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Tue, 4 Nov 2025 12:02:40 +0100 Subject: efi_loader: correct struct efi_priv description Add a missing colon ':' to match Sphinx style. Reviewed-by: Bin Meng Signed-off-by: Heinrich Schuchardt --- include/efi.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/efi.h b/include/efi.h index 66725b876f9..b98871fedad 100644 --- a/include/efi.h +++ b/include/efi.h @@ -454,7 +454,7 @@ static inline struct efi_mem_desc *efi_get_next_mem_desc( * @memmap_key: Key returned from get_memory_map() * @memmap_desc: List of memory-map records * @memmap_alloc: Amount of memory allocated for memory map list - * @memmap_size Size of memory-map list in bytes + * @memmap_size: Size of memory-map list in bytes * @memmap_desc_size: Size of an individual memory-map record, in bytes * @memmap_version: Memory-map version * -- cgit v1.2.3