Skip to content

Commit

Permalink
drm/i915: Use the correct max source link rate for MST
Browse files Browse the repository at this point in the history
[why]
Previously used value was not safe to provide the correct value, i.e. it
could be 0 if not not configured, leading to no MST on this platform.

[how]
Do not use the value from BIOS, but from the structure populated at
encoder initialization time.

Fixes: 98025a6 ("drm/dp_mst: Use Extended Base Receiver Capability DPCD space")
Signed-off-by: Nikola Cornij <nikola.cornij@amd.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
[fixed open coded drm_dp_link_rate_to_bw_code()]
Signed-off-by: Lyude Paul <lyude@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210430214531.24565-2-nikola.cornij@amd.com
  • Loading branch information
Nikola Cornij authored and Lyude Paul committed Apr 30, 2021
1 parent 70e1256 commit 4128359
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions drivers/gpu/drm/i915/display/intel_dp_mst.c
Original file line number Diff line number Diff line change
Expand Up @@ -942,7 +942,8 @@ intel_dp_mst_encoder_init(struct intel_digital_port *dig_port, int conn_base_id)
struct intel_dp *intel_dp = &dig_port->dp;
enum port port = dig_port->base.port;
int ret;
int bios_max_link_rate;
int max_source_rate =
intel_dp->source_rates[intel_dp->num_source_rates - 1];

if (!HAS_DP_MST(i915) || intel_dp_is_edp(intel_dp))
return 0;
Expand All @@ -957,11 +958,11 @@ intel_dp_mst_encoder_init(struct intel_digital_port *dig_port, int conn_base_id)

/* create encoders */
intel_dp_create_fake_mst_encoders(dig_port);
bios_max_link_rate = intel_bios_dp_max_link_rate(&dig_port->base);
ret = drm_dp_mst_topology_mgr_init(&intel_dp->mst_mgr, &i915->drm,
&intel_dp->aux, 16, 3,
(u8)dig_port->max_lanes,
(u8)(bios_max_link_rate / 27000), conn_base_id);
drm_dp_link_rate_to_bw_code(max_source_rate),
conn_base_id);
if (ret)
return ret;

Expand Down

0 comments on commit 4128359

Please sign in to comment.