** 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
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs