Re: [PATCH v3 5/8] drm/i915/vrr: Move CMRR hw registers to fix refresh rate path
"Borah, Chaitanya Kumar" <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-gfx,org.freedesktop.lists.intel-xe |
|---|---|
| Message-ID | <[email protected]> |
On 7/16/2026 5:32 PM, Golani, Mitulkumar Ajitkumar wrote: > > >> -----Original Message----- >> From: Borah, Chaitanya Kumar <[email protected]> >> Sent: 15 July 2026 18:45 >> To: Golani, Mitulkumar Ajitkumar <[email protected]>; >> [email protected] >> Cc: [email protected]; Shankar, Uma <[email protected]>; >> Nautiyal, Ankit K <[email protected]> >> Subject: Re: [PATCH v3 5/8] drm/i915/vrr: Move CMRR hw registers to fix >> refresh rate path >> >> >> >> On 7/14/2026 4:09 PM, Mitul Golani wrote: >>> Move CMRR register writes to fix refresh rate register write path to >>> consolidate with fix refresh rate implementation. >>> >>> Signed-off-by: Mitul Golani <[email protected]> >>> --- >>> drivers/gpu/drm/i915/display/intel_vrr.c | 22 +++++++++++----------- >>> 1 file changed, 11 insertions(+), 11 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/i915/display/intel_vrr.c >>> b/drivers/gpu/drm/i915/display/intel_vrr.c >>> index 25ce56d48bb1..95c7b0c05ec3 100644 >>> --- a/drivers/gpu/drm/i915/display/intel_vrr.c >>> +++ b/drivers/gpu/drm/i915/display/intel_vrr.c >>> @@ -337,6 +337,17 @@ void intel_vrr_set_fixed_rr_timings(const struct >> intel_crtc_state *crtc_state, >>> if (!intel_vrr_possible(crtc_state)) >>> return; >>> >>> + if (crtc_state->vrr.cmrr.enable) { >>> + intel_de_write(display, TRANS_CMRR_M_HI(display, >> transcoder), >>> + upper_32_bits(crtc_state->vrr.cmrr.cmrr_m)); >>> + intel_de_write(display, TRANS_CMRR_M_LO(display, >> transcoder), >>> + lower_32_bits(crtc_state->vrr.cmrr.cmrr_m)); >>> + intel_de_write(display, TRANS_CMRR_N_HI(display, >> transcoder), >>> + upper_32_bits(crtc_state->vrr.cmrr.cmrr_n)); >>> + intel_de_write(display, TRANS_CMRR_N_LO(display, >> transcoder), >>> + lower_32_bits(crtc_state->vrr.cmrr.cmrr_n)); >> >> Shouldn't TRANS_CMRR_N_HI be the last register to be written. > > No functional change has done, just moved to fix refresh rate path. > > In later patches when actual enable/disable sequence is computed, there suggested changes are applied. > The function is never touched in the later patches. > Thanks > >> >>> + } >>> + >>> intel_de_write(display, TRANS_VRR_VMIN(display, transcoder), >>> intel_vrr_fixed_rr_hw_vmin(crtc_state) - 1); >>> intel_de_write(display, TRANS_VRR_VMAX(display, transcoder), @@ >>> -648,17 +659,6 @@ void intel_vrr_set_transcoder_timings(const struct >> intel_crtc_state *crtc_state) >>> return; >>> } >>> >>> - if (crtc_state->vrr.cmrr.enable) { >>> - intel_de_write(display, TRANS_CMRR_M_HI(display, >> cpu_transcoder), >>> - upper_32_bits(crtc_state->vrr.cmrr.cmrr_m)); >>> - intel_de_write(display, TRANS_CMRR_M_LO(display, >> cpu_transcoder), >>> - lower_32_bits(crtc_state->vrr.cmrr.cmrr_m)); >>> - intel_de_write(display, TRANS_CMRR_N_HI(display, >> cpu_transcoder), >>> - upper_32_bits(crtc_state->vrr.cmrr.cmrr_n)); >>> - intel_de_write(display, TRANS_CMRR_N_LO(display, >> cpu_transcoder), >>> - lower_32_bits(crtc_state->vrr.cmrr.cmrr_n)); >>> - } >>> - >>> intel_vrr_set_fixed_rr_timings(crtc_state, cpu_transcoder); >>> intel_cmtg_set_vrr_timings(crtc_state); >>> >