mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
drm/bridge: analogix_dp: Support max_link_rate limit
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com> Change-Id: I704987e5a20402b451d0d8a0a0d7e0ae1649be25
This commit is contained in:
@@ -1927,6 +1927,7 @@ static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp)
|
||||
struct video_info *video_info = &dp->video_info;
|
||||
struct property *prop;
|
||||
int ret, len, num_lanes;
|
||||
u32 max_link_rate;
|
||||
|
||||
switch (dp->plat_data->dev_type) {
|
||||
case RK3288_DP:
|
||||
@@ -1955,6 +1956,25 @@ static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp)
|
||||
break;
|
||||
}
|
||||
|
||||
if (!of_property_read_u32(dp_node, "max-link-rate", &max_link_rate)) {
|
||||
switch (max_link_rate) {
|
||||
case 1620:
|
||||
case 2700:
|
||||
case 5400:
|
||||
break;
|
||||
default:
|
||||
dev_err(dp->dev, "invalid max-link-rate value: %d\n",
|
||||
max_link_rate);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
max_link_rate *= 100;
|
||||
|
||||
if (max_link_rate < drm_dp_bw_code_to_link_rate(video_info->max_link_rate))
|
||||
video_info->max_link_rate =
|
||||
drm_dp_link_rate_to_bw_code(max_link_rate);
|
||||
}
|
||||
|
||||
video_info->video_bist_enable =
|
||||
of_property_read_bool(dp_node, "analogix,video-bist-enable");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user