Commit 3974f9c1 authored by Suraj Kandpal's avatar Suraj Kandpal Committed by Uma Shankar

drm/i915/hdcp: Adjust timeout for read in DPMST Scenario

For dpmst hdcp scenario increase the message timeout based
on the number of ports connected as each port needs to be
validated and each will take the prescribed amount of time
for the respective msg_id and total timeout will be
original_timeout * num_ports.

--v2
-Add justification for Adjusting the timeout [Arun]
Signed-off-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: default avatarArun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: default avatarUma Shankar <uma.shankar@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230828063401.600414-5-suraj.kandpal@intel.com
parent ae4f902b
...@@ -560,9 +560,15 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector, ...@@ -560,9 +560,15 @@ int intel_dp_hdcp2_read_msg(struct intel_connector *connector,
DP_AUX_MAX_PAYLOAD_BYTES : bytes_to_recv; DP_AUX_MAX_PAYLOAD_BYTES : bytes_to_recv;
/* Entire msg read timeout since initiate of msg read */ /* Entire msg read timeout since initiate of msg read */
if (bytes_to_recv == size - 1 && hdcp2_msg_data->msg_read_timeout > 0) if (bytes_to_recv == size - 1 && hdcp2_msg_data->msg_read_timeout > 0) {
if (intel_encoder_is_mst(connector->encoder))
msg_end = ktime_add_ms(ktime_get_raw(),
hdcp2_msg_data->msg_read_timeout *
connector->port->parent->num_ports);
else
msg_end = ktime_add_ms(ktime_get_raw(), msg_end = ktime_add_ms(ktime_get_raw(),
hdcp2_msg_data->msg_read_timeout); hdcp2_msg_data->msg_read_timeout);
}
ret = drm_dp_dpcd_read(aux, offset, ret = drm_dp_dpcd_read(aux, offset,
(void *)byte, len); (void *)byte, len);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment