aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2018-09-26 12:11:22 -0400
committerBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>2018-09-26 12:11:22 -0400
commitcf7389b8095fabae076ef28b49dc3059b9eb899f (patch)
treeadf90970f5ff1857a2796227a28ebec0d3ae75ce
parent1bafcbf59fed92af58955024452f45430d3898c5 (diff)
efifb: BGRT: Add nobgrt option
In some setups restoring the BGRT logo is undesirable, allow passing video=efifb:nobgrt on the kernel commandline to disable it. Reported-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
-rw-r--r--drivers/video/fbdev/efifb.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c
index 3946649b85c8..ba906876cc45 100644
--- a/drivers/video/fbdev/efifb.c
+++ b/drivers/video/fbdev/efifb.c
@@ -42,6 +42,7 @@ struct bmp_dib_header {
42 u32 colors_important; 42 u32 colors_important;
43} __packed; 43} __packed;
44 44
45static bool use_bgrt = true;
45static bool request_mem_succeeded = false; 46static bool request_mem_succeeded = false;
46static u64 mem_flags = EFI_MEMORY_WC | EFI_MEMORY_UC; 47static u64 mem_flags = EFI_MEMORY_WC | EFI_MEMORY_UC;
47 48
@@ -160,6 +161,9 @@ static void efifb_show_boot_graphics(struct fb_info *info)
160 void *bgrt_image = NULL; 161 void *bgrt_image = NULL;
161 u8 *dst = info->screen_base; 162 u8 *dst = info->screen_base;
162 163
164 if (!use_bgrt)
165 return;
166
163 if (!bgrt_tab.image_address) { 167 if (!bgrt_tab.image_address) {
164 pr_info("efifb: No BGRT, not showing boot graphics\n"); 168 pr_info("efifb: No BGRT, not showing boot graphics\n");
165 return; 169 return;
@@ -290,6 +294,8 @@ static int efifb_setup(char *options)
290 screen_info.lfb_width = simple_strtoul(this_opt+6, NULL, 0); 294 screen_info.lfb_width = simple_strtoul(this_opt+6, NULL, 0);
291 else if (!strcmp(this_opt, "nowc")) 295 else if (!strcmp(this_opt, "nowc"))
292 mem_flags &= ~EFI_MEMORY_WC; 296 mem_flags &= ~EFI_MEMORY_WC;
297 else if (!strcmp(this_opt, "nobgrt"))
298 use_bgrt = false;
293 } 299 }
294 } 300 }
295 301