winex11.drv: xrandr1.2 don't assume CRTC 0 is active

Patrick Rudolph siro at das-labor.org
Wed Aug 1 10:47:12 CDT 2012


Am 01.08.2012 15:42, schrieb Henri Verbeet:
> On 30 July 2012 22:05,  <siro at das-labor.org> wrote:
>> As far as I understood CRTC 0 is disabled, because it is only 
>> capable of
>> generating analog video signals. I'm using a HDMI monitor, which is
>> controlled by CRTC 1. To use multihead (not clone), you have to 
>> connect a
>> analog (VGA) and digital monitor (in my case). Each monitor will use 
>> one
>> CRTC and each CRTC will show a different part of the same screen. 
>> With this
>> in mind every active CRTC should be listed as "native Windows 
>> monitor".
>
> Mostly for reference, what driver are you using? Have you explicitly
> configured a primary display at all (either through the xorg.conf
> "Primary" option for the monitor, or with the xrandr utility), or is
> it just picking up the first display connector and incorrectly
> assuming it's connected?

I'm using ATI driver with xorg.conf but there's no "Primary" option.
I investigated some time and found the problem:
xrandr reports 0 outputs on the first disabled crtc, but there is a 
"connected" outputs that block this crtc.
Connected means that it is plugged in weather or not it is powered or 
in use.
This is why xrandr connects my "primary" monitor to crtc 1.
After unplugging all other monitors crtc 0 is used.
This example shows that with xrandr 1.2 multi-head support is 
necessary.
To introduce multihead support every CRTC that has "connected" primary 
outputs should be seen as display-device.
Since Windows is aware of disabled display-devices this should be no 
problem.
EnumDisplayDevices should return all this CRTCs and let the application 
decide which to choose.

Regards,
Patrick



More information about the wine-devel mailing list