Bug 707747 - [Arrandale] Triple monitor support
Summary: [Arrandale] Triple monitor support
Keywords:
Status: CLOSED CANTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-intel
Version: 15
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Adam Jackson
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-25 20:04 UTC by Nathaniel McCallum
Modified: 2018-04-11 09:36 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-07-05 18:15:13 UTC
Type: ---


Attachments (Terms of Use)
Xorg log (68.73 KB, text/plain)
2011-06-22 19:36 UTC, Nathaniel McCallum
no flags Details
dmesg (237.91 KB, text/plain)
2011-06-22 19:36 UTC, Nathaniel McCallum
no flags Details
/var/log/messages (87.37 KB, text/plain)
2011-06-22 19:38 UTC, Nathaniel McCallum
no flags Details

Description Nathaniel McCallum 2011-05-25 20:04:52 UTC
00:02.0 0300: 8086:0046 (rev 02) (prog-if 00 [VGA controller])
        Subsystem: 17aa:215a
        Flags: bus master, fast devsel, latency 0, IRQ 41
        Memory at f2000000 (64-bit, non-prefetchable) [size=4M]
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 1800 [size=8]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: i915
        Kernel modules: i915

I have the above video card in a laptop that, when docked, has four monitor ports (VGA, VGA, DVI, DP).  The hardware documentation gives clear instructions on how to have four monitors connected at once, so I don't think there is any hardware limitation. I have three monitors hooked up to it (four including the internal LCD). xrandr -q gives me:

Screen 0: minimum 320 x 200, current 2400 x 1920, maximum 8192 x 8192
LVDS1 connected (normal left inverted right x axis y axis)
   1600x900       60.0 +   50.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA1 connected 1200x1920+1200+0 left (normal left inverted right x axis y axis) 518mm x 324mm
   1920x1200      60.0*+
   1600x1200      60.0  
   1680x1050      60.0  
   1600x1000      60.0  
   1280x1024      75.0  
   1440x900       59.9  
   1280x960       60.0  
   1152x864       75.0  
   1280x720       60.0  
   1024x768       75.1     60.0  
   832x624        74.6  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 connected (normal left inverted right x axis y axis)
   1920x1200      60.0 +
   1600x1200      60.0  
   1680x1050      60.0  
   1280x1024      60.0  
   1440x900       59.9  
   1280x960       60.0  
   1024x768       60.0  
   800x600        60.3  
   640x480        60.0  
DP2 connected 1200x1920+0+0 left (normal left inverted right x axis y axis) 518mm x 324mm
   1920x1200      60.0*+
   1920x1080      60.0  
   1600x1200      60.0  
   1680x1050      60.0  
   1280x1024      60.0  
   1440x900       59.9  
   1280x960       60.0  
   1024x768       60.0  
   800x600        60.3  
   640x480        60.0  
DP3 disconnected (normal left inverted right x axis y axis)

I can use any two of the monitors at the same time.  I have tested every monitor to make sure they all work (they do).  However, whenever I try to enable a third monitor I receive this (where XXXXX is the third output I am attempting to enable): 
   xrandr: cannot find crtc for output XXXXX

Neither dmesg nor Xorg.0.log give anything interesting. I am guessing that the driver has a "hard stop" at two monitors.  However, in my configuration, the resolution I am looking for is 3600x1920, well below the 8192x8192 max stated by xrandr and below the 4096x4096 texture size of OpenGL.

So what gives?  Why can't I enable the third monitor?

Comment 1 Matěj Cepl 2011-05-27 20:03:59 UTC
Thanks for the bug report.  We have reviewed the information you have provided above, and there is some additional information we require that will be helpful in our diagnosis of this issue.

Please add drm.debug=0x04 to the kernel command line, restart computer, and attach

* your X server config file (/etc/X11/xorg.conf, if available),
* X server log file (/var/log/Xorg.*.log)
* output of the dmesg command, and
* system log (/var/log/messages)

to the bug report as individual uncompressed file attachments using the bugzilla file attachment link above.

We will review this issue again once you've had a chance to attach this information.

Thanks in advance.

Comment 2 Nathaniel McCallum 2011-06-22 19:35:25 UTC
$ uname -r
2.6.38.8-32.fc15.x86_64
$ cat /proc/cmdline
ro root=UUID=ee781aa1-dd8c-428c-b491-da43c232b4d2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet drm.debug=0x04

Logs to be attached in a minute.

Comment 3 Nathaniel McCallum 2011-06-22 19:36:01 UTC
Created attachment 506074 [details]
Xorg log

Comment 4 Nathaniel McCallum 2011-06-22 19:36:30 UTC
Created attachment 506075 [details]
dmesg

Comment 5 Nathaniel McCallum 2011-06-22 19:38:07 UTC
Created attachment 506076 [details]
/var/log/messages

Comment 6 Adam Jackson 2011-06-24 16:54:28 UTC
The hardware only has two CRTCs.  You can only display two distinct images at once on that chip, though you may be able to clone them onto multiple outputs.

Comment 7 Adam Jackson 2011-07-05 18:15:13 UTC
Closing per comment #6.  If there's some other heuristic you can think of for us to use here, please reopen, but the hardware simply can't give you three images at once.

Comment 8 Nathaniel McCallum 2011-07-05 18:20:26 UTC
I certainly understand your reasoning for closing the ticket. However, it would be better to have a clear way to communicate this "lack" of functionality to the user besides making them grep through dmesg.


Note You need to log in before you can comment on or make changes to this bug.