diff options
| author | Imre Deak <[email protected]> | 2025-02-06 00:17:26 +0000 |
|---|---|---|
| committer | Imre Deak <[email protected]> | 2025-02-06 16:20:12 +0000 |
| commit | 93ecd4fbad16c90a9aded8e599a4ef75dada9f82 (patch) | |
| tree | aca163857d808ff28581f4c2b67530a36e040415 /drivers/gpu/drm/i915/display/intel_dp_mst.c | |
| parent | drm/i915/fbdev: Use fb->normal_view.gtt (diff) | |
| download | kernel-93ecd4fbad16c90a9aded8e599a4ef75dada9f82.tar.gz kernel-93ecd4fbad16c90a9aded8e599a4ef75dada9f82.zip | |
drm/i915/dp_mst: Fix getting display pointer in intel_dp_mst_compute_min_hblank()
The MST intel_connector::encoder pointer is NULL if the connector hasn't
been enabled before, so it can't be used to retrieve the display
pointer. Use instead the crtc_state and drop the unused connector
parameter.
v2: Use the crtc_state and drop the unused connector parameter.
Fixes: a5ebe00c2ace ("drm/i915/dp: Guarantee a minimum HBlank time")
Reported-and-tested-by: Khaled Almahallawy <[email protected]>
Closes: https://lore.kernel.org/all/[email protected]
Reviewed-by: Khaled Almahallawy <[email protected]> #v1
Cc: Arun R Murthy <[email protected]>
Cc: Suraj Kandpal <[email protected]>
Signed-off-by: Imre Deak <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_dp_mst.c')
| -rw-r--r-- | drivers/gpu/drm/i915/display/intel_dp_mst.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c index cc6e4ca37519..2324ca8f6096 100644 --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c @@ -210,11 +210,9 @@ static int intel_dp_mst_dsc_get_slice_count(const struct intel_connector *connec } static void intel_dp_mst_compute_min_hblank(struct intel_crtc_state *crtc_state, - struct intel_connector *connector, int bpp_x16) { - struct intel_encoder *encoder = connector->encoder; - struct intel_display *display = to_intel_display(encoder); + struct intel_display *display = to_intel_display(crtc_state); const struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; int symbol_size = intel_dp_is_uhbr(crtc_state) ? 32 : 8; @@ -301,7 +299,7 @@ int intel_dp_mtp_tu_compute_config(struct intel_dp *intel_dp, local_bw_overhead = intel_dp_mst_bw_overhead(crtc_state, false, dsc_slice_count, link_bpp_x16); - intel_dp_mst_compute_min_hblank(crtc_state, connector, link_bpp_x16); + intel_dp_mst_compute_min_hblank(crtc_state, link_bpp_x16); intel_dp_mst_compute_m_n(crtc_state, local_bw_overhead, |
