Lines Matching refs:encoder
61 static void g4x_dp_set_clock(struct intel_encoder *encoder, in g4x_dp_set_clock() argument
64 struct intel_display *display = to_intel_display(encoder); in g4x_dp_set_clock()
93 static void intel_dp_prepare(struct intel_encoder *encoder, in intel_dp_prepare() argument
96 struct intel_display *display = to_intel_display(encoder); in intel_dp_prepare()
97 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_prepare()
98 enum port port = encoder->port; in intel_dp_prepare()
300 static bool intel_dp_get_hw_state(struct intel_encoder *encoder, in intel_dp_get_hw_state() argument
303 struct intel_display *display = to_intel_display(encoder); in intel_dp_get_hw_state()
304 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_get_hw_state()
309 encoder->power_domain); in intel_dp_get_hw_state()
314 encoder->port, pipe); in intel_dp_get_hw_state()
316 intel_display_power_put(display, encoder->power_domain, wakeref); in intel_dp_get_hw_state()
336 static void intel_dp_get_config(struct intel_encoder *encoder, in intel_dp_get_config() argument
339 struct intel_display *display = to_intel_display(encoder); in intel_dp_get_config()
340 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_get_config()
342 enum port port = encoder->port; in intel_dp_get_config()
345 if (encoder->type == INTEL_OUTPUT_EDP) in intel_dp_get_config()
406 intel_edp_fixup_vbt_bpp(encoder, pipe_config->pipe_bpp); in intel_dp_get_config()
408 intel_audio_codec_get_config(encoder, pipe_config); in intel_dp_get_config()
412 intel_dp_link_down(struct intel_encoder *encoder, in intel_dp_link_down() argument
415 struct intel_display *display = to_intel_display(encoder); in intel_dp_link_down()
416 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_link_down()
418 enum port port = encoder->port; in intel_dp_link_down()
474 vlv_pps_port_disable(encoder, old_crtc_state); in intel_dp_link_down()
477 static void g4x_dp_audio_enable(struct intel_encoder *encoder, in g4x_dp_audio_enable() argument
481 struct intel_display *display = to_intel_display(encoder); in g4x_dp_audio_enable()
482 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in g4x_dp_audio_enable()
491 intel_audio_codec_enable(encoder, crtc_state, conn_state); in g4x_dp_audio_enable()
494 static void g4x_dp_audio_disable(struct intel_encoder *encoder, in g4x_dp_audio_disable() argument
498 struct intel_display *display = to_intel_display(encoder); in g4x_dp_audio_disable()
499 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in g4x_dp_audio_disable()
504 intel_audio_codec_disable(encoder, old_crtc_state, old_conn_state); in g4x_dp_audio_disable()
512 struct intel_encoder *encoder, in intel_disable_dp() argument
516 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_disable_dp()
531 struct intel_encoder *encoder, in g4x_disable_dp() argument
535 intel_disable_dp(state, encoder, old_crtc_state, old_conn_state); in g4x_disable_dp()
539 struct intel_encoder *encoder, in vlv_disable_dp() argument
543 intel_disable_dp(state, encoder, old_crtc_state, old_conn_state); in vlv_disable_dp()
547 struct intel_encoder *encoder, in g4x_post_disable_dp() argument
551 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in g4x_post_disable_dp()
552 enum port port = encoder->port; in g4x_post_disable_dp()
560 intel_dp_link_down(encoder, old_crtc_state); in g4x_post_disable_dp()
568 struct intel_encoder *encoder, in vlv_post_disable_dp() argument
572 intel_dp_link_down(encoder, old_crtc_state); in vlv_post_disable_dp()
576 struct intel_encoder *encoder, in chv_post_disable_dp() argument
580 intel_dp_link_down(encoder, old_crtc_state); in chv_post_disable_dp()
583 chv_data_lane_soft_reset(encoder, old_crtc_state, true); in chv_post_disable_dp()
665 struct intel_encoder *encoder, in intel_enable_dp() argument
670 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_enable_dp()
679 vlv_pps_port_enable_unlocked(encoder, pipe_config); in intel_enable_dp()
694 vlv_wait_port_ready(encoder, lane_mask); in intel_enable_dp()
706 struct intel_encoder *encoder, in g4x_enable_dp() argument
710 intel_enable_dp(state, encoder, pipe_config, conn_state); in g4x_enable_dp()
715 struct intel_encoder *encoder, in vlv_enable_dp() argument
723 struct intel_encoder *encoder, in g4x_pre_enable_dp() argument
727 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in g4x_pre_enable_dp()
728 enum port port = encoder->port; in g4x_pre_enable_dp()
730 intel_dp_prepare(encoder, pipe_config); in g4x_pre_enable_dp()
738 struct intel_encoder *encoder, in vlv_pre_enable_dp() argument
742 vlv_phy_pre_encoder_enable(encoder, pipe_config); in vlv_pre_enable_dp()
744 intel_enable_dp(state, encoder, pipe_config, conn_state); in vlv_pre_enable_dp()
748 struct intel_encoder *encoder, in vlv_dp_pre_pll_enable() argument
752 intel_dp_prepare(encoder, pipe_config); in vlv_dp_pre_pll_enable()
754 vlv_phy_pre_pll_enable(encoder, pipe_config); in vlv_dp_pre_pll_enable()
758 struct intel_encoder *encoder, in chv_pre_enable_dp() argument
762 chv_phy_pre_encoder_enable(encoder, pipe_config); in chv_pre_enable_dp()
764 intel_enable_dp(state, encoder, pipe_config, conn_state); in chv_pre_enable_dp()
767 chv_phy_release_cl2_override(encoder); in chv_pre_enable_dp()
771 struct intel_encoder *encoder, in chv_dp_pre_pll_enable() argument
775 intel_dp_prepare(encoder, pipe_config); in chv_dp_pre_pll_enable()
777 chv_phy_pre_pll_enable(encoder, pipe_config); in chv_dp_pre_pll_enable()
781 struct intel_encoder *encoder, in chv_dp_post_pll_disable() argument
785 chv_phy_post_pll_disable(encoder, old_crtc_state); in chv_dp_post_pll_disable()
810 static void vlv_set_signal_levels(struct intel_encoder *encoder, in vlv_set_signal_levels() argument
813 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in vlv_set_signal_levels()
891 vlv_set_phy_signal_level(encoder, crtc_state, in vlv_set_signal_levels()
896 static void chv_set_signal_levels(struct intel_encoder *encoder, in chv_set_signal_levels() argument
899 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in chv_set_signal_levels()
974 chv_set_phy_signal_level(encoder, crtc_state, in chv_set_signal_levels()
1017 g4x_set_signal_levels(struct intel_encoder *encoder, in g4x_set_signal_levels() argument
1020 struct intel_display *display = to_intel_display(encoder); in g4x_set_signal_levels()
1021 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in g4x_set_signal_levels()
1065 snb_cpu_edp_set_signal_levels(struct intel_encoder *encoder, in snb_cpu_edp_set_signal_levels() argument
1068 struct intel_display *display = to_intel_display(encoder); in snb_cpu_edp_set_signal_levels()
1069 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in snb_cpu_edp_set_signal_levels()
1117 ivb_cpu_edp_set_signal_levels(struct intel_encoder *encoder, in ivb_cpu_edp_set_signal_levels() argument
1120 struct intel_display *display = to_intel_display(encoder); in ivb_cpu_edp_set_signal_levels()
1121 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in ivb_cpu_edp_set_signal_levels()
1150 intel_dp_hotplug(struct intel_encoder *encoder, in intel_dp_hotplug() argument
1153 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_hotplug()
1159 state = intel_encoder_hotplug(encoder, connector); in intel_dp_hotplug()
1173 static bool ibx_digital_port_connected(struct intel_encoder *encoder) in ibx_digital_port_connected() argument
1175 struct intel_display *display = to_intel_display(encoder); in ibx_digital_port_connected()
1176 u32 bit = display->hotplug.pch_hpd[encoder->hpd_pin]; in ibx_digital_port_connected()
1181 static bool g4x_digital_port_connected(struct intel_encoder *encoder) in g4x_digital_port_connected() argument
1183 struct intel_display *display = to_intel_display(encoder); in g4x_digital_port_connected()
1186 switch (encoder->hpd_pin) { in g4x_digital_port_connected()
1197 MISSING_CASE(encoder->hpd_pin); in g4x_digital_port_connected()
1204 static bool ilk_digital_port_connected(struct intel_encoder *encoder) in ilk_digital_port_connected() argument
1206 struct intel_display *display = to_intel_display(encoder); in ilk_digital_port_connected()
1207 u32 bit = display->hotplug.hpd[encoder->hpd_pin]; in ilk_digital_port_connected()
1212 static int g4x_dp_compute_config(struct intel_encoder *encoder, in g4x_dp_compute_config() argument
1216 struct intel_display *display = to_intel_display(encoder); in g4x_dp_compute_config()
1219 if (HAS_PCH_SPLIT(display) && encoder->port != PORT_A) in g4x_dp_compute_config()
1222 ret = intel_dp_compute_config(encoder, crtc_state, conn_state); in g4x_dp_compute_config()
1226 g4x_dp_set_clock(encoder, crtc_state); in g4x_dp_compute_config()
1231 static void g4x_dp_suspend_complete(struct intel_encoder *encoder) in g4x_dp_suspend_complete() argument
1237 intel_encoder_link_check_flush_work(encoder); in g4x_dp_suspend_complete()
1240 static void intel_dp_encoder_destroy(struct drm_encoder *encoder) in intel_dp_encoder_destroy() argument
1242 intel_dp_encoder_flush_work(encoder); in intel_dp_encoder_destroy()
1244 drm_encoder_cleanup(encoder); in intel_dp_encoder_destroy()
1245 kfree(enc_to_dig_port(to_intel_encoder(encoder))); in intel_dp_encoder_destroy()
1248 static void intel_dp_encoder_reset(struct drm_encoder *encoder) in intel_dp_encoder_reset() argument
1250 struct intel_display *display = to_intel_display(encoder->dev); in intel_dp_encoder_reset()
1251 struct intel_dp *intel_dp = enc_to_intel_dp(to_intel_encoder(encoder)); in intel_dp_encoder_reset()
1275 struct drm_encoder *encoder; in g4x_dp_init() local
1299 encoder = &intel_encoder->base; in g4x_dp_init()
1411 drm_encoder_cleanup(encoder); in g4x_dp_init()