@@ -330,23 +330,13 @@ static const struct hdcp2_dp_msg_data hdcp2_dp_msg_data[] = {
330330 0 , 0 },
331331};
332332
333- static struct drm_dp_aux *
334- intel_dp_hdcp_get_aux (struct intel_connector * connector )
335- {
336- struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
337-
338- if (intel_encoder_is_mst (connector -> encoder ))
339- return & connector -> port -> aux ;
340- else
341- return & dig_port -> dp .aux ;
342- }
343-
344333static int
345334intel_dp_hdcp2_read_rx_status (struct intel_connector * connector ,
346335 u8 * rx_status )
347336{
348337 struct drm_i915_private * i915 = to_i915 (connector -> base .dev );
349- struct drm_dp_aux * aux = intel_dp_hdcp_get_aux (connector );
338+ struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
339+ struct drm_dp_aux * aux = & dig_port -> dp .aux ;
350340 ssize_t ret ;
351341
352342 ret = drm_dp_dpcd_read (aux ,
@@ -399,7 +389,9 @@ intel_dp_hdcp2_wait_for_msg(struct intel_connector *connector,
399389 const struct hdcp2_dp_msg_data * hdcp2_msg_data )
400390{
401391 struct drm_i915_private * i915 = to_i915 (connector -> base .dev );
402- struct intel_hdcp * hdcp = & connector -> hdcp ;
392+ struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
393+ struct intel_dp * dp = & dig_port -> dp ;
394+ struct intel_hdcp * hdcp = & dp -> attached_connector -> hdcp ;
403395 u8 msg_id = hdcp2_msg_data -> msg_id ;
404396 int ret , timeout ;
405397 bool msg_ready = false;
@@ -454,17 +446,16 @@ int intel_dp_hdcp2_write_msg(struct intel_connector *connector,
454446 unsigned int offset ;
455447 u8 * byte = buf ;
456448 ssize_t ret , bytes_to_write , len ;
449+ struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
450+ struct drm_dp_aux * aux = & dig_port -> dp .aux ;
457451 const struct hdcp2_dp_msg_data * hdcp2_msg_data ;
458- struct drm_dp_aux * aux ;
459452
460453 hdcp2_msg_data = get_hdcp2_dp_msg_data (* byte );
461454 if (!hdcp2_msg_data )
462455 return - EINVAL ;
463456
464457 offset = hdcp2_msg_data -> offset ;
465458
466- aux = intel_dp_hdcp_get_aux (connector );
467-
468459 /* No msg_id in DP HDCP2.2 msgs */
469460 bytes_to_write = size - 1 ;
470461 byte ++ ;
@@ -490,7 +481,8 @@ static
490481ssize_t get_receiver_id_list_rx_info (struct intel_connector * connector ,
491482 u32 * dev_cnt , u8 * byte )
492483{
493- struct drm_dp_aux * aux = intel_dp_hdcp_get_aux (connector );
484+ struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
485+ struct drm_dp_aux * aux = & dig_port -> dp .aux ;
494486 ssize_t ret ;
495487 u8 * rx_info = byte ;
496488
@@ -515,8 +507,9 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
515507{
516508 struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
517509 struct drm_i915_private * i915 = to_i915 (dig_port -> base .base .dev );
518- struct intel_hdcp * hdcp = & connector -> hdcp ;
519- struct drm_dp_aux * aux ;
510+ struct drm_dp_aux * aux = & dig_port -> dp .aux ;
511+ struct intel_dp * dp = & dig_port -> dp ;
512+ struct intel_hdcp * hdcp = & dp -> attached_connector -> hdcp ;
520513 unsigned int offset ;
521514 u8 * byte = buf ;
522515 ssize_t ret , bytes_to_recv , len ;
@@ -530,8 +523,6 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
530523 return - EINVAL ;
531524 offset = hdcp2_msg_data -> offset ;
532525
533- aux = intel_dp_hdcp_get_aux (connector );
534-
535526 ret = intel_dp_hdcp2_wait_for_msg (connector , hdcp2_msg_data );
536527 if (ret < 0 )
537528 return ret ;
@@ -561,13 +552,8 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
561552
562553 /* Entire msg read timeout since initiate of msg read */
563554 if (bytes_to_recv == size - 1 && hdcp2_msg_data -> msg_read_timeout > 0 ) {
564- if (intel_encoder_is_mst (connector -> encoder ))
565- msg_end = ktime_add_ms (ktime_get_raw (),
566- hdcp2_msg_data -> msg_read_timeout *
567- connector -> port -> parent -> num_ports );
568- else
569- msg_end = ktime_add_ms (ktime_get_raw (),
570- hdcp2_msg_data -> msg_read_timeout );
555+ msg_end = ktime_add_ms (ktime_get_raw (),
556+ hdcp2_msg_data -> msg_read_timeout );
571557 }
572558
573559 ret = drm_dp_dpcd_read (aux , offset ,
@@ -651,12 +637,11 @@ static
651637int intel_dp_hdcp2_capable (struct intel_connector * connector ,
652638 bool * capable )
653639{
654- struct drm_dp_aux * aux ;
640+ struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
641+ struct drm_dp_aux * aux = & dig_port -> dp .aux ;
655642 u8 rx_caps [3 ];
656643 int ret ;
657644
658- aux = intel_dp_hdcp_get_aux (connector );
659-
660645 * capable = false;
661646 ret = drm_dp_dpcd_read (aux ,
662647 DP_HDCP_2_2_REG_RX_CAPS_OFFSET ,
0 commit comments