Bug 10545 - Intel driver identifies correct resolution, but the monitor doesn't correctly adapt to it.
Summary: Intel driver identifies correct resolution, but the monitor doesn't correctly...
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: 7.2 (2007.02)
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Eric Anholt
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-04-06 09:07 UTC by Erik Andren
Modified: 2007-07-02 11:43 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Xorg log with modedebug enabled (136.56 KB, text/plain)
2007-04-06 09:08 UTC, Erik Andren
no flags Details
Xorg.conf (2.96 KB, application/octet-stream)
2007-04-06 09:09 UTC, Erik Andren
no flags Details
Xrandr 1.2 --verbose against xserver 1.3 RC5 (4.18 KB, text/plain)
2007-04-15 07:59 UTC, Erik Andren
no flags Details
Working patch against current git (538 bytes, patch)
2007-04-17 12:53 UTC, Erik Andren
no flags Details | Splinter Review

Description Erik Andren 2007-04-06 09:07:39 UTC
Hardware: 
Intel DG965WH Motherboard connected via VGA-cable to a Samsung SyncMaster 226BW (1680x1050 native resolution).

Software:
Ubuntu Linux, Feisty Fawn current. Xorg 7.2, Current git intel driver (2.0 RC4).

Problem:
The driver correctly identifies the proper native resolution but sets an invalid mode. When using a correct screen resolution, the monitor microcontroller tells what resolution it displays. With the mode set by the driver it only shows:
62.7 kHz 58 Hz NP. The displayed resultion is somewhat equal to the 1280x1024 in pixel size.
Comment 1 Erik Andren 2007-04-06 09:08:22 UTC
Created attachment 9501 [details]
Xorg log with modedebug enabled
Comment 2 Erik Andren 2007-04-06 09:09:02 UTC
Created attachment 9502 [details]
Xorg.conf
Comment 3 Erik Andren 2007-04-07 03:09:44 UTC
The Samsung manual indicates that the proper VESA mode should be 
Res: 1680x1050 
Horiz: 65,290
Vert: 59,954
PixClock: 146,250 MHz 
-hsync +vsync

What would the proper modeline string be?

Comment 4 Erik Andren 2007-04-08 10:40:00 UTC
Alright. My current idea why this isn't working is that the PixClock max is decided to be 140 MHz as the following line in the xorg.log states:
(II) intel(0): Ranges: V min: 56  V max: 75 Hz, H min: 30  H max: 81 kHz, PixClock max 140 MHz

Thus it disables the correct mode with 146,25 Mhz Pixclock as stated in the comment above. 

Is there a way to force a certain pixclock that goes over the max pixclock?

I've already tried the following modeline:(II) intel(0): Modeline "1680x1050"x60.0  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync (65.3 kHz)
but the driver won't accept it. 

Ideas?
Comment 5 Erik Andren 2007-04-15 04:27:31 UTC
Could this be a duplicate of #10239?
Comment 6 Erik Andren 2007-04-15 07:59:57 UTC
Created attachment 9613 [details]
Xrandr 1.2 --verbose against xserver 1.3 RC5
Comment 7 Erik Andren 2007-04-17 12:53:25 UTC
Created attachment 9639 [details] [review]
Working patch against current git

Ok, I've solved the problem myself. This monitor needs the same prefer_large_60 quirk as some other monitors. Attaching a working git patch
Comment 8 Eric Anholt 2007-04-17 13:39:01 UTC
That quirk was meant for a monitor that gives a far-from-60 mode when it shouldn't, while your two 16x10 modes are both very close to 60.  It might not be the quirk you want, though it happens to work for you at the moment.  Interestingly, the 16x10 mode that's not working out for you is exactly the reduced-blanking cvt mode but with the polarities swapped. You might want to try quirking to swap the polarities and see if that fixes it.
Comment 9 Timo Aaltonen 2007-04-22 01:18:19 UTC
I've had similar problems with a Lenovo monitor using DVI (as posted on the list a while back). Should I try something similar as mentioned here, or open a new bug?
Comment 10 Frode M. Døving 2007-04-22 03:07:53 UTC
I think I have the same problem.
Except I still have it even with the patch applied.

Dell Latitude with an 945GM connected to an external Samsung Syncmaster 225BW.

xrandr says:
creen 0: minimum 320 x 200, current 3120 x 1050, maximum 3400 x 1050
VGA connected 1680x1050+1440+0 (normal left inverted right) 474mm x 296mm
   1680x1050      60.0*+   60.0     59.9
[cut lower res.]
LVDS connected 1440x900+0+0 (normal left inverted right) 303mm x 190mm
   1440x900       60.0*+
[cut lower res.]
TMDS-1 disconnected (normal left inverted right)
TV disconnected (normal left inverted right)

But the monitor runs at 1400x1050, 65kHz 60Hz

As you can see from the xrandr output i increased the virtual size to 3400x1050 to test if that could help.
3120x1050 is the size i want.
If I take screenshots the size is reported to be 3120x1050.
If I maximize a window on the second screen it fills the screen and screenshot.

Let me know if you want logs/configs and all. Won't make a mess out of this bugreport if it's unnecessary.
Comment 11 gmud 2007-05-01 17:18:25 UTC
Frode,

did you test the patch with an altered product id? The patch attached to this bug is for Samsung SyncMaster 226BW not "225BW". It has another productid. See bug #10814.
Comment 12 Frode M. Døving 2007-05-06 11:26:40 UTC
Gero, 
Thanks alot!

That patch works for me.
(Should have spotted that number)
Comment 13 Eric Anholt 2007-07-02 11:43:35 UTC
Commmitted back in april.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.