[PATCH] drm: document TV margin properties

Simon Ser contact at emersion.fr
Tue Feb 28 09:53:47 UTC 2023


On Tuesday, February 28th, 2023 at 09:46, Pekka Paalanen <ppaalanen at gmail.com> wrote:

> can these be negative as well, to achieve overscan and not just
> underscan? Did I get overscan and underscan right... these are related
> to under/overscan, aren't they?
> 
> Hmm, no, I guess that doesn't make sense, there is no room in the
> signal to have negative margins, it would result in clipping the
> framebuffer while scaling up. So this can only be used to scale
> framebuffer down, add borders, and the TV then scales it back up
> again?

Correct.

> Looks like neither my Intel nor AMD cards support these, I don't see
> the properties. More things to the list of KMS properties Weston needs
> to explicitly control. Oh, it seems vc4 exclusive for now.

i915 does support it but for TV connectors only (i915/display/intel_tv.c).
gud also supports it.

> Where does this text appear in the HTML kernel docs? I tried to look at
> drm_connector.c but I cannot find the spot where this patch applies.

Here:
https://dri.freedesktop.org/docs/drm/gpu/drm-kms.html#analog-tv-specific-connector-properties

> Is this actually a connector property? How does that work, should this
> not be a CRTC property?

Yeah, it's a connector property for some reason.

> Is this instead not scaling anything but simply sending metadata
> through the connector?

No metadata is sent. This is purely equivalent to setting up CRTC_*
properties to scale the planes.

> Or are there underlying requirements that this connector property is
> actually affecting the CRTC, which means that it is fundamentally
> impossible to use multiple connectors with different values on the same
> CRTC? And drivers will reject any attempt, so there is no need to
> define what conflicting settings will do?

I don't think any driver above supports cloning CRTCs for these
connector types. i915 sets clonable = false for these connectors.
vc4 picks the first connector's TV margins, always.

> IOW, does simply the existence of these properties on a connector
> guarantee that the connector must be the only one on a CRTC?

I suppose that there could exist some hardware capable of applying
margins post-CRTC? Such driver could support cloning CRTCs and still
applying the connector margins correctly.


More information about the dri-devel mailing list