Lines Matching refs:dig_port

91 	struct intel_digital_port *dig_port =  in enc_to_intel_hdmi()  local
94 return &dig_port->hdmi; in enc_to_intel_hdmi()
619 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_hdmi_infoframes_enabled() local
623 val = dig_port->infoframes_enabled(encoder, crtc_state); in intel_hdmi_infoframes_enabled()
663 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_write_infoframe() local
684 dig_port->write_infoframe(encoder, crtc_state, type, buffer, len); in intel_write_infoframe()
692 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in intel_read_infoframe() local
700 dig_port->read_infoframe(encoder, crtc_state, in intel_read_infoframe()
875 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in g4x_set_infoframes() local
876 struct intel_hdmi *intel_hdmi = &dig_port->hdmi; in g4x_set_infoframes()
1060 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in ibx_set_infoframes() local
1061 struct intel_hdmi *intel_hdmi = &dig_port->hdmi; in ibx_set_infoframes()
1278 static int intel_hdmi_hdcp_read(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read() argument
1281 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read()
1282 struct intel_hdmi *hdmi = &dig_port->hdmi; in intel_hdmi_hdcp_read()
1307 static int intel_hdmi_hdcp_write(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_write() argument
1310 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_write()
1311 struct intel_hdmi *hdmi = &dig_port->hdmi; in intel_hdmi_hdcp_write()
1341 int intel_hdmi_hdcp_write_an_aksv(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_write_an_aksv() argument
1344 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_write_an_aksv()
1345 struct intel_hdmi *hdmi = &dig_port->hdmi; in intel_hdmi_hdcp_write_an_aksv()
1350 ret = intel_hdmi_hdcp_write(dig_port, DRM_HDCP_DDC_AN, an, in intel_hdmi_hdcp_write_an_aksv()
1366 static int intel_hdmi_hdcp_read_bksv(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_bksv() argument
1369 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_bksv()
1372 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_BKSV, bksv, in intel_hdmi_hdcp_read_bksv()
1381 int intel_hdmi_hdcp_read_bstatus(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_bstatus() argument
1384 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_bstatus()
1387 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_BSTATUS, in intel_hdmi_hdcp_read_bstatus()
1396 int intel_hdmi_hdcp_repeater_present(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_repeater_present() argument
1399 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_repeater_present()
1403 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); in intel_hdmi_hdcp_repeater_present()
1414 int intel_hdmi_hdcp_read_ri_prime(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_ri_prime() argument
1417 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_ri_prime()
1420 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_RI_PRIME, in intel_hdmi_hdcp_read_ri_prime()
1429 int intel_hdmi_hdcp_read_ksv_ready(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_ksv_ready() argument
1432 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_ksv_ready()
1436 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); in intel_hdmi_hdcp_read_ksv_ready()
1447 int intel_hdmi_hdcp_read_ksv_fifo(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_ksv_fifo() argument
1450 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_ksv_fifo()
1452 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_KSV_FIFO, in intel_hdmi_hdcp_read_ksv_fifo()
1463 int intel_hdmi_hdcp_read_v_prime_part(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_read_v_prime_part() argument
1466 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_read_v_prime_part()
1472 ret = intel_hdmi_hdcp_read(dig_port, DRM_HDCP_DDC_V_PRIME(i), in intel_hdmi_hdcp_read_v_prime_part()
1484 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in kbl_repositioning_enc_en_signal() local
1498 ret = intel_ddi_toggle_hdcp_signalling(&dig_port->base, cpu_transcoder, in kbl_repositioning_enc_en_signal()
1505 ret = intel_ddi_toggle_hdcp_signalling(&dig_port->base, cpu_transcoder, in kbl_repositioning_enc_en_signal()
1517 int intel_hdmi_hdcp_toggle_signalling(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_toggle_signalling() argument
1521 struct intel_hdmi *hdmi = &dig_port->hdmi; in intel_hdmi_hdcp_toggle_signalling()
1529 ret = intel_ddi_toggle_hdcp_signalling(&dig_port->base, cpu_transcoder, in intel_hdmi_hdcp_toggle_signalling()
1549 bool intel_hdmi_hdcp_check_link_once(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_check_link_once() argument
1552 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_check_link_once()
1553 enum port port = dig_port->base.port; in intel_hdmi_hdcp_check_link_once()
1561 ret = intel_hdmi_hdcp_read_ri_prime(dig_port, ri.shim); in intel_hdmi_hdcp_check_link_once()
1580 bool intel_hdmi_hdcp_check_link(struct intel_digital_port *dig_port, in intel_hdmi_hdcp_check_link() argument
1583 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp_check_link()
1587 if (intel_hdmi_hdcp_check_link_once(dig_port, connector)) in intel_hdmi_hdcp_check_link()
1608 int intel_hdmi_hdcp2_read_rx_status(struct intel_digital_port *dig_port, in intel_hdmi_hdcp2_read_rx_status() argument
1611 return intel_hdmi_hdcp_read(dig_port, in intel_hdmi_hdcp2_read_rx_status()
1637 hdcp2_detect_msg_availability(struct intel_digital_port *dig_port, in hdcp2_detect_msg_availability() argument
1641 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in hdcp2_detect_msg_availability()
1645 ret = intel_hdmi_hdcp2_read_rx_status(dig_port, rx_status); in hdcp2_detect_msg_availability()
1665 intel_hdmi_hdcp2_wait_for_msg(struct intel_digital_port *dig_port, in intel_hdmi_hdcp2_wait_for_msg() argument
1668 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp2_wait_for_msg()
1677 ret = __wait_for(ret = hdcp2_detect_msg_availability(dig_port, in intel_hdmi_hdcp2_wait_for_msg()
1690 int intel_hdmi_hdcp2_write_msg(struct intel_digital_port *dig_port, in intel_hdmi_hdcp2_write_msg() argument
1696 return intel_hdmi_hdcp_write(dig_port, offset, buf, size); in intel_hdmi_hdcp2_write_msg()
1700 int intel_hdmi_hdcp2_read_msg(struct intel_digital_port *dig_port, in intel_hdmi_hdcp2_read_msg() argument
1703 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdmi_hdcp2_read_msg()
1704 struct intel_hdmi *hdmi = &dig_port->hdmi; in intel_hdmi_hdcp2_read_msg()
1709 ret = intel_hdmi_hdcp2_wait_for_msg(dig_port, msg_id, in intel_hdmi_hdcp2_read_msg()
1726 ret = intel_hdmi_hdcp_read(dig_port, offset, buf, ret); in intel_hdmi_hdcp2_read_msg()
1735 int intel_hdmi_hdcp2_check_link(struct intel_digital_port *dig_port) in intel_hdmi_hdcp2_check_link() argument
1740 ret = intel_hdmi_hdcp2_read_rx_status(dig_port, rx_status); in intel_hdmi_hdcp2_check_link()
1757 int intel_hdmi_hdcp2_capable(struct intel_digital_port *dig_port, in intel_hdmi_hdcp2_capable() argument
1764 ret = intel_hdmi_hdcp_read(dig_port, HDCP_2_2_HDMI_REG_VER_OFFSET, in intel_hdmi_hdcp2_capable()
2072 struct intel_digital_port *dig_port = in intel_disable_hdmi() local
2116 dig_port->set_infoframes(encoder, in intel_disable_hdmi()
2757 struct intel_digital_port *dig_port = in intel_hdmi_pre_enable() local
2762 dig_port->set_infoframes(encoder, in intel_hdmi_pre_enable()
2772 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in vlv_hdmi_pre_enable() local
2781 dig_port->set_infoframes(encoder, in vlv_hdmi_pre_enable()
2787 vlv_wait_port_ready(dev_priv, dig_port, 0x0); in vlv_hdmi_pre_enable()
2848 struct intel_digital_port *dig_port = enc_to_dig_port(encoder); in chv_hdmi_pre_enable() local
2858 dig_port->set_infoframes(encoder, in chv_hdmi_pre_enable()
2864 vlv_wait_port_ready(dev_priv, dig_port, 0x0); in chv_hdmi_pre_enable()
2952 struct intel_digital_port *dig_port = in intel_hdmi_add_properties() local
2964 if (!dig_port->lspcon.active) in intel_hdmi_add_properties()
3201 void intel_infoframe_init(struct intel_digital_port *dig_port) in intel_infoframe_init() argument
3204 to_i915(dig_port->base.base.dev); in intel_infoframe_init()
3207 dig_port->write_infoframe = vlv_write_infoframe; in intel_infoframe_init()
3208 dig_port->read_infoframe = vlv_read_infoframe; in intel_infoframe_init()
3209 dig_port->set_infoframes = vlv_set_infoframes; in intel_infoframe_init()
3210 dig_port->infoframes_enabled = vlv_infoframes_enabled; in intel_infoframe_init()
3212 dig_port->write_infoframe = g4x_write_infoframe; in intel_infoframe_init()
3213 dig_port->read_infoframe = g4x_read_infoframe; in intel_infoframe_init()
3214 dig_port->set_infoframes = g4x_set_infoframes; in intel_infoframe_init()
3215 dig_port->infoframes_enabled = g4x_infoframes_enabled; in intel_infoframe_init()
3217 if (dig_port->lspcon.active) { in intel_infoframe_init()
3218 dig_port->write_infoframe = lspcon_write_infoframe; in intel_infoframe_init()
3219 dig_port->read_infoframe = lspcon_read_infoframe; in intel_infoframe_init()
3220 dig_port->set_infoframes = lspcon_set_infoframes; in intel_infoframe_init()
3221 dig_port->infoframes_enabled = lspcon_infoframes_enabled; in intel_infoframe_init()
3223 dig_port->write_infoframe = hsw_write_infoframe; in intel_infoframe_init()
3224 dig_port->read_infoframe = hsw_read_infoframe; in intel_infoframe_init()
3225 dig_port->set_infoframes = hsw_set_infoframes; in intel_infoframe_init()
3226 dig_port->infoframes_enabled = hsw_infoframes_enabled; in intel_infoframe_init()
3229 dig_port->write_infoframe = ibx_write_infoframe; in intel_infoframe_init()
3230 dig_port->read_infoframe = ibx_read_infoframe; in intel_infoframe_init()
3231 dig_port->set_infoframes = ibx_set_infoframes; in intel_infoframe_init()
3232 dig_port->infoframes_enabled = ibx_infoframes_enabled; in intel_infoframe_init()
3234 dig_port->write_infoframe = cpt_write_infoframe; in intel_infoframe_init()
3235 dig_port->read_infoframe = cpt_read_infoframe; in intel_infoframe_init()
3236 dig_port->set_infoframes = cpt_set_infoframes; in intel_infoframe_init()
3237 dig_port->infoframes_enabled = cpt_infoframes_enabled; in intel_infoframe_init()
3241 void intel_hdmi_init_connector(struct intel_digital_port *dig_port, in intel_hdmi_init_connector() argument
3245 struct intel_hdmi *intel_hdmi = &dig_port->hdmi; in intel_hdmi_init_connector()
3246 struct intel_encoder *intel_encoder = &dig_port->base; in intel_hdmi_init_connector()
3260 if (drm_WARN(dev, dig_port->max_lanes < 4, in intel_hdmi_init_connector()
3262 dig_port->max_lanes, intel_encoder->base.base.id, in intel_hdmi_init_connector()
3350 struct intel_digital_port *dig_port; in intel_hdmi_init() local
3354 dig_port = kzalloc(sizeof(*dig_port), GFP_KERNEL); in intel_hdmi_init()
3355 if (!dig_port) in intel_hdmi_init()
3360 kfree(dig_port); in intel_hdmi_init()
3364 intel_encoder = &dig_port->base; in intel_hdmi_init()
3366 mutex_init(&dig_port->hdcp_mutex); in intel_hdmi_init()
3424 dig_port->hdmi.hdmi_reg = hdmi_reg; in intel_hdmi_init()
3425 dig_port->dp.output_reg = INVALID_MMIO_REG; in intel_hdmi_init()
3426 dig_port->max_lanes = 4; in intel_hdmi_init()
3428 intel_infoframe_init(dig_port); in intel_hdmi_init()
3430 dig_port->aux_ch = intel_bios_port_aux_ch(dev_priv, port); in intel_hdmi_init()
3431 intel_hdmi_init_connector(dig_port, intel_connector); in intel_hdmi_init()