git: 3ddf7eade0e9 - main - loader.efi: Use Blt with gop as default

Toomas Soome tsoome at FreeBSD.org
Sat Jan 16 19:14:47 UTC 2021


The branch main has been updated by tsoome:

URL: https://cgit.FreeBSD.org/src/commit/?id=3ddf7eade0e9e770a78f190bee00c2a7ba256ef5

commit 3ddf7eade0e9e770a78f190bee00c2a7ba256ef5
Author:     Toomas Soome <tsoome at FreeBSD.org>
AuthorDate: 2021-01-16 15:35:51 +0000
Commit:     Toomas Soome <tsoome at FreeBSD.org>
CommitDate: 2021-01-16 15:39:40 +0000

    loader.efi: Use Blt with gop as default
    
    System with FB address 0x4000000000 does not draw, Blt() is doing fine.
    I think, we can assume the Blt will usually work.
---
 stand/common/gfx_fb.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/stand/common/gfx_fb.c b/stand/common/gfx_fb.c
index 76fd8855a5be..9342521fd0cf 100644
--- a/stand/common/gfx_fb.c
+++ b/stand/common/gfx_fb.c
@@ -710,8 +710,11 @@ gfxfb_blt(void *BltBuffer, GFXFB_BLT_OPERATION BltOperation,
 	EFI_STATUS status;
 	EFI_GRAPHICS_OUTPUT *gop = gfx_state.tg_private;
 
-	if (gop != NULL && (gop->Mode->Info->PixelFormat == PixelBltOnly ||
-	    gfx_state.tg_fb.fb_addr == 0)) {
+	/*
+	 * We assume Blt() does work, if not, we will need to build
+	 * exception list case by case.
+	 */
+	if (gop != NULL) {
 		switch (BltOperation) {
 		case GfxFbBltVideoFill:
 			status = gop->Blt(gop, BltBuffer, EfiBltVideoFill,


More information about the dev-commits-src-all mailing list