XFDrake
From Mandriva Community Wiki
Contents |
[edit] Monitor auto-detection
XFdrake tries hard to have the good default resolution. For this it uses various hardware detection:
[edit] EDID probe
monitor-edid is used.
If it returns a preferred modeline, it is the default resolution chosen by XFdrake.
If it returns a screen size, it will compute a default resolution using this screen size
[edit] DMI probe
Since EDID probe is not always succesful, we added the ability to force the wanted resolution (especially on laptops) using DMI information.
Example of dmitable entry:
System/Manufacturer: Dell Computer .* System/Product Name: Inspiron 8600 => Resolution: 1280x800
With such an entry, using libldetect, Inspiron 8600 gets correct resolution:
% lspcidrake ... Resolution:1280x800: Dell Computer .*|Inspiron 8600
[edit] X probe
If all this fails, we can try running xorg in a test mode and try to extract the resolution from its log
% monitor-probe-using-X 1280x800
[edit] No auto-detection
In that case, it will default to 1024x768
[edit] Card detection
Cards are detected thanks to the ldetect-lst engine (also used by lspcidrake) which lists PCI devices and uses the pcitable in order to match the proper driver. The pcitable list is managed by the Install/Tool Team and is manually updated from the kernel & xorg managed pci ids list.
See also Docs/Hardware#Graphic card.
[edit] References
- monitor auto-detection explained above is coded in libDrakX (drakxtools):
- first Xconfig::monitor::probe() is called to fill in $monitor
- later Xconfig::resolution_and_depth::choices() computes the wanted resolution (and also the proposed resolutions)
- Xconfig::resolution_and_depth::size2default_resolution()