Bug 30330

Summary: No DisplayPort signal in UMS mode
Product: xorg Reporter: Jan-Marek Glogowski <glogow>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: critical    
Priority: medium    
Version: git   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log from DisplayPort usage
none
Xorg log using the VGA port
none
Xorg.conf
none
Config DisplayPort adapters none

Description Jan-Marek Glogowski 2010-09-22 10:58:37 UTC
Created attachment 38883 [details]
Xorg log from DisplayPort usage

I'm on Ubuntu Hardy unsing the latest ati git build.

XServer: 1.4.1~git
Mesa: 7.0.3
DRI: libdrm 2.3.0 / DRI1
Kernel: 2.6.32 (Ubuntu Lucid backport without KMS)

The VGA-0-Port is working.

Attaching the monitor via a DVI <-> DisplayPort adapter seems to work fine too, except that the monitor doesn't get a signal.
Comment 1 Jan-Marek Glogowski 2010-09-22 10:59:43 UTC
Created attachment 38884 [details]
 Xorg log using the VGA port
Comment 2 Jan-Marek Glogowski 2010-09-23 02:16:40 UTC
Created attachment 38896 [details]
Xorg.conf
Comment 3 Jan-Marek Glogowski 2010-09-23 02:27:01 UTC
$ DISPLAY=:0 xrandr

Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 1280 x 1280
DisplayPort-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024      60.0*+   75.0     59.9
   1280x960       59.9
   1152x864       75.0     74.8
   1024x768       75.1     70.1     60.0
   832x624        74.6
   800x600        72.2     75.0     60.3     56.2
   640x480        75.0     72.8     66.7     60.0
   720x400        70.1
VGA-0 disconnected (normal left inverted right x axis y axis)
Comment 4 Jan-Marek Glogowski 2010-10-20 04:34:58 UTC
I just patched the source to build the current git version without DRM.

Still the same result: the driver detects the monitor correctly, the vlc connection is working, but there is not monitor signal.
Comment 5 Jan-Marek Glogowski 2010-10-22 16:09:18 UTC
Created attachment 39641 [details] [review]
Config DisplayPort adapters

I finally found and (kind of) fixed the bug.

atombios_maybe_hdmi_mode defaults to ATOM_ENCODER_MODE_HDMI, if EDID_COMPLETE_RAWDATA is not defined (as it's not in my old Xorg servers "edid.h").

The patch introduces the new option "DPFallbackAdapter" and changes the default to DVI adapter.

EDID_COMPLETE_RAWDATA was introduced with Xorg server 1.6.

I have a few more patches to compile git against Xorg server 1.4 (no exaGetPixmapDriverPrivate, disable-dri build, disabled EXA build), so I couldn't compile test this single patch on git HEAD alone.
Comment 6 Alex Deucher 2010-10-22 16:37:53 UTC
Better to just use DVI if we don't know and avoid all the additional mess.  Although DVI vs. HDMI shouldn't really matter as far as the monitor is concerned as they are both TMDS.  Does this patch work?

--- a/src/atombios_output.c
+++ b/src/atombios_output.c
@@ -410,7 +410,7 @@ atombios_maybe_hdmi_mode(xf86OutputPtr output)
 {
 #ifndef EDID_COMPLETE_RAWDATA
     /* there's no getting this right unless we have complete EDID */
-    return ATOM_ENCODER_MODE_HDMI;
+    return ATOM_ENCODER_MODE_DVI;
 #else
     if (output && xf86MonitorIsHDMI(output->MonInfo))
        return ATOM_ENCODER_MODE_HDMI;
Comment 7 Jan-Marek Glogowski 2010-10-24 05:36:25 UTC
It works for me, but I don't know, if it'll work for HDMI adapters (and I can't check). That's why I introduced the new option.
Comment 8 Alex Deucher 2010-10-24 08:26:49 UTC
Should be fine.  Thanks for tracking this down.  Pushed:
1e3ede62c39307d0210cb2044badd619a4f44fec

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.