diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index ddb15d6de05f..a74c855936b2 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -1274,7 +1274,8 @@ static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp) return dev_err_probe(dp->dev, -EINVAL, "Failed to get samsung,link-rate\n"); video_info->max_link_rate = val; - if (of_property_read_u32(dp_node, "samsung,lane-count", &val)) + if (of_property_read_u32(dp_node, "samsung,lane-count", &val) || + !drm_dp_lane_count_is_valid(val)) return dev_err_probe(dp->dev, -EINVAL, "Failed to get samsung,lane-count\n"); video_info->max_lane_count = val;