[PATCH weston v5 00/36] Head-based output configuration API a.k.a clone mode infrastructure

Pekka Paalanen ppaalanen at gmail.com
Thu Jan 11 11:45:53 UTC 2018


On Wed, 10 Jan 2018 15:35:36 +0100
Daniel Vetter <daniel at ffwll.ch> wrote:

> On Wed, Dec 20, 2017 at 02:58:14PM -0500, Alex Deucher wrote:
> > On Mon, Dec 18, 2017 at 2:38 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:  
> > > On Fri, 15 Dec 2017 15:35:53 -0500
> > > Alex Deucher <alexdeucher at gmail.com> wrote:
> > >  
> > >> On Fri, Dec 15, 2017 at 2:27 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:  
> > >> > On Thu, 14 Dec 2017 10:11:32 -0500
> > >> > Alex Deucher <alexdeucher at gmail.com> wrote:
> > >> >  
> > >> >> On Thu, Dec 14, 2017 at 6:40 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:  
> > >> >> > From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
> > >> >> >
> > >> >> > Hi all,
> > >> >> >
> > >> >> > this is v5 (to match the numbering of my public branches) of the libweston user
> > >> >> > facing API and infrastructure for supporting shared-CRTC clone mode.
> > >> >> >
> > >> >> > Previous submission with rationale:
> > >> >> > https://lists.freedesktop.org/archives/wayland-devel/2017-October/035604.html
> > >> >> >
> > >> >> > Design document:
> > >> >> > https://phabricator.freedesktop.org/w/wayland/weston/atomic-output-config/
> > >> >> >
> > >> >> > The goal:
> > >> >> > https://phabricator.freedesktop.org/T7727  
> > >> >>
> > >> >> FWIW, at least with the DC modesetting code in amdgpu, we can
> > >> >> synchronize multiple crtcs to the same timing when the monitors all
> > >> >> support the same mode timing or with monitors that have different
> > >> >> timings using variable length blanking periods on freesync capable
> > >> >> monitors.  
> > >> >
> > >> > Hi Alex,
> > >> >
> > >> > that's cool. How does userspace take advantage of that, how do you
> > >> > configure KMS/atomic to make use of that? Is it supported through
> > >> > legacy KMS (non-atomic) as well?  
> > >>
> > >> the driver automatically syncs all heads that it can at modeset time I think.  
> > >
> > > Ok, but we need strong timing guarantees to be able to use it, just
> > > like we have when we have a single CRTC routed to several connectors.
> > > Is there such a guarantee that continues not only on initial modeset
> > > but through all following flips as well?  
> > 
> > The timing is synchronized so in theory the flips should happen during
> > the same blanking period.  I think atomic may be able to guarantee
> > that, but while likely I don't think non-atomic can guarantee it.  
> 
> We've discussed this a bit internally at intel, and we'll probably have to
> export a property where userspace can request that 1 crtc is ganged to
> another one. atomic_check in the kernel can then make sure that's either
> the case and reject the modeset, and if the modeset passes, userspace
> knows that the driver will make sure the flips will stay in sync forever.
> 
> Without that generic userspace can indeed not make any assumptions, since
> different CRTC might have different clock sources and slowly drift.

Sounds like a nice plan. Weston cannot take advantage of gen-lock
otherwise.


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20180111/ebff79e7/attachment.sig>


More information about the wayland-devel mailing list