Bug 20619 - [gm45 KMS] DVI2 is wrongly detected as "connected"
Summary: [gm45 KMS] DVI2 is wrongly detected as "connected"
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: medium normal
Assignee: MaLing
QA Contact:
URL:
Whiteboard:
Keywords:
: 20758 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-03-12 00:22 UTC by liuhaien
Modified: 2017-10-06 14:55 UTC (History)
5 users (show)

See Also:
i915 platform:
i915 features:


Attachments
xorg.0.log (36.44 KB, text/plain)
2009-03-12 00:22 UTC, liuhaien
no flags Details
xorg conf file (3.67 KB, text/plain)
2009-03-12 00:34 UTC, liuhaien
no flags Details
screenshot (555.94 KB, image/png)
2009-03-12 01:23 UTC, liuhaien
no flags Details
bug-xorg-2.6.29-kms-weird-display.png (294.26 KB, image/png)
2009-03-15 10:09 UTC, jeromepoulin@gmail.com
no flags Details
output from xrandr --verbose with VGA1 incorrectly reported as connected (6.00 KB, text/plain)
2009-04-10 14:44 UTC, Andrew McNabb
no flags Details
could you try the debug patch on your machine. (1.76 KB, patch)
2009-05-17 18:37 UTC, MaLing
no flags Details | Splinter Review

Description liuhaien 2009-03-12 00:22:30 UTC
Created attachment 23791 [details]
xorg.0.log

system Environment:
--------------------------
Libdrm:         (master)82eac8060b98b425f29051bfd7830ba3622be7d8
Mesa:           (mesa_7_4_branch)2adaec12267767747a22646c759b0d6c1651d3bf       
Xserver:        (server-1.6-branch)f469726fec502ce29999eda6919c3c3d26c127d8
Xf86_video_intel:               (2.7)4e334ef33c38e2e930958a4b68d79f1860bb9efa
Kernel:       (for-airlied)edde72a59461d766997b469f6d20afdf5fe9b5b4
connector:LVDS

Bug detailed description:
-------------------------
startx with KMS enabled, we will get a incorrect display on the desktop as is shown in the attached screenshot. it displays normal with KMS disabled.and only happens on gm45.

reproduce steps:
------------------------
1.xinit&
2.gnome-session&
Comment 1 liuhaien 2009-03-12 00:34:56 UTC
Created attachment 23792 [details]
xorg conf file
Comment 2 liuhaien 2009-03-12 01:23:30 UTC
Created attachment 23793 [details]
screenshot
Comment 3 Jesse Barnes 2009-03-12 12:03:17 UTC
Looks like we're detecting outputs incorrectly in the KMS case.  Can you post xrandr output for both the UMS and KMS cases?
Comment 4 liuhaien 2009-03-12 18:24:34 UTC
(In reply to comment #3)
> Looks like we're detecting outputs incorrectly in the KMS case.  Can you post
> xrandr output for both the UMS and KMS cases?
> 
1.xrandr for KMS:
xrandr -q:
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 8192 x 8192
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1280x800+0+0 (normal left inverted right x axis y axis) 261mm x 163mm
   1280x800       60.0*+
DVI1 disconnected (normal left inverted right x axis y axis)
DVI2 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768       60.0*
   800x600        60.3
   640x480        59.9
TV1 disconnected (normal left inverted right x axis y axis)

2. for UMS
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
VGA disconnected (normal left inverted right x axis y axis)
LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 261mm x 163mm
   1280x800       60.0*+
   1024x768       85.0     75.0     70.1     60.0
   832x624        74.6
   800x600        85.1     72.2     75.0     60.3     56.2
   640x480        85.0     72.8     75.0     59.9
   720x400        85.0
   640x400        85.1
   640x350        85.1
HDMI-1 disconnected (normal left inverted right x axis y axis)
TV disconnected (normal left inverted right x axis y axis)
Comment 5 jeromepoulin@gmail.com 2009-03-15 10:09:10 UTC
Created attachment 23878 [details]
bug-xorg-2.6.29-kms-weird-display.png

When using 2.6.29 with KMS enabled with the DVI2 connected, the more you look at the right of the screen, all the odd lines appear darker than the even lines, this screenshot show the problem with a complete blue background (well #3E689D) but it also appear with gray. Reverting to the older 2.6.28 kernel I get a pure blue, not "interlaced".
Comment 6 jeromepoulin@gmail.com 2009-03-15 10:16:33 UTC
I'm pretty sure it is related to this same problem even if the bug title isn't in relation with this, but here goes. If I open an image in GIMP and try to pan around using the space bar and moving the mouse, the mouse tries to move and come back in place or some pixels away and after about 5 seconds X crashes with this backtrace:

Backtrace:
0: /usr/bin/X(xorg_backtrace+0x33) [0x8104fbb]
1: /usr/bin/X(xf86SigHandler+0x75) [0x80bbdf4]
2: [0xffffe400]
3: /usr/bin/X [0x80f3d67]
4: /usr/bin/X [0x8115f79]
5: /usr/bin/X [0x813b412]
6: /usr/bin/X [0x81117a8]
7: /usr/bin/X(BlockHandler+0x3b) [0x8087569]
8: /usr/bin/X(WaitForSomething+0x1f2) [0x8103352]
9: /usr/bin/X(Dispatch+0x72) [0x808451b]
10: /usr/bin/X(main+0x44d) [0x806fdef]
11: /lib/libc.so.6(__libc_start_main+0xe0) [0xb7b51608]
12: /usr/bin/X [0x806f351]

Fatal server error:
Caught signal 11.  Server aborting
Comment 7 jeromepoulin@gmail.com 2009-03-22 08:52:31 UTC
After more test I confirm the bug is still present in the drm-intel tree and that the Gimp X crashing bug seems to be unrelated with the i915 driver as since I updated to the new kernel, I also updated most of the userspace and the bug is still present in 2.6.28.
Comment 8 Gordon Jin 2009-03-22 18:14:48 UTC
*** Bug 20758 has been marked as a duplicate of this bug. ***
Comment 9 Tomasz Torcz 2009-03-24 09:17:55 UTC
I have the same problem. Environment: Thinkpad T400, external monitor connected via VGA.  Physically, no DVI or HDMI ports.

Kernel 2.6.29-0.258.rc8.git2.fc11.x86_64
xorg-x11-drv-intel-2.6.0-14.fc11.x86_64

% xrandr --prop
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
VGA1 connected (normal left inverted right x axis y axis)
	EDID_DATA:
		00ffffffffffff004c2d1b0037314847
		0f0b01030f221b8cea6f8ba25a4d9424
		1a5156bfef8081806140454031400101
		010101010101302a009851002a403070
		1300520e1100001e000000fd00384c1e
		510e000a202020202020000000fc0053
		796e634d61737465720a2020000000ff
		004831414b3530303030300a20200098
   1280x1024      60.0 +   75.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
LVDS1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 304mm x 190mm
	EDID_DATA:
		00ffffffffffff0030ae364000000000
		00120103801e1378ea4b859257568a28
		20505400000001010101010101010101
		010101010101b027a08051841a303020
		360030be100000197021a09851841a30
		3020360030be100000190000000f0095
		0a32950a28191900320c3c01000000fe
		004c503134315750322d544c4231001f
   1440x900       60.2*+   50.0  
DVI1 connected (normal left inverted right x axis y axis)
   1024x768       60.0  
   800x600        60.3  
   640x480        59.9  
DVI2 disconnected (normal left inverted right x axis y axis)
Comment 10 jeromepoulin@gmail.com 2009-03-25 16:46:47 UTC
I can confirm that disabling all the output ports fix both the false-resolution problem and the false-interlacing.

Here is what I've done...
/* valid crtcs */
        switch(intel_output->type) {
        case INTEL_OUTPUT_HDMI:
            break; // XXX: DIE
            crtc_mask = ((1 << 0)|
                     (1 << 1));
            clone_mask = ((1 << INTEL_OUTPUT_HDMI));
            break;
        case INTEL_OUTPUT_DVO:
        case INTEL_OUTPUT_SDVO:
            break; // XXX: DIE
            crtc_mask = ((1 << 0)|
                     (1 << 1));
            clone_mask = ((1 << INTEL_OUTPUT_ANALOG) |
                      (1 << INTEL_OUTPUT_DVO) |
                      (1 << INTEL_OUTPUT_SDVO));
            break;
        case INTEL_OUTPUT_ANALOG:
            break; // XXX: DIE
            crtc_mask = ((1 << 0)|
                     (1 << 1));
            clone_mask = ((1 << INTEL_OUTPUT_ANALOG) |
                      (1 << INTEL_OUTPUT_DVO) |
                      (1 << INTEL_OUTPUT_SDVO));
            break;
        case INTEL_OUTPUT_LVDS:
            crtc_mask = (1 << 1);
            clone_mask = (1 << INTEL_OUTPUT_LVDS);
            break;
        case INTEL_OUTPUT_TVOUT:
            break; // XXX: DIE
            crtc_mask = ((1 << 0) |
                     (1 << 1));
            clone_mask = (1 << INTEL_OUTPUT_TVOUT);
            break;
        }
        encoder->possible_crtcs = crtc_mask;
        encoder->possible_clones = intel_connector_clones(dev, clone_mask);

Added some break; // XXX: DIE in intel_dispaly.c ;)
At least it works for now.
Comment 11 Andrew McNabb 2009-04-10 14:43:39 UTC
I think I'm having the same problem.  My system has DVI1 and DVI2 connected, but xrandr reports that VGA1, DVI1, and DVI2 are all connected.  It incorrectly detected that VGA1 was connected.  My screen resolution on the DVI monitors is limited to 1024x768 until I disable VGA1.
Comment 12 Andrew McNabb 2009-04-10 14:44:31 UTC
Created attachment 24700 [details]
output from xrandr --verbose with VGA1 incorrectly reported as connected
Comment 13 jeromepoulin@gmail.com 2009-04-19 08:55:35 UTC
I just want to say the problem still applies to 2.6.29 final with intel-video driver-2.7.0, libdrm-2.4.6 on xorg-server-1.6.0 with randrproto-1.3.0.
I applied the commit which was talked around in the mailing list for 2.7.0 to work correctly; http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=commit;h=f544847fbaf099278343f875987a983f2b913134

After all, once everything is installed, after a reboot, I still get DVI2 connected, and after applying my workaround to intel_display, it works again just like 2.6.99 and because the workaround also mean the LVDS seems "disconnected", I don't have access to the xbacklight property.
Comment 14 MartinG 2009-05-11 04:27:31 UTC
Same problem here, Thinkpad T400, no external monitors connected:
$ xrandr
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 304mm x 190mm
   1440x900       60.2*+   50.0
DVI1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768       60.0*
   800x600        60.3
   640x480        59.9
DVI2 disconnected (normal left inverted right x axis y axis)

KDE4 systemsettings identify both screens as the internal one, and I sometimes get wierd behavior from apps running fullscreen, ie. efter closing them I get a 1024x768 desktop in the upper left corner of my 1440x900 screen.

I do have an docking station available, let me know if there's anything I can test.
Fedora Rawhide, kernel-2.6.29.2-132.fc11.x86_64, xorg-x11-drv-intel-2.7.0-4.fc11.x86_64, libdrm-2.4.6-6.fc11.x86_64.
Comment 15 MaLing 2009-05-17 18:37:09 UTC
Created attachment 25945 [details] [review]
could you try the debug patch on your machine.
Comment 16 liuhaien 2009-05-17 19:59:28 UTC
yes, it works against below commits:
Libdrm:		(master)f57d7f4b0b14972f92a83f155ae8033478aa7729
Mesa:		(master)08ec7e0d329a72433b427e8167b2c3442d1f53b4
Xserver:		(master)2f6253376df45e508284ff7766b186cfc7fb56d6
Xf86_video_intel:		(master)87332a7cc16af82aa47e07fbf90da3635b071dbf
Kernel:       (for-linus)7c7327d9664280cad833da1f14bad13a3ea8f0bf
Comment 17 liuhaien 2009-05-17 19:59:43 UTC
verified.
Comment 18 jeromepoulin@gmail.com 2009-05-23 19:27:29 UTC
I confirm that 2.6.30_rc6 fixes this problem for me, time to open another bug!
Comment 19 Elizabeth 2017-10-06 14:55:11 UTC
Closing old verified.


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.