Bug 34101 - SDVO monitor detection trouble
Summary: SDVO monitor detection trouble
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Chris Wilson
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-09 11:37 UTC by Sebastien Caty
Modified: 2017-07-24 23:06 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Xorg log file (54.01 KB, text/plain)
2011-02-09 11:37 UTC, Sebastien Caty
no flags Details
Use the EDID to confirm the connection status (2.77 KB, patch)
2011-02-09 12:07 UTC, Chris Wilson
no flags Details | Splinter Review
Xorg log file after EDID check patch (44.07 KB, text/plain)
2011-02-09 12:28 UTC, Sebastien Caty
no flags Details
dmesg output with patch applied (107.37 KB, text/plain)
2011-02-09 12:44 UTC, Sebastien Caty
no flags Details
Only use the TMDS detection routine for TMDS connectors (1.39 KB, patch)
2011-02-09 13:03 UTC, Chris Wilson
no flags Details | Splinter Review

Description Sebastien Caty 2011-02-09 11:37:47 UTC
Created attachment 43172 [details]
Xorg log file

Hi,

Since kernel 2.6.37-rc1 no screen on my desktop works. It just goes black when loading the kernel. I have 2 LCD monitor plugged in, 1 VGA connected to the onboard port and a DVI connected to an SDVO card. Now with kernel 2.6.38-rc4 I have both screen working again but a very wierd setup. Xrandr shows this :

Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 8192 x 8192
VGA1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024      60.0*+   75.0  
DVI1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 495mm x 291mm
   1680x1050      60.0 +
   1600x1200      60.0  
   1400x1050      60.0  
   1280x1024      75.0     60.0* 
   1440x900       59.9  
   1280x960       60.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  
DVI2 disconnected (normal left inverted right x axis y axis)
VGA2 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 495mm x 291mm
   1680x1050      60.0 +
   1600x1200      60.0  
   1400x1050      60.0  
   1280x1024      75.0     60.0* 
   1440x900       59.9  
   1280x960       60.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 

Where did VGA2 and DVI2 came from?

00:02.0 VGA compatible controller: Intel Corporation 82Q963/Q965 Integrated Graphics Controller (rev 02)
00:02.1 Display controller: Intel Corporation 82Q963/Q965 Integrated Graphics Controller (rev 02)

Any attempt to use xrandr to change something result in a complete lockup.

Let me know if you need more info/debug.
Comment 1 Chris Wilson 2011-02-09 12:07:27 UTC
Created attachment 43173 [details] [review]
Use the EDID to confirm the connection status

The VGA2 and DVI2 are additional output capabilities of that ADD2, and the confusion occurs because the adapter is reporting the same monitor on multiple connectors. This does not surprise me.
Comment 2 Sebastien Caty 2011-02-09 12:27:30 UTC
> The VGA2 and DVI2 are additional output capabilities of that ADD2, and the
> confusion occurs because the adapter is reporting the same monitor on multiple
> connectors. This does not surprise me.

Patch applied. Now when KDM starts I get both screen sync "Out of Range".
Comment 3 Sebastien Caty 2011-02-09 12:28:16 UTC
Created attachment 43175 [details]
Xorg log file after EDID check patch
Comment 4 Chris Wilson 2011-02-09 12:30:12 UTC
Can you add drm.debug=0xe to your grub boot parameters and attach the dmesg from boot to just after Xorg.0.log starting?
Comment 5 Sebastien Caty 2011-02-09 12:44:04 UTC
Created attachment 43176 [details]
dmesg output with patch applied
Comment 6 Chris Wilson 2011-02-09 13:03:02 UTC
Created attachment 43177 [details] [review]
Only use the TMDS detection routine for TMDS connectors

2 bugs in one! Next...
Comment 7 Sebastien Caty 2011-02-09 13:19:31 UTC
(In reply to comment #6)
> Created an attachment (id=43177) [details]
> Only use the TMDS detection routine for TMDS connectors
> 
> 2 bugs in one! Next...

That did it, working well now. 

Thanks for those 2 very quick patch!
Comment 8 Chris Wilson 2011-02-09 13:38:09 UTC
Squashed the two into a single patch and applied to -fixes:

commit 139467433e50926d22338e9dc754feaaf94b9db0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Feb 9 20:01:16 2011 +0000

    drm/i915/sdvo: If we have an EDID confirm it matches the mode of the connect
    
    If we have an EDID for a digital panel, but we are probing a non-TMDS
    connector then we know that this is a false detection, and vice versa.
    This should reduce the number of bogus outputs on multi-function
    adapters that report the same output on multiple connectors.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34101
    Reported-by: Sebastien Caty <sebastien.caty@mrnf.gouv.qc.ca>
    Tested-by: Sebastien Caty <sebastien.caty@mrnf.gouv.qc.ca>
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: stable@kernel.org


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.