提交 fc438966 编写于 作者: A Adam Jackson 提交者: Dave Airlie

drm: ignore EDID with really tiny modes.

Some EDIDs lie and report tiny modes that aren't possible. Ignore
these modes.
Signed-off-by: NAdam Jackson <ajax@redhat.com>
Signed-off-by: NDave Airlie <airlied@redhat.com>
上级 6c51d1cf
...@@ -289,6 +289,11 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev, ...@@ -289,6 +289,11 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev,
struct drm_display_mode *mode; struct drm_display_mode *mode;
struct detailed_pixel_timing *pt = &timing->data.pixel_data; struct detailed_pixel_timing *pt = &timing->data.pixel_data;
/* ignore tiny modes */
if (((pt->hactive_hi << 8) | pt->hactive_lo) < 64 ||
((pt->vactive_hi << 8) | pt->hactive_lo) < 64)
return NULL;
if (pt->stereo) { if (pt->stereo) {
printk(KERN_WARNING "stereo mode not supported\n"); printk(KERN_WARNING "stereo mode not supported\n");
return NULL; return NULL;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册