]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Round to closest in g4x+ HDMI clock readout
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 26 Sep 2022 19:30:21 +0000 (22:30 +0300)
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>
Mon, 3 Oct 2022 08:46:03 +0000 (09:46 +0100)
commit59a74bf79dd54478762aae37f7bf3eab622f9c54
tree20f3e6a886941746bf34c57a524a17989e5cb557
parentaa86b24b6e5d3153b83e343fbf9029ae0aabb98a
drm/i915: Round to closest in g4x+ HDMI clock readout

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: 63f0d1ce303c ("drm/i915: Round TMDS clock to nearest")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220926193021.23287-1-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
(cherry picked from commit 86b972ef1091882d66672399c6f8ebdd12a3b707)
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
drivers/gpu/drm/i915/display/g4x_hdmi.c