** Summary changed: - [i815] Wrong resolution on Vaio PCG-SRX51 due to incorrect h/v rates + [i815] Wrong resolution on Vaio PCG-SRX51, PCG-SRX41 and PCG-FX370 due to incorrect h/v rates
** Description changed: [Problem] - Resolutions are incorrect on the Vaio PCG-SRX51 because its display does not support DDC, and thus is not properly communicating its horizontal and vertical sync rate capabilities to the driver. + Resolutions are incorrect on several Sony Vaio laptops because their display panels do not support DDC, and thus is not properly communicating its horizontal and vertical sync rate capabilities to the driver. [Discussion] Prior to Hardy, xorg.conf's required having the HorizSync and VertRefresh settings explicitly specified in the xorg.conf; Hardy's xserver gained the capability to detect these settings from the monitor itself using DDC reads, and thus the installation scripts were modified to not list these two pieces of data. However, the Vaio PCG-SRX51 does not correctly communicate these values, so users started seeing problems in Hardy. This can be seen in Xorg.0.log files from the following error: (II) intel(0): VESA VBE DDC read failed The HorizSync and VertRefresh values are employed in the calculation of valid modelines (i.e. resolutions), so a consequence of this problem is that users were not able to load all the resolutions that the hardware is capable of doing. (Bad sync rates can cause other glitches, but the resolution issue is the most noticeable problem). The Xorg.0.log shows a stream of "Not using default mode ..." and falling all the way down to an 800x600 resolution. An example set of files from experiencing this behavior are seen here: http://launchpadlibrarian.net/19497368/i8xx-resolution-bug-report Running get-edid | parse-edid indicates that the hardware doesn't support DDC at all: Monitor and video card combination does not support DDC1 transfers Monitor and video card combination does not support DDC2 transfers [Proposed Solution] Unfortunately since neither DDC nor EDID works, that poses a considerable constraint for automatic detection. However, perhaps it could be quirked based on both the hostbridge and video chip: 00:00.0 Host bridge [0600]: Intel Corporation 82815 815 Chipset Host Bridge and Memory Controller Hub [8086:1130] (rev 02) 00:02.0 VGA compatible controller [0300]: Intel Corporation 82815 Chipset Graphics Controller (CGC) [8086:1132] (rev 02) Subsystem: Compaq Computer Corporation Device [0e11:001a] Unfortunately neither -intel nor the xserver has infrastructure in place for synthetically setting DDC info this way. It may be worthwhile establishing an infrastructure if there is additional hardware that needs to be similarly quirked. One approach could be to introduce a check in i810_driver.c in I810DoDDC() of the return from vbeDoEDID; if it is NULL, then if the PCI's match the above, generate a synthetic MonInfo structure with appropriate h/v sync values and so on. This approach would also let us hardcode the vendor and twiddle other monitor details. Alternatively, a possibly simpler approach could be to modify the handling of undefined h/v sync rates inside xf86ValidateModes() in the xserver. Instead of just defaulting to 31.5-37.9 / 50-70, it could do a check of the chip and hostbridge, and if it matches a quirked one, use that for the h/v sync rates. This approach would have the advantage of being usable across all drivers. [Workaround] Make your xorg.conf look like this: Section "Device" Identifier "Configured Video Device" Driver "intel" EndSection Section "Monitor" Identifier "Configured Monitor" HorizSync 31.5-48.5 VertRefresh 40-70 Option "dpms" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" DefaultDepth 16 Option "Accel" SubSection "Display" Depth 16 Modes "1024x768" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" EndSubSection EndSection this is thanks denvergeek on the Ubuntu forums: http://ubuntuforums.org/showthread.php?t=972062&highlight=8.10+ibex+screen+resolution&page=2 [lspci] 00:02.0 VGA compatible controller [0300]: Intel Corporation 82815 Chipset Graphics Controller (CGC) [8086:1132] (rev 11) Subsystem: Sony Corporation Device [104d:80df] [Original Report] ubuntu intrepid, limited to 800x600, 640x480, should have detected 1024x768 Update: X can't read DDC info from the monitor: (II) intel(0): VESA VBE DDC read failed -- [i815] Wrong resolution on Vaio PCG-SRX51, PCG-SRX41 and PCG-FX370 due to incorrect h/v rates https://bugs.launchpad.net/bugs/288807 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs