Configure xorg.conf to output 2 MST streams through DisplayPort

Hi there,

Im working on a Nvidia Jetson Orin Nano with Jetpack 6.1. I’m attempting to configure the xorg.conf to output 2 MST streams via its DisplayPort (each will have their own parameters but for now using the same).

I followed the instructions outlined here:
https://download.nvidia.com/XFree86/Linux-32bit-ARM/340.17/README/configmultxscreens.html

and created the below xorg.conf
xorg.conf.txt (3.0 KB)

However, I don’t believe it configured it correctly, as shown in the xorg log:
Xorg.0.log (29.9 KB)

E.g. The below throws a warning but my assumption was that I was defining each screen as their own (screen 0 and screen 1) and setting these to the MST channels of the DP. Am I right in assuming that DFP-0 and DFP-1 are the DP MST channels 0 and 1 of the DisplayPort? Or do they not relate? Or would it be DFP-0.0 and DFP-0.1?

[    19.041] (WW) NVIDIA(0): Option "ConnectedMonitor" is specified on X screens 0 and 1,
[    19.041] (WW) NVIDIA(0):     but with conflicting values ("DFP-0", "DFP-1"); using
[    19.041] (WW) NVIDIA(0):     value "DFP-0" from X screen 0.

I cant seem to find many references/documentation on setting up Displayport MST via Xconfig so any support, info or direction would be greatly appreciated.

Or am I completely off target and need to be using gst-launch-1.0 to generate Gstreamer pipelines that can be forced down the displayport with the set payload ID’s for the seraliser to use.

Hi,

Just to clarify. Are you talking about enable 2 DP monitors at same time by using MST?

Hi Wayne, in essence yes. Sending 2 independent video streams down a single DP link using MST.

Where it dithers is I have it going to a DS90UH983 serialiser that sends it to 2x customer displays with deserialiser. But the input format of the serialiser is expecting 2 DP monitors at the same time using MST.

I read in the Jetson data sheet that is supports DPv1.2 and above so trying to configure it to force out these 2 video streams.

I am not quite sure how does the exact connection there.

Our MST would work if you have MST hub connected. There is no extra software needed in xorg conf.

That makes sense but how would I configure the MST?

E.g. to generate 2 video streams with specific timings & settings, specify the payload ID’s for each stream and then force it down the displayport.

Before I was able to achieve SST by adding my custom EDID and adding
–allow-empty-initial-configuration so it would send it through regardless. The DS90UH983 seraliser picked up on these settings but wont display anything as its in SST mode.

Alternative is that I stick to SST mode and adjust the payload ID of the video stream so I can switch between each of the custom displays to test individually (this is okay, but ideal is to have both displays on at same time).

We didn’t validate any custom EDID usecase on MST case. Currently I can only say this is not supported.

Even custom EDID with SST is not really under official support. More like experimental test.

Understood, is there any advice you can give regarding the current Xorg config and/or how to set custom payload ID’s?

Any direction on where to look would be greatly appreciated. Is xorg.conf the right place to be configuring the MST or do I need to look somewhere else?