UDL device cannot get its own screen
Böszörményi Zoltán
zboszor at pr.hu
Wed Oct 23 06:41:05 UTC 2019
2019. 10. 22. 22:57 keltezéssel, Ilia Mirkin írta:
> On Tue, Oct 22, 2019 at 11:50 AM Böszörményi Zoltán <zboszor at pr.hu> wrote:
>>
>> Hi,
>>
>> I have the below configuration for an Intel based POS system that,
>> while advertises 3 outputs (DP1, VGA1 and HDMI1 with xf86-video-intel),
>> only two are usable. DP1 for the built-in touchscreen and VGA1 for
>> the external VGA connector.
>>
>> I wanted to use an USB DisplayLink device as the 3rd output, with all
>> three output using its own Screen number, i.e. :0.0 :0.1 and :0.2.
>>
>> [...]
>>
>> How can I set up 3 different Screens correctly for 3 separate fullscreen
>> applications?
>>
>> I am using Xorg 1.20.4 patched with the "autobind GPUs to the screen"
>> patch from Dave Airlie that at least wakes up the UDL device and makes
>> it visible without extra magic with providers/sinks.
>
> If it's being treated as a GPU, that's your first problem for this
> kind of setup. You should see modeset(2), in your logs, but I suspect
> you're seeing modeset(G0) (the "G" indicates "GPU").
modeset(2) is the unconnected HDMI-1 output advertised by the Intel chip.
modeset(G0) is UDL.
>
>>
>> [...]
>> Section "Monitor"
>> Identifier "DVI-I-1-1"
>
> The others are Monitor-*, this one isn't. You probably want this to be
> DVI-I-1, as noted below. I guess you get the extra -1 from seeing it
> as a slaved GPU's output in your current configuration.
Indeed. Fixed.
>
>> Option "AutoServerLayout" "on"
>> Option "Rotate" "normal"
>> EndSection
>>
>> [...]
>>
>> Section "Device"
>> Identifier "UDL"
>> Driver "modesetting"
>> Option "kmsdev" "/dev/dri/card0"
>> Screen 2
>> Option "Monitor-DVI-I-1-1" "DVI-I-1-1"
>
> I think you have an extra -1 in here (and the monitor name doesn't
> exist as per above). And I think the "Screen" index is wrong -- it's
> not what one tends to think it is, as I recall. I think you can just
> drop these lines though.
Without "Screen N" lines, all the outputs are assigned to :0
so the screen layout setup in the ServerLayout section is not
applied properly.
I have read Dave Airlie's patch (that has been accepted into Xorg
1.21.0) more closely, and it indeed binds UDL to DISPLAY=:0
I think this patch needs a followup patch so it would use the
screen ID specified in the Device section.
>
>> EndSection
>>
>> [...]
>>
>> Section "ServerLayout"
>> Identifier "LAYOUT"
>> Option "AutoServerLayout" "on"
>> Screen 0 "SCREEN"
>> Screen 1 "SCREEN1" RightOf "SCREEN"
>> Screen 2 "SCREEN2" RightOf "SCREEN1"
>> EndSection
>>
>> Best regards,
>> Zoltán Böszörményi
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/dri-devel
More information about the xorg
mailing list