Tools/monitor-edid
From Mandriva
Contents |
Here is an example of running monitor-edid:
% monitor-edid Name: COMPAQ P710 EISA ID: CPQ1384 Screen size: 31.2 cm x 23.4 cm (15.35 inches, aspect ratio 4/3 = 1.33) Gamma: 2.2 Analog signal Max video bandwidth: 220 MHz HorizSync 30-96 VertRefresh 50-140 # Monitor preferred modeline (75.0 Hz vsync, 93.8 kHz hsync, ratio 4/3) ModeLine "1600x1200" 202.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
How monitor-edid gets the EDID
The EDID contains information about the monitor.
Different solutions to access the EDID (and implemented in monitor-edid):
VBE/DDC (x86)
DDC (Display Data Channel) is a standard to allow the communication of the EDID through the VGA or DVI cable. VESA VBE/DC allows to access to the EDID through the BIOS interruption 10h.
Under linux, on ia32 (iX86) one can switch to vm86 mode and call this BIOS interruption. On AMD64, the vm86 mode is emulated to call this interruption. BIOS interruption is not reliable. BIOS information may be unavailable when running xorg or after some kernel change
Mandrake used to use "ddcxinfos" instead of monitor-get-edid. And ddcxinfos comes from ddcprobe (now in kudzu) from RedHat. xresprobe (Ubuntu) also uses ddcprobe. read-edid is also a good source of information and inspiration.
ACPI 2.0
The kernel module "video" gives access to basic monitor control. With this module, one may access to the EDID in /proc/acpi/video/*/*/EDID.
ACPI must be working, and it only works on a few boxes at the moment (mostly laptops)
Open Firmware (PPC)
The Open Firmware device tree contains the EDID. monitor-edid looks for it in /proc/device-tree
Preferred modeline
EDID information sometimes contain a "preferred modeline" field. If XFdrake thinks it is useful and non problematic, it will put it in xorg config file. XFdrake will also use it as the default resolution.
MonitorsDB
monitor-edid can output directly in MonitorsDB format:
% monitor-edid --MonitorsDB COMPAQ; COMPAQ P710; CPQ1384; 30-96; 50-140; 1600x1200
See Hardware for more
Raw output
monitor-edid can output in perl Dumper format:
% monitor-edid --perl +{ 'EISA_ID' => 'CPQ1384', 'HorizSync' => '30-96', 'VertRefresh' => '50-140', 'checksum' => 232, 'detailed_timings' => [ { 'ModeLine' => '"1600x1200" 202.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync', ...
References
- monitor-edid command is available in package monitor-edid
- CVS module
- read-edid