Lines Matching refs:intel_hdmi

41 static struct drm_device *intel_hdmi_to_dev(struct intel_hdmi *intel_hdmi)  in intel_hdmi_to_dev()  argument
43 return hdmi_to_dig_port(intel_hdmi)->base.base.dev; in intel_hdmi_to_dev()
47 assert_hdmi_port_disabled(struct intel_hdmi *intel_hdmi) in assert_hdmi_port_disabled() argument
49 struct drm_device *dev = intel_hdmi_to_dev(intel_hdmi); in assert_hdmi_port_disabled()
55 WARN(I915_READ(intel_hdmi->hdmi_reg) & enabled_bits, in assert_hdmi_port_disabled()
59 struct intel_hdmi *enc_to_intel_hdmi(struct drm_encoder *encoder) in enc_to_intel_hdmi()
66 static struct intel_hdmi *intel_attached_hdmi(struct drm_connector *connector) in intel_attached_hdmi()
402 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in intel_write_infoframe() local
418 intel_hdmi->write_infoframe(encoder, frame->any.type, buffer, len); in intel_write_infoframe()
424 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in intel_hdmi_set_avi_infoframe() local
430 adjusted_mode->picture_aspect_ratio = intel_hdmi->aspect_ratio; in intel_hdmi_set_avi_infoframe()
439 if (intel_hdmi->rgb_quant_range_selectable) { in intel_hdmi_set_avi_infoframe()
488 struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi; in g4x_set_infoframes() local
493 assert_hdmi_port_disabled(intel_hdmi); in g4x_set_infoframes()
543 struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi; in ibx_set_infoframes() local
548 assert_hdmi_port_disabled(intel_hdmi); in ibx_set_infoframes()
590 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in cpt_set_infoframes() local
594 assert_hdmi_port_disabled(intel_hdmi); in cpt_set_infoframes()
628 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in vlv_set_infoframes() local
633 assert_hdmi_port_disabled(intel_hdmi); in vlv_set_infoframes()
675 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); in hsw_set_infoframes() local
679 assert_hdmi_port_disabled(intel_hdmi); in hsw_set_infoframes()
703 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_prepare() local
709 hdmi_val |= intel_hdmi->color_range; in intel_hdmi_prepare()
730 I915_WRITE(intel_hdmi->hdmi_reg, hdmi_val); in intel_hdmi_prepare()
731 POSTING_READ(intel_hdmi->hdmi_reg); in intel_hdmi_prepare()
739 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_get_hw_state() local
747 tmp = I915_READ(intel_hdmi->hdmi_reg); in intel_hdmi_get_hw_state()
765 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_get_config() local
771 tmp = I915_READ(intel_hdmi->hdmi_reg); in intel_hdmi_get_config()
786 if (intel_hdmi->infoframe_enabled(&encoder->base)) in intel_hdmi_get_config()
814 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_enable_hdmi() local
821 temp = I915_READ(intel_hdmi->hdmi_reg); in intel_enable_hdmi()
832 I915_WRITE(intel_hdmi->hdmi_reg, temp & ~SDVO_ENABLE); in intel_enable_hdmi()
833 POSTING_READ(intel_hdmi->hdmi_reg); in intel_enable_hdmi()
838 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_enable_hdmi()
839 POSTING_READ(intel_hdmi->hdmi_reg); in intel_enable_hdmi()
845 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_enable_hdmi()
846 POSTING_READ(intel_hdmi->hdmi_reg); in intel_enable_hdmi()
865 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_disable_hdmi() local
873 temp = I915_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
883 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_disable_hdmi()
884 POSTING_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
887 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_disable_hdmi()
888 POSTING_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
903 I915_WRITE(intel_hdmi->hdmi_reg, temp & ~SDVO_ENABLE); in intel_disable_hdmi()
904 POSTING_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
909 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_disable_hdmi()
910 POSTING_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
916 I915_WRITE(intel_hdmi->hdmi_reg, temp); in intel_disable_hdmi()
917 POSTING_READ(intel_hdmi->hdmi_reg); in intel_disable_hdmi()
921 static int hdmi_portclock_limit(struct intel_hdmi *hdmi, bool respect_dvi_limit) in hdmi_portclock_limit()
992 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_compute_config() local
996 int portclock_limit = hdmi_portclock_limit(intel_hdmi, false); in intel_hdmi_compute_config()
999 pipe_config->has_hdmi_sink = intel_hdmi->has_hdmi_sink; in intel_hdmi_compute_config()
1004 if (intel_hdmi->color_range_auto) { in intel_hdmi_compute_config()
1008 intel_hdmi->color_range = HDMI_COLOR_RANGE_16_235; in intel_hdmi_compute_config()
1010 intel_hdmi->color_range = 0; in intel_hdmi_compute_config()
1017 if (intel_hdmi->color_range) in intel_hdmi_compute_config()
1023 if (pipe_config->has_hdmi_sink && intel_hdmi->has_audio) in intel_hdmi_compute_config()
1061 struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); in intel_hdmi_unset_edid() local
1063 intel_hdmi->has_hdmi_sink = false; in intel_hdmi_unset_edid()
1064 intel_hdmi->has_audio = false; in intel_hdmi_unset_edid()
1065 intel_hdmi->rgb_quant_range_selectable = false; in intel_hdmi_unset_edid()
1075 struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); in intel_hdmi_set_edid() local
1077 &hdmi_to_dig_port(intel_hdmi)->base; in intel_hdmi_set_edid()
1087 intel_hdmi->ddc_bus)); in intel_hdmi_set_edid()
1093 intel_hdmi->rgb_quant_range_selectable = in intel_hdmi_set_edid()
1096 intel_hdmi->has_audio = drm_detect_monitor_audio(edid); in intel_hdmi_set_edid()
1097 if (intel_hdmi->force_audio != HDMI_AUDIO_AUTO) in intel_hdmi_set_edid()
1098 intel_hdmi->has_audio = in intel_hdmi_set_edid()
1099 intel_hdmi->force_audio == HDMI_AUDIO_ON; in intel_hdmi_set_edid()
1101 if (intel_hdmi->force_audio != HDMI_AUDIO_OFF_DVI) in intel_hdmi_set_edid()
1102 intel_hdmi->has_hdmi_sink = in intel_hdmi_set_edid()
1122 struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); in intel_hdmi_detect() local
1124 hdmi_to_dig_port(intel_hdmi)->base.type = INTEL_OUTPUT_HDMI; in intel_hdmi_detect()
1135 struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); in intel_hdmi_force() local
1146 hdmi_to_dig_port(intel_hdmi)->base.type = INTEL_OUTPUT_HDMI; in intel_hdmi_force()
1178 struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); in intel_hdmi_set_property() local
1180 hdmi_to_dig_port(intel_hdmi); in intel_hdmi_set_property()
1192 if (i == intel_hdmi->force_audio) in intel_hdmi_set_property()
1195 intel_hdmi->force_audio = i; in intel_hdmi_set_property()
1203 intel_hdmi->has_hdmi_sink = 0; in intel_hdmi_set_property()
1205 intel_hdmi->has_audio = has_audio; in intel_hdmi_set_property()
1210 bool old_auto = intel_hdmi->color_range_auto; in intel_hdmi_set_property()
1211 uint32_t old_range = intel_hdmi->color_range; in intel_hdmi_set_property()
1215 intel_hdmi->color_range_auto = true; in intel_hdmi_set_property()
1218 intel_hdmi->color_range_auto = false; in intel_hdmi_set_property()
1219 intel_hdmi->color_range = 0; in intel_hdmi_set_property()
1222 intel_hdmi->color_range_auto = false; in intel_hdmi_set_property()
1223 intel_hdmi->color_range = HDMI_COLOR_RANGE_16_235; in intel_hdmi_set_property()
1229 if (old_auto == intel_hdmi->color_range_auto && in intel_hdmi_set_property()
1230 old_range == intel_hdmi->color_range) in intel_hdmi_set_property()
1239 intel_hdmi->aspect_ratio = HDMI_PICTURE_ASPECT_NONE; in intel_hdmi_set_property()
1242 intel_hdmi->aspect_ratio = HDMI_PICTURE_ASPECT_4_3; in intel_hdmi_set_property()
1245 intel_hdmi->aspect_ratio = HDMI_PICTURE_ASPECT_16_9; in intel_hdmi_set_property()
1264 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base); in intel_hdmi_pre_enable() local
1271 intel_hdmi->set_infoframes(&encoder->base, in intel_hdmi_pre_enable()
1279 struct intel_hdmi *intel_hdmi = &dport->hdmi; in vlv_hdmi_pre_enable() local
1316 intel_hdmi->set_infoframes(&encoder->base, in vlv_hdmi_pre_enable()
1476 struct intel_hdmi *intel_hdmi = &dport->hdmi; in chv_hdmi_pre_enable() local
1602 intel_hdmi->set_infoframes(&encoder->base, in chv_hdmi_pre_enable()
1650 intel_hdmi_add_properties(struct intel_hdmi *intel_hdmi, struct drm_connector *connector) in intel_hdmi_add_properties() argument
1654 intel_hdmi->color_range_auto = true; in intel_hdmi_add_properties()
1656 intel_hdmi->aspect_ratio = HDMI_PICTURE_ASPECT_NONE; in intel_hdmi_add_properties()
1663 struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi; in intel_hdmi_init_connector() local
1679 intel_hdmi->ddc_bus = GMBUS_PORT_DPB; in intel_hdmi_init_connector()
1683 intel_hdmi->ddc_bus = GMBUS_PORT_DPC; in intel_hdmi_init_connector()
1688 intel_hdmi->ddc_bus = GMBUS_PORT_DPD_CHV; in intel_hdmi_init_connector()
1690 intel_hdmi->ddc_bus = GMBUS_PORT_DPD; in intel_hdmi_init_connector()
1701 intel_hdmi->write_infoframe = vlv_write_infoframe; in intel_hdmi_init_connector()
1702 intel_hdmi->set_infoframes = vlv_set_infoframes; in intel_hdmi_init_connector()
1703 intel_hdmi->infoframe_enabled = vlv_infoframe_enabled; in intel_hdmi_init_connector()
1705 intel_hdmi->write_infoframe = g4x_write_infoframe; in intel_hdmi_init_connector()
1706 intel_hdmi->set_infoframes = g4x_set_infoframes; in intel_hdmi_init_connector()
1707 intel_hdmi->infoframe_enabled = g4x_infoframe_enabled; in intel_hdmi_init_connector()
1709 intel_hdmi->write_infoframe = hsw_write_infoframe; in intel_hdmi_init_connector()
1710 intel_hdmi->set_infoframes = hsw_set_infoframes; in intel_hdmi_init_connector()
1711 intel_hdmi->infoframe_enabled = hsw_infoframe_enabled; in intel_hdmi_init_connector()
1713 intel_hdmi->write_infoframe = ibx_write_infoframe; in intel_hdmi_init_connector()
1714 intel_hdmi->set_infoframes = ibx_set_infoframes; in intel_hdmi_init_connector()
1715 intel_hdmi->infoframe_enabled = ibx_infoframe_enabled; in intel_hdmi_init_connector()
1717 intel_hdmi->write_infoframe = cpt_write_infoframe; in intel_hdmi_init_connector()
1718 intel_hdmi->set_infoframes = cpt_set_infoframes; in intel_hdmi_init_connector()
1719 intel_hdmi->infoframe_enabled = cpt_infoframe_enabled; in intel_hdmi_init_connector()
1728 intel_hdmi_add_properties(intel_hdmi, connector); in intel_hdmi_init_connector()