Re: [PATCH] drm/i915: Round to closest in g4x+ HDMI clock readout

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 26 Sep 2022, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote:
> From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
>
> On pre-ddi platforms we have slightly different code being
> used for HDMI TMDS clock to dotclock conversion between the
> state computation and state readout. Both of these need to
> round the same way in order to not get a mismatch between
> the computed and read out states. Fix up the rounding
> direction in the readout path to match what is used during
> state computation.
>
> Another option would to just use intel_crtc_dotclock()
> in the readout path as well, but I don't really want to
> do that as the current code more accurately represents
> how the hardware really works; The HDMI port register
> defines whether we're actually outputting 8bpc or 12bpc
> over HDMI, and the PIPECONF bpc setting just defines what
> goes over FDI between the CPU and PCH. The fact that we
> try to cram all that into a single pipe_bpp during state
> computation is perhaps not entirely great...
>
> Fixes: f2c9df101095 ("drm/i915: Round TMDS clock to nearest")
> Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>

> ---
>  drivers/gpu/drm/i915/display/g4x_hdmi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/g4x_hdmi.c b/drivers/gpu/drm/i915/display/g4x_hdmi.c
> index 5606c667e422..8aadf96fa5e9 100644
> --- a/drivers/gpu/drm/i915/display/g4x_hdmi.c
> +++ b/drivers/gpu/drm/i915/display/g4x_hdmi.c
> @@ -120,7 +120,7 @@ static void intel_hdmi_get_config(struct intel_encoder *encoder,
>  	pipe_config->hw.adjusted_mode.flags |= flags;
>  
>  	if ((tmp & SDVO_COLOR_FORMAT_MASK) == HDMI_COLOR_FORMAT_12bpc)
> -		dotclock = pipe_config->port_clock * 2 / 3;
> +		dotclock = DIV_ROUND_CLOSEST(pipe_config->port_clock * 2, 3);
>  	else
>  		dotclock = pipe_config->port_clock;

-- 
Jani Nikula, Intel Open Source Graphics Center




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux