From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adam Jackson Subject: [PATCH 1/3] drm/edid: Be stricter about stereo mode rejection Date: Wed, 6 Jun 2012 15:07:51 -0400 Message-ID: <1339009673-30704-1-git-send-email-ajax@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTP id D6C21A08DA for ; Wed, 6 Jun 2012 12:07:54 -0700 (PDT) Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q56J7sa2026016 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Wed, 6 Jun 2012 15:07:54 -0400 Received: from ihatethathostname.lab.bos.redhat.com (ihatethathostname.lab.bos.redhat.com [10.16.43.238]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id q56J7rZ7027422 for ; Wed, 6 Jun 2012 15:07:54 -0400 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org Either bit 5 or 6 of that byte may be set in a stereo mode. E-EDID v1.4, Table 3.22 Signed-off-by: Adam Jackson --- drivers/gpu/drm/drm_edid.c | 5 +++-- include/drm/drm_edid.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index eb92fe2..e7547e3 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -883,10 +883,11 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev, if (hactive < 64 || vactive < 64) return NULL; - if (pt->misc & DRM_EDID_PT_STEREO) { - printk(KERN_WARNING "stereo mode not supported\n"); + if (pt->misc & DRM_EDID_PT_STEREO_MASK) { + DRM_DEBUG_KMS(KERN_WARNING "stereo modes not supported\n"); return NULL; } + if (!(pt->misc & DRM_EDID_PT_SEPARATE_SYNC)) { printk(KERN_WARNING "composite sync not supported\n"); } diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h index 0cac551..6350ea0 100644 --- a/include/drm/drm_edid.h +++ b/include/drm/drm_edid.h @@ -56,7 +56,7 @@ struct std_timing { #define DRM_EDID_PT_HSYNC_POSITIVE (1 << 1) #define DRM_EDID_PT_VSYNC_POSITIVE (1 << 2) #define DRM_EDID_PT_SEPARATE_SYNC (3 << 3) -#define DRM_EDID_PT_STEREO (1 << 5) +#define DRM_EDID_PT_STEREO_MASK (3 << 5) #define DRM_EDID_PT_INTERLACED (1 << 7) /* If detailed data is pixel timing */ -- 1.7.7.6