Hi,

On 08-01-17 15:04, Yu, Qiang wrote:

Hi Hans,

Thanks for your info, I give it a quick try:
Section "OutputClass"
    Identifier "amd"
    MatchDriver "amdgpu"
    Driver "modesetting"
    Option "PrimaryGPU" "yes"
EndSection

Section "OutputClass"
    Identifier "intel"
    MatchDriver "i915_bpo"
    Driver "modesetting"
EndSection

Seems indeed some bugs in it, xserver start as expected with amdgpu as master
and i915 as slave (Xorg.0.log attached), but the screen is black, and run 
xrandr:
1. "xrandr --setprovideroutputsource 1 0" won't add any iGPU's output (0 is 
amdgpu, 1 is intel)
2. "xrandr --setprovideroutputsource 0 1" crash the xserver:
Xorg: ../../../xserver/dix/dispatch.c:4018: AttachOutputGPU: Assertion 
`new->isGPU' failed.
But I believe it can be fixed.

MS_ALL_IN_ONE method is my previous work when xserver has no proper PRIME sync.
And I find it's also useful for embedded platforms like iMX6/etnaviv.

I agree that it would be great to have a solution to have things just work
on iMX6/etnaviv, but we should be able to autodetect things on such a setup
without needing a special environment variable. Just an xorg.conf Outputclass 
snippet
matching the drm driver and marking that with Option "PrimaryGPU" "yes" should 
suffice.

> So published here.
As the MS_ALL_IN_ONE environment variable, I can change it to be an option of 
modesetting.

I think we don't really need another option, the Option "PrimaryGPU" "yes" 
should be
sufficient, combined with bug-fixes to the modesetting driver for cases where 
that
does not work.

Now as the PRIME sync is upstreamed, I think they can achieve nearly same 
effect in theory,

Right, so we really should use that and not add a second code path implementing 
in essence
the same thing.

If you could look into this and fix the modesetting driver to support this that 
would be
great.

but still minor difference when implementation in each DDX like modesetting 
need a proper
implementation of PresentSharedPixmap() for “OpenGL Syncing To VBlank”.

I think we should just fix things for the modesetting driver now, AFAICT most 
other
drivers are becoming more or less obsolete (or at least the should). Besides 
since your
original solution modifies the modesetting driver, it too has the drawback of 
only
working with the modesetting driver.

Regards,

Hans
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to