svn commit: r270981 - stable/10/sys/dev/vt/hw/efifb

Ed Maste emaste at FreeBSD.org
Tue Sep 2 19:57:34 UTC 2014


Author: emaste
Date: Tue Sep  2 19:57:33 2014
New Revision: 270981
URL: http://svnweb.freebsd.org/changeset/base/270981

Log:
  MFC r268772 by nwhitehorn:
  
    Allow efifb to be used with xf86-video-scfb. This is important for EFI
    systems without either a CSM or real graphics drivers, such as my
    Lenovo Haswell laptop.
  
    This provides working X with the small complication of a console
    cursor permanently overlaid on the upper-left corner of the screen
    that will be dealt with later.
  
    Also remove some redundant screen clearing.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/10/sys/dev/vt/hw/efifb/efifb.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/vt/hw/efifb/efifb.c
==============================================================================
--- stable/10/sys/dev/vt/hw/efifb/efifb.c	Tue Sep  2 19:56:37 2014	(r270980)
+++ stable/10/sys/dev/vt/hw/efifb/efifb.c	Tue Sep  2 19:57:33 2014	(r270981)
@@ -62,6 +62,8 @@ static struct vt_driver vt_efifb_driver 
 	.vd_blank = vt_fb_blank,
 	.vd_bitbltchr = vt_fb_bitbltchr,
 	.vd_maskbitbltchr = vt_fb_maskbitbltchr,
+	.vd_fb_ioctl = vt_fb_ioctl,
+	.vd_fb_mmap = vt_fb_mmap,
 	/* Better than VGA, but still generic driver. */
 	.vd_priority = VD_PRIORITY_GENERIC + 1,
 };
@@ -97,7 +99,7 @@ vt_efifb_probe(struct vt_device *vd)
 static int
 vt_efifb_init(struct vt_device *vd)
 {
-	int		depth, d, i, len;
+	int		depth, d;
 	struct fb_info	*info;
 	struct efi_fb	*efifb;
 	caddr_t		kmdp;
@@ -142,12 +144,6 @@ vt_efifb_init(struct vt_device *vd)
 	 */
 	info->fb_vbase = PHYS_TO_DMAP(efifb->fb_addr);
 
-	/* blank full size */
-	len = info->fb_size / 4;
-	for (i = 0; i < len; i++) {
-		((uint32_t *)info->fb_vbase)[i] = 0;
-	}
-
 	/* Get pixel storage size. */
 	info->fb_bpp = info->fb_stride / info->fb_width * 8;
 


More information about the svn-src-all mailing list