summaryrefslogtreecommitdiff
path: root/sys/src/cmd/aux/vga/edid.c
AgeCommit message (Collapse)Author
2023-04-09DP 1.2 on igfx; EDID wrapping; VGA display connectionsRomano
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.
2022-02-28aux/vga: return modes according to EDID timing priority orderMichael Forney
EDID 1.3 section 5 gives a table describing the priority order of timing information. Use this ordering when constructing the EDID mode list. Since aux/vga selects the first mode in the modelist that matches the given size, it will now select the mode of that size with the highest preference. Or, if you set vgasize=auto (or some other string without an 'x'), aux/vga will select the Preferred Detailed Timing. This should make it unnecessary to modify vgadb in many cases.
2015-02-05aux/vga: remove vbs/vbe from mode, use shs/ehs when sync is ment, prefer ↵cinap_lenrek
detailed timing in edid vbs/vbe members in Mode was only used in the vesadb and cannot be changed from vgadb. use shs/ehs in drivers when refering to the horizontal sync pulse. clarify the matter in a comment. link detailed timing modes at the head of the edid modelist. these are the modes we'r interested in, not the ones from vesadb.
2015-02-02aux/vga: use optional edid information to determine mode when vgadb failscinap_lenrek
igfx and vesa can determine monitor timing information from ddc and store the edid info for connected monitors in vga->edid[]. when monitor type cannot be found in vgadb, we consult the edid information and make a mode based on the edid info. this avoids having to maintain a vgadb entry for each monitor. monitor can be set to "[width]x[height]@[freq]Hz" for a specific edid setting. when not found, a mode is searched based on the size. so the following should work: aux/vga -m 1366x768@60Hz -l 1366x768x32 aux/vga -m auto -l 1366x768x32
2015-01-11igfx: get edid information from lvdscinap_lenrek