[PATCH weston v11 03/13] compositor-drm: Add DRM property cache

Pekka Paalanen ppaalanen at gmail.com
Tue Jul 25 12:13:56 UTC 2017


On Tue, 25 Jul 2017 11:50:58 +0100
Daniel Stone <daniel at fooishbar.org> wrote:

> Hi,
> 
> On 25 July 2017 at 11:28, Pekka Paalanen <ppaalanen at gmail.com> wrote:
> > On Mon, 24 Jul 2017 18:13:39 +0100
> > Daniel Stone <daniel at fooishbar.org> wrote:  
> >> > I believe this should shorten to: "Call this for every DRM object
> >> > individually once."
> >> >
> >> > The language about status changes is probably a remnant of the value
> >> > caching days.  
> >>
> >> When a connector is hotplugged, that can invalidate the enum
> >> properties, so we still need to re-scan.  
> >
> > Does that not mean that a new DRM connector object appears? Or that an
> > existing DRM connector object magically becomes rewritten in which case
> > what do we use for triggering the re-scan?
> >
> > Do we need to re-scan all DRM connector objects every time we get a
> > hotplug event?
> >
> > I mean, now that you said that, and I have read the doc comment a dozen
> > times more, I'm getting a feeling of what it's trying to say in a very
> > very compressed form. Expand a bit, please. :-)  
> 
> Well, not every panel is identical. Some are going to have different
> capabilities to others. None of these apply to EDID/DPMS, but here are
> a few examples:
> 
> There are patches on dri-devel@ for HDCP support at the moment. On a
> non-HDCP-capable sink, you might want to have a single 'unavailable'
> enum available, but then when you hotplug to a HDCP-capable sink,
> suddenly you have 'enabled' and 'disabled' enum.
> 
> TV outputs have a surplus of available connector properties, including
> which connector type to use (e.g. component vs. S-Video), 'flicker
> reduction' / filtering, overscan, etc.
> 
> For scaling, you can control a surprising amount through, e.g., HDMI
> infoframes. Again, whether or not this is available - and what's
> variable - depends on your sink. So just plugging in a different
> device might give you different options for scaling.
> 
> Those are just the ones I could find with a quick scan, but they are
> all examples of enum properties whose values differ depending on the
> currently-connected device. Which is why we need to rescan on hotplug.

Yes, loud and clear now, makes perfect sense. So on every hotplug
event, one needs to re-scan at least the connectors whose connectivity
status changed.


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/20170725/e310f46a/attachment.sig>


More information about the wayland-devel mailing list