Lines Matching refs:encoder
59 struct intel_hdmi *enc_to_intel_hdmi(struct drm_encoder *encoder) in enc_to_intel_hdmi() argument
62 container_of(encoder, struct intel_digital_port, base.base); in enc_to_intel_hdmi()
133 static void g4x_write_infoframe(struct drm_encoder *encoder, in g4x_write_infoframe() argument
138 struct drm_device *dev = encoder->dev; in g4x_write_infoframe()
170 static bool g4x_infoframe_enabled(struct drm_encoder *encoder) in g4x_infoframe_enabled() argument
172 struct drm_device *dev = encoder->dev; in g4x_infoframe_enabled()
174 struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder); in g4x_infoframe_enabled()
183 static void ibx_write_infoframe(struct drm_encoder *encoder, in ibx_write_infoframe() argument
188 struct drm_device *dev = encoder->dev; in ibx_write_infoframe()
190 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in ibx_write_infoframe()
221 static bool ibx_infoframe_enabled(struct drm_encoder *encoder) in ibx_infoframe_enabled() argument
223 struct drm_device *dev = encoder->dev; in ibx_infoframe_enabled()
225 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in ibx_infoframe_enabled()
232 static void cpt_write_infoframe(struct drm_encoder *encoder, in cpt_write_infoframe() argument
237 struct drm_device *dev = encoder->dev; in cpt_write_infoframe()
239 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in cpt_write_infoframe()
273 static bool cpt_infoframe_enabled(struct drm_encoder *encoder) in cpt_infoframe_enabled() argument
275 struct drm_device *dev = encoder->dev; in cpt_infoframe_enabled()
277 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in cpt_infoframe_enabled()
284 static void vlv_write_infoframe(struct drm_encoder *encoder, in vlv_write_infoframe() argument
289 struct drm_device *dev = encoder->dev; in vlv_write_infoframe()
291 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in vlv_write_infoframe()
322 static bool vlv_infoframe_enabled(struct drm_encoder *encoder) in vlv_infoframe_enabled() argument
324 struct drm_device *dev = encoder->dev; in vlv_infoframe_enabled()
326 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in vlv_infoframe_enabled()
333 static void hsw_write_infoframe(struct drm_encoder *encoder, in hsw_write_infoframe() argument
338 struct drm_device *dev = encoder->dev; in hsw_write_infoframe()
340 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in hsw_write_infoframe()
370 static bool hsw_infoframe_enabled(struct drm_encoder *encoder) in hsw_infoframe_enabled() argument
372 struct drm_device *dev = encoder->dev; in hsw_infoframe_enabled()
374 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in hsw_infoframe_enabled()
399 static void intel_write_infoframe(struct drm_encoder *encoder, in intel_write_infoframe() argument
402 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in intel_write_infoframe()
418 intel_hdmi->write_infoframe(encoder, frame->any.type, buffer, len); in intel_write_infoframe()
421 static void intel_hdmi_set_avi_infoframe(struct drm_encoder *encoder, in intel_hdmi_set_avi_infoframe() argument
424 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in intel_hdmi_set_avi_infoframe()
425 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in intel_hdmi_set_avi_infoframe()
448 intel_write_infoframe(encoder, &frame); in intel_hdmi_set_avi_infoframe()
451 static void intel_hdmi_set_spd_infoframe(struct drm_encoder *encoder) in intel_hdmi_set_spd_infoframe() argument
464 intel_write_infoframe(encoder, &frame); in intel_hdmi_set_spd_infoframe()
468 intel_hdmi_set_hdmi_infoframe(struct drm_encoder *encoder, in intel_hdmi_set_hdmi_infoframe() argument
479 intel_write_infoframe(encoder, &frame); in intel_hdmi_set_hdmi_infoframe()
482 static void g4x_set_infoframes(struct drm_encoder *encoder, in g4x_set_infoframes() argument
486 struct drm_i915_private *dev_priv = encoder->dev->dev_private; in g4x_set_infoframes()
487 struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder); in g4x_set_infoframes()
531 intel_hdmi_set_avi_infoframe(encoder, adjusted_mode); in g4x_set_infoframes()
532 intel_hdmi_set_spd_infoframe(encoder); in g4x_set_infoframes()
533 intel_hdmi_set_hdmi_infoframe(encoder, adjusted_mode); in g4x_set_infoframes()
536 static void ibx_set_infoframes(struct drm_encoder *encoder, in ibx_set_infoframes() argument
540 struct drm_i915_private *dev_priv = encoder->dev->dev_private; in ibx_set_infoframes()
541 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in ibx_set_infoframes()
542 struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder); in ibx_set_infoframes()
579 intel_hdmi_set_avi_infoframe(encoder, adjusted_mode); in ibx_set_infoframes()
580 intel_hdmi_set_spd_infoframe(encoder); in ibx_set_infoframes()
581 intel_hdmi_set_hdmi_infoframe(encoder, adjusted_mode); in ibx_set_infoframes()
584 static void cpt_set_infoframes(struct drm_encoder *encoder, in cpt_set_infoframes() argument
588 struct drm_i915_private *dev_priv = encoder->dev->dev_private; in cpt_set_infoframes()
589 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in cpt_set_infoframes()
590 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in cpt_set_infoframes()
616 intel_hdmi_set_avi_infoframe(encoder, adjusted_mode); in cpt_set_infoframes()
617 intel_hdmi_set_spd_infoframe(encoder); in cpt_set_infoframes()
618 intel_hdmi_set_hdmi_infoframe(encoder, adjusted_mode); in cpt_set_infoframes()
621 static void vlv_set_infoframes(struct drm_encoder *encoder, in vlv_set_infoframes() argument
625 struct drm_i915_private *dev_priv = encoder->dev->dev_private; in vlv_set_infoframes()
626 struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder); in vlv_set_infoframes()
627 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in vlv_set_infoframes()
628 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in vlv_set_infoframes()
664 intel_hdmi_set_avi_infoframe(encoder, adjusted_mode); in vlv_set_infoframes()
665 intel_hdmi_set_spd_infoframe(encoder); in vlv_set_infoframes()
666 intel_hdmi_set_hdmi_infoframe(encoder, adjusted_mode); in vlv_set_infoframes()
669 static void hsw_set_infoframes(struct drm_encoder *encoder, in hsw_set_infoframes() argument
673 struct drm_i915_private *dev_priv = encoder->dev->dev_private; in hsw_set_infoframes()
674 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc); in hsw_set_infoframes()
675 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in hsw_set_infoframes()
693 intel_hdmi_set_avi_infoframe(encoder, adjusted_mode); in hsw_set_infoframes()
694 intel_hdmi_set_spd_infoframe(encoder); in hsw_set_infoframes()
695 intel_hdmi_set_hdmi_infoframe(encoder, adjusted_mode); in hsw_set_infoframes()
698 static void intel_hdmi_prepare(struct intel_encoder *encoder) in intel_hdmi_prepare() argument
700 struct drm_device *dev = encoder->base.dev; in intel_hdmi_prepare()
702 struct intel_crtc *crtc = to_intel_crtc(encoder->base.crtc); in intel_hdmi_prepare()
703 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_prepare()
734 static bool intel_hdmi_get_hw_state(struct intel_encoder *encoder, in intel_hdmi_get_hw_state() argument
737 struct drm_device *dev = encoder->base.dev; in intel_hdmi_get_hw_state()
739 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_get_hw_state()
743 power_domain = intel_display_port_power_domain(encoder); in intel_hdmi_get_hw_state()
762 static void intel_hdmi_get_config(struct intel_encoder *encoder, in intel_hdmi_get_config() argument
765 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_get_config()
766 struct drm_device *dev = encoder->base.dev; in intel_hdmi_get_config()
786 if (intel_hdmi->infoframe_enabled(&encoder->base)) in intel_hdmi_get_config()
809 static void intel_enable_hdmi(struct intel_encoder *encoder) in intel_enable_hdmi() argument
811 struct drm_device *dev = encoder->base.dev; in intel_enable_hdmi()
813 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc); in intel_enable_hdmi()
814 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_enable_hdmi()
853 intel_audio_codec_enable(encoder); in intel_enable_hdmi()
857 static void vlv_enable_hdmi(struct intel_encoder *encoder) in vlv_enable_hdmi() argument
861 static void intel_disable_hdmi(struct intel_encoder *encoder) in intel_disable_hdmi() argument
863 struct drm_device *dev = encoder->base.dev; in intel_disable_hdmi()
865 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_disable_hdmi()
866 struct intel_crtc *crtc = to_intel_crtc(encoder->base.crtc); in intel_disable_hdmi()
871 intel_audio_codec_disable(encoder); in intel_disable_hdmi()
878 struct drm_crtc *crtc = encoder->base.crtc; in intel_disable_hdmi()
958 struct intel_encoder *encoder; in hdmi_12bpc_possible() local
976 encoder = to_intel_encoder(connector_state->best_encoder); in hdmi_12bpc_possible()
978 count_hdmi += encoder->type == INTEL_OUTPUT_HDMI; in hdmi_12bpc_possible()
989 bool intel_hdmi_compute_config(struct intel_encoder *encoder, in intel_hdmi_compute_config() argument
992 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_compute_config()
993 struct drm_device *dev = encoder->base.dev; in intel_hdmi_compute_config()
1262 static void intel_hdmi_pre_enable(struct intel_encoder *encoder) in intel_hdmi_pre_enable() argument
1264 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_pre_enable()
1265 struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc); in intel_hdmi_pre_enable()
1269 intel_hdmi_prepare(encoder); in intel_hdmi_pre_enable()
1271 intel_hdmi->set_infoframes(&encoder->base, in intel_hdmi_pre_enable()
1276 static void vlv_hdmi_pre_enable(struct intel_encoder *encoder) in vlv_hdmi_pre_enable() argument
1278 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in vlv_hdmi_pre_enable()
1280 struct drm_device *dev = encoder->base.dev; in vlv_hdmi_pre_enable()
1283 to_intel_crtc(encoder->base.crtc); in vlv_hdmi_pre_enable()
1316 intel_hdmi->set_infoframes(&encoder->base, in vlv_hdmi_pre_enable()
1320 intel_enable_hdmi(encoder); in vlv_hdmi_pre_enable()
1325 static void vlv_hdmi_pre_pll_enable(struct intel_encoder *encoder) in vlv_hdmi_pre_pll_enable() argument
1327 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in vlv_hdmi_pre_pll_enable()
1328 struct drm_device *dev = encoder->base.dev; in vlv_hdmi_pre_pll_enable()
1331 to_intel_crtc(encoder->base.crtc); in vlv_hdmi_pre_pll_enable()
1335 intel_hdmi_prepare(encoder); in vlv_hdmi_pre_pll_enable()
1358 static void chv_hdmi_pre_pll_enable(struct intel_encoder *encoder) in chv_hdmi_pre_pll_enable() argument
1360 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in chv_hdmi_pre_pll_enable()
1361 struct drm_device *dev = encoder->base.dev; in chv_hdmi_pre_pll_enable()
1364 to_intel_crtc(encoder->base.crtc); in chv_hdmi_pre_pll_enable()
1369 intel_hdmi_prepare(encoder); in chv_hdmi_pre_pll_enable()
1424 static void vlv_hdmi_post_disable(struct intel_encoder *encoder) in vlv_hdmi_post_disable() argument
1426 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in vlv_hdmi_post_disable()
1427 struct drm_i915_private *dev_priv = encoder->base.dev->dev_private; in vlv_hdmi_post_disable()
1429 to_intel_crtc(encoder->base.crtc); in vlv_hdmi_post_disable()
1440 static void chv_hdmi_post_disable(struct intel_encoder *encoder) in chv_hdmi_post_disable() argument
1442 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in chv_hdmi_post_disable()
1443 struct drm_device *dev = encoder->base.dev; in chv_hdmi_post_disable()
1446 to_intel_crtc(encoder->base.crtc); in chv_hdmi_post_disable()
1473 static void chv_hdmi_pre_enable(struct intel_encoder *encoder) in chv_hdmi_pre_enable() argument
1475 struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); in chv_hdmi_pre_enable()
1477 struct drm_device *dev = encoder->base.dev; in chv_hdmi_pre_enable()
1480 to_intel_crtc(encoder->base.crtc); in chv_hdmi_pre_enable()
1602 intel_hdmi->set_infoframes(&encoder->base, in chv_hdmi_pre_enable()
1606 intel_enable_hdmi(encoder); in chv_hdmi_pre_enable()