Lines Matching refs:dig_port

62 intel_hdcp_required_content_stream(struct intel_digital_port *dig_port)  in intel_hdcp_required_content_stream()  argument
67 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdcp_required_content_stream()
68 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in intel_hdcp_required_content_stream()
74 if (dig_port->hdcp_auth_status) in intel_hdcp_required_content_stream()
86 if (conn_dig_port != dig_port) in intel_hdcp_required_content_stream()
96 if (dig_port->dp.active_mst_links <= 1) in intel_hdcp_required_content_stream()
129 int intel_hdcp_read_valid_bksv(struct intel_digital_port *dig_port, in intel_hdcp_read_valid_bksv() argument
132 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_hdcp_read_valid_bksv()
137 ret = shim->read_bksv(dig_port, bksv); in intel_hdcp_read_valid_bksv()
154 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_capable() local
163 shim->hdcp_capable(dig_port, &capable); in intel_hdcp_capable()
165 if (!intel_hdcp_read_valid_bksv(dig_port, shim, bksv)) in intel_hdcp_capable()
175 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp2_capable() local
193 hdcp->shim->hdcp_2_2_capable(dig_port, &capable); in intel_hdcp2_capable()
214 static int intel_hdcp_poll_ksv_fifo(struct intel_digital_port *dig_port, in intel_hdcp_poll_ksv_fifo() argument
221 ret = __wait_for(read_ret = shim->read_ksv_ready(dig_port, in intel_hdcp_poll_ksv_fifo()
381 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_validate_v_prime() local
384 enum port port = dig_port->base.port; in intel_hdcp_validate_v_prime()
390 ret = shim->read_v_prime_part(dig_port, i, &vprime); in intel_hdcp_validate_v_prime()
623 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_auth_downstream() local
629 ret = intel_hdcp_poll_ksv_fifo(dig_port, shim); in intel_hdcp_auth_downstream()
636 ret = shim->read_bstatus(dig_port, bstatus); in intel_hdcp_auth_downstream()
666 ret = shim->read_ksv_fifo(dig_port, num_downstream, ksv_fifo); in intel_hdcp_auth_downstream()
706 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_auth() local
711 enum port port = dig_port->base.port; in intel_hdcp_auth()
735 ret = shim->hdcp_capable(dig_port, &hdcp_capable); in intel_hdcp_auth()
765 ret = shim->write_an_aksv(dig_port, an.shim); in intel_hdcp_auth()
773 ret = intel_hdcp_read_valid_bksv(dig_port, shim, bksv.shim); in intel_hdcp_auth()
787 ret = shim->repeater_present(dig_port, &repeater_present); in intel_hdcp_auth()
794 ret = shim->toggle_signalling(dig_port, cpu_transcoder, true); in intel_hdcp_auth()
827 ret = shim->read_ri_prime(dig_port, ri.shim); in intel_hdcp_auth()
878 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in _intel_hdcp_disable() local
881 enum port port = dig_port->base.port; in _intel_hdcp_disable()
903 if (dig_port->num_hdcp_streams > 0) in _intel_hdcp_disable()
922 ret = hdcp->shim->toggle_signalling(dig_port, cpu_transcoder, false); in _intel_hdcp_disable()
986 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_update_value() local
994 drm_WARN_ON(dev, !mutex_is_locked(&dig_port->hdcp_mutex)); in intel_hdcp_update_value()
997 if (!drm_WARN_ON(dev, dig_port->num_hdcp_streams == 0)) in intel_hdcp_update_value()
998 dig_port->num_hdcp_streams--; in intel_hdcp_update_value()
1000 dig_port->num_hdcp_streams++; in intel_hdcp_update_value()
1013 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_check_link() local
1016 enum port port = dig_port->base.port; in intel_hdcp_check_link()
1021 mutex_lock(&dig_port->hdcp_mutex); in intel_hdcp_check_link()
1045 if (hdcp->shim->check_link(dig_port, connector)) { in intel_hdcp_check_link()
1076 mutex_unlock(&dig_port->hdcp_mutex); in intel_hdcp_check_link()
1116 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_prepare_ake_init() local
1117 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_prepare_ake_init()
1146 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_verify_rx_cert_prepare_km() local
1147 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_verify_rx_cert_prepare_km()
1174 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_verify_hprime() local
1175 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_verify_hprime()
1200 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_store_pairing_info() local
1201 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_store_pairing_info()
1227 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_prepare_lc_init() local
1228 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_prepare_lc_init()
1254 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_verify_lprime() local
1255 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_verify_lprime()
1280 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_prepare_skey() local
1281 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_prepare_skey()
1309 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_verify_rep_topology_prepare_ack() local
1310 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_verify_rep_topology_prepare_ack()
1338 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_verify_mprime() local
1339 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_verify_mprime()
1362 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_authenticate_port() local
1363 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_authenticate_port()
1387 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_close_mei_session() local
1401 &dig_port->hdcp_port_data); in hdcp2_close_mei_session()
1415 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_authentication_key_exchange() local
1437 ret = shim->write_2_2_msg(dig_port, &msgs.ake_init, in hdcp2_authentication_key_exchange()
1442 ret = shim->read_2_2_msg(dig_port, HDCP_2_2_AKE_SEND_CERT, in hdcp2_authentication_key_exchange()
1471 ret = shim->write_2_2_msg(dig_port, &msgs.no_stored_km, size); in hdcp2_authentication_key_exchange()
1475 ret = shim->read_2_2_msg(dig_port, HDCP_2_2_AKE_SEND_HPRIME, in hdcp2_authentication_key_exchange()
1486 ret = shim->read_2_2_msg(dig_port, in hdcp2_authentication_key_exchange()
1504 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_locality_check() local
1518 ret = shim->write_2_2_msg(dig_port, &msgs.lc_init, in hdcp2_locality_check()
1523 ret = shim->read_2_2_msg(dig_port, in hdcp2_locality_check()
1540 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_session_key_exchange() local
1549 ret = hdcp->shim->write_2_2_msg(dig_port, &send_eks, in hdcp2_session_key_exchange()
1560 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in _hdcp2_propagate_stream_management_info() local
1561 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in _hdcp2_propagate_stream_management_info()
1587 ret = shim->write_2_2_msg(dig_port, &msgs.stream_manage, in _hdcp2_propagate_stream_management_info()
1592 ret = shim->read_2_2_msg(dig_port, HDCP_2_2_REP_STREAM_READY, in _hdcp2_propagate_stream_management_info()
1610 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_authenticate_repeater_topology() local
1622 ret = shim->read_2_2_msg(dig_port, HDCP_2_2_REP_SEND_RECVID_LIST, in hdcp2_authenticate_repeater_topology()
1667 ret = shim->write_2_2_msg(dig_port, &msgs.rep_ack, in hdcp2_authenticate_repeater_topology()
1677 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_authenticate_sink() local
1703 ret = shim->config_stream_type(dig_port, in hdcp2_authenticate_sink()
1724 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_enable_stream_encryption() local
1726 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in hdcp2_enable_stream_encryption()
1729 enum port port = dig_port->base.port; in hdcp2_enable_stream_encryption()
1757 dig_port->hdcp_auth_status = false; in hdcp2_enable_stream_encryption()
1765 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_enable_encryption() local
1768 enum port port = dig_port->base.port; in hdcp2_enable_encryption()
1776 ret = hdcp->shim->toggle_signalling(dig_port, cpu_transcoder, in hdcp2_enable_encryption()
1799 dig_port->hdcp_auth_status = true; in hdcp2_enable_encryption()
1806 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_disable_encryption() local
1809 enum port port = dig_port->base.port; in hdcp2_disable_encryption()
1828 ret = hdcp->shim->toggle_signalling(dig_port, cpu_transcoder, in hdcp2_disable_encryption()
1872 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in hdcp2_authenticate_and_encrypt() local
1876 for (i = 0; i < tries && !dig_port->hdcp_auth_status; i++) { in hdcp2_authenticate_and_encrypt()
1901 if (!ret && !dig_port->hdcp_auth_status) { in hdcp2_authenticate_and_encrypt()
1924 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in _intel_hdcp2_enable() local
1926 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in _intel_hdcp2_enable()
1939 ret = intel_hdcp_required_content_stream(dig_port); in _intel_hdcp2_enable()
1962 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in _intel_hdcp2_disable() local
1964 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in _intel_hdcp2_disable()
1981 if (dig_port->num_hdcp_streams > 0 && !hdcp2_link_recovery) in _intel_hdcp2_disable()
1991 dig_port->hdcp_auth_status = false; in _intel_hdcp2_disable()
2000 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp2_check_link() local
2003 enum port port = dig_port->base.port; in intel_hdcp2_check_link()
2008 mutex_lock(&dig_port->hdcp_mutex); in intel_hdcp2_check_link()
2031 ret = hdcp->shim->check_2_2_link(dig_port, connector); in intel_hdcp2_check_link()
2087 mutex_unlock(&dig_port->hdcp_mutex); in intel_hdcp2_check_link()
2163 struct intel_digital_port *dig_port, in initialize_hdcp_port_data() argument
2167 struct hdcp_port_data *data = &dig_port->hdcp_port_data; in initialize_hdcp_port_data()
2169 enum port port = dig_port->base.port; in initialize_hdcp_port_data()
2241 struct intel_digital_port *dig_port, in intel_hdcp2_init() argument
2248 ret = initialize_hdcp_port_data(connector, dig_port, shim); in intel_hdcp2_init()
2258 struct intel_digital_port *dig_port, in intel_hdcp_init() argument
2269 intel_hdcp2_init(connector, dig_port, shim); in intel_hdcp_init()
2276 kfree(dig_port->hdcp_port_data.streams); in intel_hdcp_init()
2293 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_enable() local
2308 mutex_lock(&dig_port->hdcp_mutex); in intel_hdcp_enable()
2322 dig_port->hdcp_port_data.fw_tc = intel_get_mei_fw_tc(hdcp->cpu_transcoder); in intel_hdcp_enable()
2350 mutex_unlock(&dig_port->hdcp_mutex); in intel_hdcp_enable()
2357 struct intel_digital_port *dig_port = intel_attached_dig_port(connector); in intel_hdcp_disable() local
2365 mutex_lock(&dig_port->hdcp_mutex); in intel_hdcp_disable()
2378 mutex_unlock(&dig_port->hdcp_mutex); in intel_hdcp_disable()