Thread (45 messages) flat view 45 messages, 7 authors, 1d ago

Re: [PATCH RFC 06/25] drm/connector: hdmi: Add VTEM EMP generation

From: Daniel Stone <hidden>
Date: 2026-09-25 10:43:15
Also in: dri-devel, linux-arm-kernel, linux-rockchip, lkml

Hi Vidith,

On Fri, 25 Sept 2026 at 04:49, Vidith Madhu [off-list ref] wrote:
On Mon, 21 Sep 2026, Nicolas Frattaroli wrote:
quoted
+     if (!crtc_state->vrr_enabled) {
I don't think we should use the vrr_enabled CRTC property to determine
VRR_EN in the VTEM EMP. Transitioning the VRR mode sink-side typically causes
blanking, and it was discussed in patch [03/25] that drivers should be
free to handle vrr_enabled changes as a seamless switch since it only
concerns source-side VRR state (this is how the NVIDIA driver handles it).
Maybe it would make sense to extend the qms_enabled connector property
introduced in this patchset to an enum of {Off, Gaming, QMS}? This would allow
a standard path to control the VRR state on the sink, separately from
vrr_enabled.
I remain cautious of putting this amount of policy inside the kernel
and/or left to individual IHV choices. It's relatively obvious for
NVIDIA and AMD to say 'we'll always enable FRL/VRR to smash the
maximum rate (unless it's contraindicated by USB-C bandwidth somehow)
because the power burn is inconsequential', but if you were MediaTek
or Rockchip you'd probably make a different decision. Then again, if
you were an MTK device living on AC power, maybe you'd make the same
decision. Or maybe AMD would want to make a different decision on
laptop parts because the bandwidth is noticeable then.

The point is that I don't think we should bury this down in implicit
kernel state. I'm with you on surfacing this as an explicit connector
property. Possibly a bitmask of modes the user will use? e.g. {
frr_only = 0, maybe_gaming_vrr = (1 << 0),  maybe_qms = (1 << 1), ...
}? Or perhaps just a flag for whether the link should be negotiated as
wide as possible or tight to the existing mode params?

Cheers,
Daniel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help