Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Jul 2014 17:53:28 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r268227 - head/sys/boot/amd64/efi
Message-ID:  <201407031753.s63HrSjq088392@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emaste
Date: Thu Jul  3 17:53:28 2014
New Revision: 268227
URL: http://svnweb.freebsd.org/changeset/base/268227

Log:
  Display efi framebuffer dimensions on boot
  
  The EFI framebuffer produces corrupted output on certain systems.  For
  now display the framebuffer parameters (address, dimensions, etc.) on
  boot to aid in tracking down these issues.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/sys/boot/amd64/efi/bootinfo.c

Modified: head/sys/boot/amd64/efi/bootinfo.c
==============================================================================
--- head/sys/boot/amd64/efi/bootinfo.c	Thu Jul  3 17:42:26 2014	(r268226)
+++ head/sys/boot/amd64/efi/bootinfo.c	Thu Jul  3 17:53:28 2014	(r268227)
@@ -225,8 +225,15 @@ bi_load_efi_data(struct preloaded_file *
 	struct efi_map_header *efihdr;
 	struct efi_fb efifb;
 
-	if (efi_find_framebuffer(&efifb) == 0)
+	if (efi_find_framebuffer(&efifb) == 0) {
+		printf("EFI framebuffer information:\n");
+		printf("addr, size     0x%lx, 0x%lx\n", efifb.fb_addr, efifb.fb_size);
+		printf("dimensions     %d x %d\n", efifb.fb_width, efifb.fb_height);
+		printf("stride         %d\n", efifb.fb_stride);
+		printf("masks          0x%08x, 0x%08x, 0x%08x, 0x%08x\n", efifb.fb_mask_red, efifb.fb_mask_green, efifb.fb_mask_blue, efifb.fb_mask_reserved);
+
 		file_addmetadata(kfp, MODINFOMD_EFI_FB, sizeof(efifb), &efifb);
+	}
 
 	efisz = (sizeof(struct efi_map_header) + 0xf) & ~0xf;
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201407031753.s63HrSjq088392>