summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2009-06-09 00:54:57 +0000
committerdelphij <delphij@FreeBSD.org>2009-06-09 00:54:57 +0000
commitcfc92528a54728ef44bee6a14e7e87f24764aa47 (patch)
treedd9abb3c08b335a3833d7c7fcd16349b47dc7d36 /sys/i386/isa
parent1ac37395d64897684ac5214438f0b37b0cfd6083 (diff)
downloadFreeBSD-src-cfc92528a54728ef44bee6a14e7e87f24764aa47.zip
FreeBSD-src-cfc92528a54728ef44bee6a14e7e87f24764aa47.tar.gz
Add line width calculations for 15/16 and 24/32 bit modes in case
the "Get Scan Line Length" function fails, as it does in Parallels (in Version 2.2, Build 2112 at least). PR: i386/127367 Obtained from: DragonFly Submitted by: Pedro Giffuni MFC after: 1 month
Diffstat (limited to 'sys/i386/isa')
-rw-r--r--sys/i386/isa/vesa.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/i386/isa/vesa.c b/sys/i386/isa/vesa.c
index a1e2a76..736daff 100644
--- a/sys/i386/isa/vesa.c
+++ b/sys/i386/isa/vesa.c
@@ -1111,6 +1111,14 @@ vesa_set_mode(video_adapter_t *adp, int mode)
default: /* shouldn't happen */
vesa_adp->va_line_width = info.vi_width;
break;
+ case 15:
+ case 16:
+ vesa_adp->va_line_width = info.vi_width*2;
+ break;
+ case 24:
+ case 32:
+ vesa_adp->va_line_width = info.vi_width*4;
+ break;
}
} else {
vesa_adp->va_line_width = info.vi_width;
OpenPOWER on IntegriCloud