315,8 → 315,19 |
unsigned max_lane_num = drm_dp_max_lane_count(dpcd); |
unsigned lane_num, i, max_pix_clock; |
|
if (radeon_connector_encoder_get_dp_bridge_encoder_id(connector) == |
ENCODER_OBJECT_ID_NUTMEG) { |
for (lane_num = 1; lane_num <= max_lane_num; lane_num <<= 1) { |
max_pix_clock = (lane_num * 270000 * 8) / bpp; |
if (max_pix_clock >= pix_clock) { |
*dp_lanes = lane_num; |
*dp_rate = 270000; |
return 0; |
} |
} |
} else { |
for (i = 0; i < ARRAY_SIZE(link_rates) && link_rates[i] <= max_link_rate; i++) { |
for (lane_num = 1; lane_num <= max_lane_num; lane_num <<= 1) { |
max_pix_clock = (lane_num * link_rates[i] * 8) / bpp; |
if (max_pix_clock >= pix_clock) { |
*dp_lanes = lane_num; |
325,6 → 336,7 |
} |
} |
} |
} |
|
return -EINVAL; |
} |