Author: nwhitehorn
Date: Wed Jul 16 18:52:21 2014
New Revision: 268772
URL: http://svnweb.freebsd.org/changeset/base/268772

Log:
  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.

Modified:
  head/sys/dev/vt/hw/efifb/efifb.c

Modified: head/sys/dev/vt/hw/efifb/efifb.c
==============================================================================
--- head/sys/dev/vt/hw/efifb/efifb.c    Wed Jul 16 18:49:46 2014        
(r268771)
+++ head/sys/dev/vt/hw/efifb/efifb.c    Wed Jul 16 18:52:21 2014        
(r268772)
@@ -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;
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to