On Mon, Sep 15, 2025 at 03:37:07PM +0000, Derek Foreman wrote:
> On 9/15/25 5:01 AM, Michel Dänzer wrote:
> > On 12.09.25 15:45, Derek Foreman wrote:
> >> On 9/12/25 2:33 AM, Chuanyu Tseng wrote:
> >>> Introduce a DRM interface for DRM clients to further restrict the
> >>> VRR Range within the panel supported VRR range on a per-commit
> >>> basis.
> >>>
> >>> The goal is to give DRM client the ability to do frame-doubling/
> >>> ramping themselves, or to set lower static refresh rates for power
> >>> savings.
> >> I'm interested in limiting the range of VRR to enable HDMI's QMS/CinemaVRR 
> >> features - ie: switching to a fixed rate for media playback without 
> >> incurring screen blackouts/resyncs/"bonks" during the switch.
> >>
> >> I could see using an interface such as this to do the frame rate limiting, 
> >> by setting the lower and upper bounds both to a media file's framerate. 
> >> However for that use case it's not precise enough, as video may have a 
> >> rate like 23.9760239... FPS.
> >>
> >> Would it be better to expose the limits as a numerator/denominator pair so 
> >> a rate can be something like 24000/1001fps?
> > I was thinking the properties could allow directly specifying the minimum 
> > and maximum number of total scanlines per refresh cycle, based on the 
> > assumption the driver needs to program something along those lines.
> 
> Surprisingly, this would also not be precise enough for exact media 
> playback, as the exact intended framerate might not result in an integer 
> number of scan lines. When that happens a QMS/CinemaVRR capable HDMI 
> source is expected to periodically post a frame with a single extra scan 
> line to minimize the error.

Intel VRR hardware has a "CMRR" feature where it can automagically
tweak the vtotal between frames to maintain a non integer average.

As for knobs to limit the min/max refresh rates, technically you
wouldn't need the max knob because that is ultimately defined by
the vtotal of the supplied timings. But I guess if you have a
knob to limit the min then a max knob might be convenient as well.

-- 
Ville Syrjälä
Intel

Reply via email to