]> www.infradead.org Git - users/jedix/linux-maple.git/commit
drm/i915/mst: fix INT_MAX to .4 fixed point conversion mistake
authorJani Nikula <jani.nikula@intel.com>
Tue, 4 Feb 2025 15:37:17 +0000 (17:37 +0200)
committerJani Nikula <jani.nikula@intel.com>
Wed, 5 Feb 2025 13:39:07 +0000 (15:39 +0200)
commitb5ee4c2852d381a8f5351231561aa2faed474fe4
tree3fc2fa79ea78f7cc7dacfbf2a4f4237a0ef3d53c
parenta5ebe00c2ace15634c02e3c64f1b28253553495b
drm/i915/mst: fix INT_MAX to .4 fixed point conversion mistake

intel_dp_mtp_tu_compute_config() conversion to use .4 fixed point didn't
take into account that intel_dp_mst_max_dpt_bpp() may return INT_MAX
when the transport limitation is not relevant. Converting INT_MAX to .4
fixed point results in -1.0, which then gets used as if it were a real
max BPP value:

i915 0000:00:02.0: [drm:intel_dp_mtp_tu_compute_config [i915]] Limiting bpp to max DPT bpp (24.0000 -> -1.0000)
i915 0000:00:02.0: [drm:intel_dp_mtp_tu_compute_config [i915]] Looking for slots in range min bpp 18.0000 max bpp -1.0000

Just return 0 for "no max DPT BPP", and handle it explicitly.

Fixes: 67782bf6e8a6 ("drm/i915/mst: Convert intel_dp_mtp_tu_compute_config() to .4 format")
Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13624
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250204153717.2996923-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_dp_mst.c