summaryrefslogtreecommitdiff
path: root/sys/src/cmd/aux/vga/vesa.c
diff options
context:
space:
mode:
authorRomano <unobe@cpan.org>2023-04-09 06:31:09 +0000
committerqwx <qwx@sciops.net>2023-04-09 06:31:09 +0000
commit101b3c2724779fcb0e503ae274abd7b751a3a48f (patch)
tree3d0651a32925618ca4f7afb99ba5d7f8758ed443 /sys/src/cmd/aux/vga/vesa.c
parent83b569cbc7e772ec454f87ccd71104b23faebbc8 (diff)
DP 1.2 on igfx; EDID wrapping; VGA display connections
This patch more fully implements the training patterns for DP 1.2 per the spec, which then allows more monitors to successfully train and therefore connect. In my case it was an LG 34UM68-P. Secondly, this fixes EDID shifting to work with a wider range of values, notably ones which wrap. Lastly, a small correction in vesa.c as to which bits are used to determine available connections.
Diffstat (limited to 'sys/src/cmd/aux/vga/vesa.c')
-rw-r--r--sys/src/cmd/aux/vga/vesa.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/src/cmd/aux/vga/vesa.c b/sys/src/cmd/aux/vga/vesa.c
index 9b7165e31..5d8d5db86 100644
--- a/sys/src/cmd/aux/vga/vesa.c
+++ b/sys/src/cmd/aux/vga/vesa.c
@@ -638,7 +638,7 @@ vbesnarf(Vbe *vbe, Vga *vga)
u.bx = 0x200;
if(vbecall(vbe, &u) < 0)
u.cx = 0;
- dspcon = u.cx >> 8; /* CH = connected, CL = available? */
+ dspcon = (u.cx >> 8) & 0xf;
/* detect active display devices */
vbesetup(vbe, &u, 0x5F64);