svn commit: r262856 - in projects/uefi/sys: amd64/amd64 amd64/conf amd64/include boot/amd64/efi conf dev/fb

Ed Maste emaste at FreeBSD.org
Thu Mar 6 14:28:05 UTC 2014


Author: emaste
Date: Thu Mar  6 14:28:03 2014
New Revision: 262856
URL: http://svnweb.freebsd.org/changeset/base/262856

Log:
  Use vt(9) framebuffer for UEFI
  
  This reverts r247249 and r247374 and uses ray@'s driver from r262785
  instead.
  
  Sponsored by:	The FreeBSD Foundation

Deleted:
  projects/uefi/sys/dev/fb/efifb.c
  projects/uefi/sys/dev/fb/efifb.h
Modified:
  projects/uefi/sys/amd64/amd64/machdep.c
  projects/uefi/sys/amd64/conf/GENERIC
  projects/uefi/sys/amd64/include/efi.h
  projects/uefi/sys/amd64/include/metadata.h
  projects/uefi/sys/boot/amd64/efi/bootinfo.c
  projects/uefi/sys/conf/files
  projects/uefi/sys/conf/files.amd64
  projects/uefi/sys/conf/options.amd64

Modified: projects/uefi/sys/amd64/amd64/machdep.c
==============================================================================
--- projects/uefi/sys/amd64/amd64/machdep.c	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/amd64/amd64/machdep.c	Thu Mar  6 14:28:03 2014	(r262856)
@@ -1567,7 +1567,7 @@ parsememmap(caddr_t kmdp, u_int64_t firs
 	physmap_idx = 0;
 
 	efihdr = (struct efi_header *)preload_search_info(kmdp,
-	    MODINFO_METADATA | MODINFOMD_EFI);
+	    MODINFO_METADATA | MODINFOMD_EFI_MAP);
 	smapbase = (struct bios_smap *)preload_search_info(kmdp,
 	    MODINFO_METADATA | MODINFOMD_SMAP);
 	if (efihdr == NULL && smapbase == NULL)

Modified: projects/uefi/sys/amd64/conf/GENERIC
==============================================================================
--- projects/uefi/sys/amd64/conf/GENERIC	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/amd64/conf/GENERIC	Thu Mar  6 14:28:03 2014	(r262856)
@@ -174,7 +174,6 @@ device		psm		# PS/2 mouse
 
 device		kbdmux		# keyboard multiplexer
 
-device		efifb		# EFI framebuffer
 device		vga		# VGA video card driver
 options 	VESA		# Add support for VESA BIOS Extensions (VBE)
 
@@ -183,8 +182,6 @@ device		splash		# Splash screen and scre
 # syscons is the default console driver, resembling an SCO console
 device		sc
 options 	SC_PIXEL_MODE	# add support for the raster text mode
-options		SC_DFLT_FONT
-makeoptions	SC_DFLT_FONT=cp437
 
 device		agp		# support several AGP chipsets
 

Modified: projects/uefi/sys/amd64/include/efi.h
==============================================================================
--- projects/uefi/sys/amd64/include/efi.h	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/amd64/include/efi.h	Thu Mar  6 14:28:03 2014	(r262856)
@@ -18,7 +18,6 @@ struct efi_header {
         size_t          memory_size;
         size_t          descriptor_size;
         uint64_t        descriptor_version;
-	struct efi_fb	fb;
 };
 
 struct efi_descriptor {

Modified: projects/uefi/sys/amd64/include/metadata.h
==============================================================================
--- projects/uefi/sys/amd64/include/metadata.h	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/amd64/include/metadata.h	Thu Mar  6 14:28:03 2014	(r262856)
@@ -32,6 +32,7 @@
 #define	MODINFOMD_SMAP		0x1001
 #define	MODINFOMD_SMAP_XATTR	0x1002
 #define	MODINFOMD_DTBP		0x1003
-#define	MODINFOMD_EFI		0x1004
+#define	MODINFOMD_EFI_MAP	0x1004
+#define	MODINFOMD_EFI_FB	0x1005
 
 #endif /* !_MACHINE_METADATA_H_ */

Modified: projects/uefi/sys/boot/amd64/efi/bootinfo.c
==============================================================================
--- projects/uefi/sys/boot/amd64/efi/bootinfo.c	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/boot/amd64/efi/bootinfo.c	Thu Mar  6 14:28:03 2014	(r262856)
@@ -245,6 +245,10 @@ bi_load_efi_data(struct preloaded_file *
 	UINTN mmsz, pages, sz;
 	UINT32 mmver;
 	struct efi_header *efihdr;
+	struct efi_fb efifb;
+
+	efi_find_framebuffer(&efifb);
+	file_addmetadata(kfp, MODINFOMD_EFI_FB, sizeof(efifb), &efifb);
 
         efisz = (sizeof(struct efi_header) + 0xf) & ~0xf;
 
@@ -289,9 +293,7 @@ bi_load_efi_data(struct preloaded_file *
 	efihdr->descriptor_size = mmsz;
 	efihdr->descriptor_version = mmver;
 
-	efi_find_framebuffer(&efihdr->fb);
-
-	file_addmetadata(kfp, MODINFOMD_EFI, efisz + sz, efihdr);
+	file_addmetadata(kfp, MODINFOMD_EFI_MAP, efisz + sz, efihdr);
 
 	return (0);
 }

Modified: projects/uefi/sys/conf/files
==============================================================================
--- projects/uefi/sys/conf/files	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/conf/files	Thu Mar  6 14:28:03 2014	(r262856)
@@ -2470,6 +2470,7 @@ dev/vr/if_vr.c			optional vr pci
 dev/vt/colors/vt_termcolors.c	optional vt
 dev/vt/font/vt_font_default.c	optional vt
 dev/vt/font/vt_mouse_cursor.c	optional vt
+dev/vt/hw/efifb/efifb.c		optional vt
 dev/vt/hw/fb/vt_fb.c		optional vt
 dev/vt/hw/vga/vga.c		optional vt vt_vga
 dev/vt/logo/logo_freebsd.c	optional vt splash

Modified: projects/uefi/sys/conf/files.amd64
==============================================================================
--- projects/uefi/sys/conf/files.amd64	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/conf/files.amd64	Thu Mar  6 14:28:03 2014	(r262856)
@@ -32,8 +32,8 @@ ia32_assym.h			standard				\
 	no-obj no-implicit-rule before-depend				\
 	clean		"ia32_assym.h"
 #
-font.h				optional	sc_dflt_font 		\
-	compile-with	"uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h"									\
+font.h				optional	sc_dflt_font		\
+	compile-with	"uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h"									\
 	no-obj no-implicit-rule before-depend				\
 	clean		"font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8"
 #
@@ -172,7 +172,6 @@ dev/ed/if_ed_isa.c		optional	ed isa
 dev/ed/if_ed_wd80x3.c		optional	ed isa
 dev/ed/if_ed_hpp.c		optional	ed isa ed_hpp
 dev/ed/if_ed_sic.c		optional	ed isa ed_sic
-dev/fb/efifb.c			optional	fb | efifb
 dev/fb/fb.c			optional	fb | vga
 dev/fb/s3_pci.c			optional	s3pci
 dev/fb/vesa.c			optional	vga vesa
@@ -307,7 +306,6 @@ dev/sio/sio_pci.c		optional	sio pci
 dev/sio/sio_puc.c		optional	sio puc
 dev/speaker/spkr.c		optional	speaker
 dev/syscons/apm/apm_saver.c	optional	apm_saver apm
-dev/syscons/scgfbrndr.c		optional	sc efifb
 dev/syscons/scterm-teken.c	optional	sc
 dev/syscons/scvesactl.c		optional	sc vga vesa
 dev/syscons/scvgarndr.c		optional	sc vga

Modified: projects/uefi/sys/conf/options.amd64
==============================================================================
--- projects/uefi/sys/conf/options.amd64	Thu Mar  6 14:11:44 2014	(r262855)
+++ projects/uefi/sys/conf/options.amd64	Thu Mar  6 14:28:03 2014	(r262856)
@@ -44,10 +44,6 @@ VGA_WIDTH90		opt_vga.h
 VESA
 VESA_DEBUG		opt_vesa.h
 
-GFB_DEBUG		opt_gfb.h
-GFB_NO_FONT_LOADING	opt_gfb.h
-GFB_NO_MODE_CHANGE	opt_gfb.h
-
 # AGP debugging support
 AGP_DEBUG		opt_agp.h
 


More information about the svn-src-projects mailing list