Lines Matching refs:dig_port

1513 	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);  in intel_ddi_init_dp_buf_reg()  local
1515 intel_dp->DP = dig_port->saved_port_bits | in intel_ddi_init_dp_buf_reg()
2071 intel_ddi_main_link_aux_domain(struct intel_digital_port *dig_port) in intel_ddi_main_link_aux_domain() argument
2085 return dig_port->aux_ch == AUX_CH_A ? POWER_DOMAIN_AUX_IO_A : in intel_ddi_main_link_aux_domain()
2086 intel_aux_power_domain(dig_port); in intel_ddi_main_link_aux_domain()
2093 struct intel_digital_port *dig_port; in intel_ddi_get_power_domains() local
2105 dig_port = enc_to_dig_port(encoder); in intel_ddi_get_power_domains()
2108 dig_port->tc_mode != TC_PORT_TBT_ALT) in intel_ddi_get_power_domains()
2110 dig_port->ddi_io_power_domain); in intel_ddi_get_power_domains()
2119 intel_ddi_main_link_aux_domain(dig_port)); in intel_ddi_get_power_domains()
2183 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in skl_ddi_set_iboost() local
2221 if (encoder->port == PORT_A && dig_port->max_lanes == 4) in skl_ddi_set_iboost()
3136 icl_program_mg_dp_mode(struct intel_digital_port *dig_port, in icl_program_mg_dp_mode() argument
3139 struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev); in icl_program_mg_dp_mode()
3140 enum tc_port tc_port = intel_port_to_tc(dev_priv, dig_port->base.port); in icl_program_mg_dp_mode()
3144 if (dig_port->tc_mode == TC_PORT_TBT_ALT) in icl_program_mg_dp_mode()
3163 pin_assignment = intel_tc_port_get_pin_assignment_mask(dig_port); in icl_program_mg_dp_mode()
3169 dig_port->tc_mode != TC_PORT_LEGACY); in icl_program_mg_dp_mode()
3285 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in tgl_ddi_pre_enable_dp() local
3325 dig_port->tc_mode != TC_PORT_TBT_ALT) in tgl_ddi_pre_enable_dp()
3327 dig_port->ddi_io_power_domain); in tgl_ddi_pre_enable_dp()
3330 icl_program_mg_dp_mode(dig_port, crtc_state); in tgl_ddi_pre_enable_dp()
3372 dig_port->saved_port_bits & DDI_BUF_PORT_REVERSAL; in tgl_ddi_pre_enable_dp()
3427 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in hsw_ddi_pre_enable_dp() local
3445 dig_port->tc_mode != TC_PORT_TBT_ALT) in hsw_ddi_pre_enable_dp()
3447 dig_port->ddi_io_power_domain); in hsw_ddi_pre_enable_dp()
3449 icl_program_mg_dp_mode(dig_port, crtc_state); in hsw_ddi_pre_enable_dp()
3463 dig_port->saved_port_bits & DDI_BUF_PORT_REVERSAL; in hsw_ddi_pre_enable_dp()
3517 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_pre_enable_hdmi() local
3518 struct intel_hdmi *intel_hdmi = &dig_port->hdmi; in intel_ddi_pre_enable_hdmi()
3525 intel_display_power_get(dev_priv, dig_port->ddi_io_power_domain); in intel_ddi_pre_enable_hdmi()
3527 icl_program_mg_dp_mode(dig_port, crtc_state); in intel_ddi_pre_enable_hdmi()
3547 dig_port->set_infoframes(encoder, in intel_ddi_pre_enable_hdmi()
3585 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_pre_enable() local
3592 if (dig_port->lspcon.active && dig_port->dp.has_hdmi_sink) in intel_ddi_pre_enable()
3593 dig_port->set_infoframes(encoder, in intel_ddi_pre_enable()
3636 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_post_disable_dp() local
3637 struct intel_dp *intel_dp = &dig_port->dp; in intel_ddi_post_disable_dp()
3684 dig_port->tc_mode != TC_PORT_TBT_ALT) in intel_ddi_post_disable_dp()
3686 dig_port->ddi_io_power_domain); in intel_ddi_post_disable_dp()
3697 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_post_disable_hdmi() local
3698 struct intel_hdmi *intel_hdmi = &dig_port->hdmi; in intel_ddi_post_disable_hdmi()
3700 dig_port->set_infoframes(encoder, false, in intel_ddi_post_disable_hdmi()
3708 dig_port->ddi_io_power_domain); in intel_ddi_post_disable_hdmi()
3721 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_post_disable() local
3765 intel_ddi_main_link_aux_domain(dig_port)); in intel_ddi_post_disable()
3768 intel_tc_port_put_link(dig_port); in intel_ddi_post_disable()
3890 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_enable_ddi_hdmi() local
3941 dig_port->saved_port_bits | DDI_BUF_CTL_ENABLE); in intel_enable_ddi_hdmi()
4090 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_pre_pll_enable() local
4095 intel_tc_port_get_link(dig_port, crtc_state->lane_count); in intel_ddi_pre_pll_enable()
4099 intel_ddi_main_link_aux_domain(dig_port)); in intel_ddi_pre_pll_enable()
4101 if (is_tc_port && dig_port->tc_mode != TC_PORT_TBT_ALT) in intel_ddi_pre_pll_enable()
4106 intel_tc_port_set_fia_lane_count(dig_port, crtc_state->lane_count); in intel_ddi_pre_pll_enable()
4114 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in intel_ddi_prepare_link_retrain() local
4115 struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev); in intel_ddi_prepare_link_retrain()
4116 enum port port = dig_port->base.port; in intel_ddi_prepare_link_retrain()
4647 struct intel_digital_port *dig_port = enc_to_dig_port(to_intel_encoder(encoder)); in intel_ddi_encoder_destroy() local
4652 kfree(dig_port); in intel_ddi_encoder_destroy()
4661 intel_ddi_init_dp_connector(struct intel_digital_port *dig_port) in intel_ddi_init_dp_connector() argument
4663 struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev); in intel_ddi_init_dp_connector()
4665 enum port port = dig_port->base.port; in intel_ddi_init_dp_connector()
4671 dig_port->dp.output_reg = DDI_BUF_CTL(port); in intel_ddi_init_dp_connector()
4672 dig_port->dp.prepare_link_retrain = intel_ddi_prepare_link_retrain; in intel_ddi_init_dp_connector()
4673 dig_port->dp.set_link_train = intel_ddi_set_link_train; in intel_ddi_init_dp_connector()
4674 dig_port->dp.set_idle_link_train = intel_ddi_set_idle_link_train; in intel_ddi_init_dp_connector()
4677 dig_port->dp.set_signal_levels = tgl_set_signal_levels; in intel_ddi_init_dp_connector()
4679 dig_port->dp.set_signal_levels = icl_set_signal_levels; in intel_ddi_init_dp_connector()
4681 dig_port->dp.set_signal_levels = cnl_set_signal_levels; in intel_ddi_init_dp_connector()
4683 dig_port->dp.set_signal_levels = bxt_set_signal_levels; in intel_ddi_init_dp_connector()
4685 dig_port->dp.set_signal_levels = hsw_set_signal_levels; in intel_ddi_init_dp_connector()
4687 dig_port->dp.voltage_max = intel_ddi_dp_voltage_max; in intel_ddi_init_dp_connector()
4688 dig_port->dp.preemph_max = intel_ddi_dp_preemph_max; in intel_ddi_init_dp_connector()
4691 dig_port->dp.regs.dp_tp_ctl = DP_TP_CTL(port); in intel_ddi_init_dp_connector()
4692 dig_port->dp.regs.dp_tp_status = DP_TP_STATUS(port); in intel_ddi_init_dp_connector()
4695 if (!intel_dp_init_connector(dig_port, connector)) { in intel_ddi_init_dp_connector()
4809 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_ddi_hotplug() local
4863 !dig_port->dp.is_mst) in intel_ddi_hotplug()
4894 intel_ddi_init_hdmi_connector(struct intel_digital_port *dig_port) in intel_ddi_init_hdmi_connector() argument
4897 enum port port = dig_port->base.port; in intel_ddi_init_hdmi_connector()
4903 dig_port->hdmi.hdmi_reg = DDI_BUF_CTL(port); in intel_ddi_init_hdmi_connector()
4904 intel_hdmi_init_connector(dig_port, connector); in intel_ddi_init_hdmi_connector()
4909 static bool intel_ddi_a_force_4_lanes(struct intel_digital_port *dig_port) in intel_ddi_a_force_4_lanes() argument
4911 struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev); in intel_ddi_a_force_4_lanes()
4913 if (dig_port->base.port != PORT_A) in intel_ddi_a_force_4_lanes()
4916 if (dig_port->saved_port_bits & DDI_A_4_LANES) in intel_ddi_a_force_4_lanes()
4938 intel_ddi_max_lanes(struct intel_digital_port *dig_port) in intel_ddi_max_lanes() argument
4940 struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev); in intel_ddi_max_lanes()
4941 enum port port = dig_port->base.port; in intel_ddi_max_lanes()
4960 if (intel_ddi_a_force_4_lanes(dig_port)) { in intel_ddi_max_lanes()
4963 dig_port->saved_port_bits |= DDI_A_4_LANES; in intel_ddi_max_lanes()
5030 struct intel_digital_port *dig_port; in intel_ddi_init() local
5071 dig_port = kzalloc(sizeof(*dig_port), GFP_KERNEL); in intel_ddi_init()
5072 if (!dig_port) in intel_ddi_init()
5075 encoder = &dig_port->base; in intel_ddi_init()
5080 mutex_init(&dig_port->hdcp_mutex); in intel_ddi_init()
5081 dig_port->num_hdcp_streams = 0; in intel_ddi_init()
5118 dig_port->saved_port_bits = in intel_ddi_init()
5122 dig_port->saved_port_bits = in intel_ddi_init()
5126 dig_port->dp.output_reg = INVALID_MMIO_REG; in intel_ddi_init()
5127 dig_port->max_lanes = intel_ddi_max_lanes(dig_port); in intel_ddi_init()
5128 dig_port->aux_ch = intel_bios_port_aux_ch(dev_priv, port); in intel_ddi_init()
5135 intel_tc_port_init(dig_port, is_legacy); in intel_ddi_init()
5142 dig_port->ddi_io_power_domain = POWER_DOMAIN_PORT_DDI_A_IO + in intel_ddi_init()
5146 if (!intel_ddi_init_dp_connector(dig_port)) in intel_ddi_init()
5149 dig_port->hpd_pulse = intel_dp_hpd_pulse; in intel_ddi_init()
5155 if (!intel_ddi_init_hdmi_connector(dig_port)) in intel_ddi_init()
5160 if (lspcon_init(dig_port)) in intel_ddi_init()
5177 dig_port->connected = intel_tc_port_connected; in intel_ddi_init()
5179 dig_port->connected = lpt_digital_port_connected; in intel_ddi_init()
5182 dig_port->connected = bdw_digital_port_connected; in intel_ddi_init()
5184 dig_port->connected = lpt_digital_port_connected; in intel_ddi_init()
5187 dig_port->connected = hsw_digital_port_connected; in intel_ddi_init()
5189 dig_port->connected = lpt_digital_port_connected; in intel_ddi_init()
5192 intel_infoframe_init(dig_port); in intel_ddi_init()
5198 kfree(dig_port); in intel_ddi_init()