git: be6ba97aaee7 - main - loader.efi: add stride & offset for MacBookPro3,1

From: Ahmad Khalifa <vexeduxr_at_FreeBSD.org>
Date: Tue, 06 Jan 2026 16:40:57 UTC
The branch main has been updated by vexeduxr:

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

commit be6ba97aaee762c2e5300834f1916ae5dfd5a0b9
Author:     Frank Hilgendorf <frank.hilgendorf@posteo.de>
AuthorDate: 2025-01-27 21:18:39 +0000
Commit:     Ahmad Khalifa <vexeduxr@FreeBSD.org>
CommitDate: 2026-01-06 16:29:01 +0000

    loader.efi: add stride & offset for MacBookPro3,1
    
    Note that there are three variants of this MacBook. We only have the
    stride and offset values for the 17" 1680x1050 model.
    
    Reviewed by:    vexeduxr
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1584
---
 stand/efi/loader/framebuffer.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/stand/efi/loader/framebuffer.c b/stand/efi/loader/framebuffer.c
index dc0047de1116..632377613f58 100644
--- a/stand/efi/loader/framebuffer.c
+++ b/stand/efi/loader/framebuffer.c
@@ -392,6 +392,23 @@ efifb_from_uga(struct efi_fb *efifb)
 			/* These are the missing bits. */
 			offset = 0x0;
 			stride = 2048;
+		} else if (ev != NULL && !strcmp(ev, "MacBookPro3,1")) {
+			/*
+			 * Valid for MacBookPro 17" with standard resolution.
+			 * Other Models are:
+			 *   MacBookPro 15" with horiz=1440
+			 *   MacBookPro 17" with horiz=1920
+			 */
+
+			/* These are the expected values we should have. */
+			if (horiz == 1680) {
+				vert = 1050;
+				fbaddr = 0xc0000000;
+				/* These are the missing bits. */
+				stride = 2048;
+				/* 24 scan lines down */
+				offset = stride * 4 * 24;
+			}
 		}
 	}