mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-18 10:35:55 +00:00
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.
This commit is contained in:
parent
60d7ea3d32
commit
351e92cc2d
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=268772
@ -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;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user