NACK until we get to the right reason.

-----Original Message-----
From: ville.syrjala at linux.intel.com [mailto:ville.syrj...@linux.intel.com] 
Sent: Thursday, November 3, 2016 6:02 PM
To: dri-devel at lists.freedesktop.org
Cc: Sharma, Shashank <shashank.sharma at intel.com>; Lin; Jia, Lin A <lin.a.jia 
at intel.com>; Sharma, Akashdeep <akashdeep.sharma at intel.com>; Jim Bride 
<jim.bride at linux.intel.com>; Jose Abreu <Jose.Abreu at synopsys.com>; Daniel 
Vetter <daniel.vetter at ffwll.ch>; Emil Velikov <emil.l.velikov at gmail.com>
Subject: [PATCH 2/2] Revert "drm: Add aspect ratio parsing in DRM layer"

From: Ville Syrjälä <ville.syrj...@linux.intel.com>

This reverts commit 6dffd431e2296cda08e7e4f0242e02df1d1698cd.

Adding new mode flags willy nilly breaks existing userspace. We need to 
coordinate this better, potentially with a new client cap that only exposes the 
aspect ratio flags when userspace is prepared for them (similar to what we do 
with stereo 3D modes).

This also broke things so that we would always send out VIC==0 in the AVI 
infoframe unless the user specified an aspect ratio via the mode flags. And the 
automagic RGB full vs. limited range handling was similartly broken as the user 
mode would never match any CEA mode.

Cc: Shashank Sharma <shashank.sharma at intel.com>
Cc: Lin, Jia <lin.a.jia at intel.com>
Cc: Akashdeep Sharma <akashdeep.sharma at intel.com>
Cc: Jim Bride <jim.bride at linux.intel.com>
Cc: Jose Abreu <Jose.Abreu at synopsys.com>
Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
Cc: Emil Velikov <emil.l.velikov at gmail.com>
Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
 drivers/gpu/drm/drm_modes.c | 31 -------------------------------
 1 file changed, 31 deletions(-)

diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c index 
725faa6409aa..18442b5bb34c 100644
--- a/drivers/gpu/drm/drm_modes.c
+++ b/drivers/gpu/drm/drm_modes.c
@@ -1001,7 +1001,6 @@ bool drm_mode_equal_no_clocks_no_stereo(const struct 
drm_display_mode *mode1,
            mode1->vsync_end == mode2->vsync_end &&
            mode1->vtotal == mode2->vtotal &&
            mode1->vscan == mode2->vscan &&
-           mode1->picture_aspect_ratio == mode2->picture_aspect_ratio &&
            (mode1->flags & ~DRM_MODE_FLAG_3D_MASK) ==
             (mode2->flags & ~DRM_MODE_FLAG_3D_MASK))
                return true;
@@ -1504,21 +1503,6 @@ void drm_mode_convert_to_umode(struct drm_mode_modeinfo 
*out,
        out->vrefresh = in->vrefresh;
        out->flags = in->flags;
        out->type = in->type;
-       out->flags &= ~DRM_MODE_FLAG_PIC_AR_MASK;
-
-       switch (in->picture_aspect_ratio) {
-       case HDMI_PICTURE_ASPECT_4_3:
-               out->flags |= DRM_MODE_FLAG_PIC_AR_4_3;
-               break;
-       case HDMI_PICTURE_ASPECT_16_9:
-               out->flags |= DRM_MODE_FLAG_PIC_AR_16_9;
-               break;
-       case HDMI_PICTURE_ASPECT_RESERVED:
-       default:
-               out->flags |= DRM_MODE_FLAG_PIC_AR_NONE;
-               break;
-       }
-
        strncpy(out->name, in->name, DRM_DISPLAY_MODE_LEN);
        out->name[DRM_DISPLAY_MODE_LEN-1] = 0;  } @@ -1564,21 +1548,6 @@ int 
drm_mode_convert_umode(struct drm_display_mode *out,
        strncpy(out->name, in->name, DRM_DISPLAY_MODE_LEN);
        out->name[DRM_DISPLAY_MODE_LEN-1] = 0;

-       /* Clearing picture aspect ratio bits from out flags */
-       out->flags &= ~DRM_MODE_FLAG_PIC_AR_MASK;
-
-       switch (in->flags & DRM_MODE_FLAG_PIC_AR_MASK) {
-       case DRM_MODE_FLAG_PIC_AR_4_3:
-               out->picture_aspect_ratio |= HDMI_PICTURE_ASPECT_4_3;
-               break;
-       case DRM_MODE_FLAG_PIC_AR_16_9:
-               out->picture_aspect_ratio |= HDMI_PICTURE_ASPECT_16_9;
-               break;
-       default:
-               out->picture_aspect_ratio = HDMI_PICTURE_ASPECT_NONE;
-               break;
-       }
-
        out->status = drm_mode_validate_basic(out);
        if (out->status != MODE_OK)
                goto out;
--
2.7.4

Reply via email to