@@ -330,23 +330,13 @@ static const struct hdcp2_dp_msg_data hdcp2_dp_msg_data[] = {
330
330
0 , 0 },
331
331
};
332
332
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
-
344
333
static int
345
334
intel_dp_hdcp2_read_rx_status (struct intel_connector * connector ,
346
335
u8 * rx_status )
347
336
{
348
337
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 ;
350
340
ssize_t ret ;
351
341
352
342
ret = drm_dp_dpcd_read (aux ,
@@ -399,7 +389,9 @@ intel_dp_hdcp2_wait_for_msg(struct intel_connector *connector,
399
389
const struct hdcp2_dp_msg_data * hdcp2_msg_data )
400
390
{
401
391
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 ;
403
395
u8 msg_id = hdcp2_msg_data -> msg_id ;
404
396
int ret , timeout ;
405
397
bool msg_ready = false;
@@ -454,17 +446,16 @@ int intel_dp_hdcp2_write_msg(struct intel_connector *connector,
454
446
unsigned int offset ;
455
447
u8 * byte = buf ;
456
448
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 ;
457
451
const struct hdcp2_dp_msg_data * hdcp2_msg_data ;
458
- struct drm_dp_aux * aux ;
459
452
460
453
hdcp2_msg_data = get_hdcp2_dp_msg_data (* byte );
461
454
if (!hdcp2_msg_data )
462
455
return - EINVAL ;
463
456
464
457
offset = hdcp2_msg_data -> offset ;
465
458
466
- aux = intel_dp_hdcp_get_aux (connector );
467
-
468
459
/* No msg_id in DP HDCP2.2 msgs */
469
460
bytes_to_write = size - 1 ;
470
461
byte ++ ;
@@ -490,7 +481,8 @@ static
490
481
ssize_t get_receiver_id_list_rx_info (struct intel_connector * connector ,
491
482
u32 * dev_cnt , u8 * byte )
492
483
{
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 ;
494
486
ssize_t ret ;
495
487
u8 * rx_info = byte ;
496
488
@@ -515,8 +507,9 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
515
507
{
516
508
struct intel_digital_port * dig_port = intel_attached_dig_port (connector );
517
509
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 ;
520
513
unsigned int offset ;
521
514
u8 * byte = buf ;
522
515
ssize_t ret , bytes_to_recv , len ;
@@ -530,8 +523,6 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
530
523
return - EINVAL ;
531
524
offset = hdcp2_msg_data -> offset ;
532
525
533
- aux = intel_dp_hdcp_get_aux (connector );
534
-
535
526
ret = intel_dp_hdcp2_wait_for_msg (connector , hdcp2_msg_data );
536
527
if (ret < 0 )
537
528
return ret ;
@@ -561,13 +552,8 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
561
552
562
553
/* Entire msg read timeout since initiate of msg read */
563
554
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 );
571
557
}
572
558
573
559
ret = drm_dp_dpcd_read (aux , offset ,
@@ -651,12 +637,11 @@ static
651
637
int intel_dp_hdcp2_capable (struct intel_connector * connector ,
652
638
bool * capable )
653
639
{
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 ;
655
642
u8 rx_caps [3 ];
656
643
int ret ;
657
644
658
- aux = intel_dp_hdcp_get_aux (connector );
659
-
660
645
* capable = false;
661
646
ret = drm_dp_dpcd_read (aux ,
662
647
DP_HDCP_2_2_REG_RX_CAPS_OFFSET ,
0 commit comments