Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/i915: Use ddi_update_pipe in intel_dp_mst

In order to act upon content_protection property changes, we'll need to
implement the .update_pipe() hook. We can re-use intel_ddi_update_pipe
for this

Reviewed-by: Ramalingam C <ramalingam.c@intel.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20191203173638.94919-10-sean@poorly.run #v1
Link: https://patchwork.freedesktop.org/patch/msgid/20191212190230.188505-11-sean@poorly.run #v2
Link: https://patchwork.freedesktop.org/patch/msgid/20200117193103.156821-11-sean@poorly.run #v3
Link: https://patchwork.freedesktop.org/patch/msgid/20200218220242.107265-11-sean@poorly.run #v4
Link: https://patchwork.freedesktop.org/patch/msgid/20200305201236.152307-11-sean@poorly.run #v5
Link: https://patchwork.freedesktop.org/patch/msgid/20200429195502.39919-11-sean@poorly.run #v6
Link: https://patchwork.freedesktop.org/patch/msgid/20200623155907.22961-12-sean@poorly.run #v7

Changes in v2:
-None
Changes in v3:
-None
Changes in v4:
-None
Changes in v5:
-None
Changes in v6:
-None
Changes in v7:
-None
Changes in v8:
-None

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200818153910.27894-12-sean@poorly.run

authored by

Sean Paul and committed by
Ramalingam C
f1c7a36b 515d5755

+13 -5
+6 -5
drivers/gpu/drm/i915/display/intel_ddi.c
··· 4042 4042 intel_panel_update_backlight(state, encoder, crtc_state, conn_state); 4043 4043 } 4044 4044 4045 - static void intel_ddi_update_pipe(struct intel_atomic_state *state, 4046 - struct intel_encoder *encoder, 4047 - const struct intel_crtc_state *crtc_state, 4048 - const struct drm_connector_state *conn_state) 4045 + void intel_ddi_update_pipe(struct intel_atomic_state *state, 4046 + struct intel_encoder *encoder, 4047 + const struct intel_crtc_state *crtc_state, 4048 + const struct drm_connector_state *conn_state) 4049 4049 { 4050 4050 4051 - if (!intel_crtc_has_type(crtc_state, INTEL_OUTPUT_HDMI)) 4051 + if (!intel_crtc_has_type(crtc_state, INTEL_OUTPUT_HDMI) && 4052 + !intel_encoder_is_mst(encoder)) 4052 4053 intel_ddi_update_pipe_dp(state, encoder, crtc_state, 4053 4054 conn_state); 4054 4055
+6
drivers/gpu/drm/i915/display/intel_dp.h
··· 17 17 struct drm_i915_private; 18 18 struct drm_modeset_acquire_ctx; 19 19 struct drm_dp_vsc_sdp; 20 + struct intel_atomic_state; 20 21 struct intel_connector; 21 22 struct intel_crtc_state; 22 23 struct intel_digital_port; ··· 130 129 } 131 130 132 131 u32 intel_dp_mode_to_fec_clock(u32 mode_clock); 132 + 133 + void intel_ddi_update_pipe(struct intel_atomic_state *state, 134 + struct intel_encoder *encoder, 135 + const struct intel_crtc_state *crtc_state, 136 + const struct drm_connector_state *conn_state); 133 137 134 138 #endif /* __INTEL_DP_H__ */
+1
drivers/gpu/drm/i915/display/intel_dp_mst.c
··· 865 865 intel_encoder->compute_config_late = intel_dp_mst_compute_config_late; 866 866 intel_encoder->disable = intel_mst_disable_dp; 867 867 intel_encoder->post_disable = intel_mst_post_disable_dp; 868 + intel_encoder->update_pipe = intel_ddi_update_pipe; 868 869 intel_encoder->pre_pll_enable = intel_mst_pre_pll_enable_dp; 869 870 intel_encoder->pre_enable = intel_mst_pre_enable_dp; 870 871 intel_encoder->enable = intel_mst_enable_dp;