OSDN Git Service

drm/uapi: Deprecate nonsense kms mode types
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 15 Nov 2017 15:45:04 +0000 (17:45 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 29 Jan 2018 19:45:29 +0000 (21:45 +0200)
BUILTIN, CRTC_C, CLOCK_C, and DEFULT mode types are unused. Let's
refuse to generate them or accept them from userspace either. A
cursory check didn't reveal any userspace code that would depend
on these.

v2: Recommend DRIVER instead of BUILTIN (ajax)

Cc: Jose Abreu <Jose.Abreu@synopsys.com>
Cc: Adam Jackson <ajax@redhat.com>
Cc: Keith Packard <keithp@keithp.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171115154504.14338-1-ville.syrjala@linux.intel.com
Reviewed-by: Jose Abreu <joabreu@synopsys.com>
include/drm/drm_modes.h
include/uapi/drm/drm_mode.h

index 99dd815..71cbb10 100644 (file)
@@ -242,8 +242,6 @@ struct drm_display_mode {
         * A bitmask of flags, mostly about the source of a mode. Possible flags
         * are:
         *
-        *  - DRM_MODE_TYPE_BUILTIN: Meant for hard-coded modes, effectively
-        *    unused.
         *  - DRM_MODE_TYPE_PREFERRED: Preferred mode, usually the native
         *    resolution of an LCD panel. There should only be one preferred
         *    mode per connector at any given time.
@@ -253,8 +251,11 @@ struct drm_display_mode {
         *  - DRM_MODE_TYPE_USERDEF: Mode defined via kernel command line
         *
         * Plus a big list of flags which shouldn't be used at all, but are
-        * still around since these flags are also used in the userspace ABI:
+        * still around since these flags are also used in the userspace ABI.
+        * We no longer accept modes with these types though:
         *
+        *  - DRM_MODE_TYPE_BUILTIN: Meant for hard-coded modes, unused.
+        *    Use DRM_MODE_TYPE_DRIVER instead.
         *  - DRM_MODE_TYPE_DEFAULT: Again a leftover, use
         *    DRM_MODE_TYPE_PREFERRED instead.
         *  - DRM_MODE_TYPE_CLOCK_C and DRM_MODE_TYPE_CRTC_C: Define leftovers
index a7cded1..eb9b68c 100644 (file)
@@ -38,19 +38,15 @@ extern "C" {
 #define DRM_DISPLAY_MODE_LEN   32
 #define DRM_PROP_NAME_LEN      32
 
-#define DRM_MODE_TYPE_BUILTIN  (1<<0)
-#define DRM_MODE_TYPE_CLOCK_C  ((1<<1) | DRM_MODE_TYPE_BUILTIN)
-#define DRM_MODE_TYPE_CRTC_C   ((1<<2) | DRM_MODE_TYPE_BUILTIN)
+#define DRM_MODE_TYPE_BUILTIN  (1<<0) /* deprecated */
+#define DRM_MODE_TYPE_CLOCK_C  ((1<<1) | DRM_MODE_TYPE_BUILTIN) /* deprecated */
+#define DRM_MODE_TYPE_CRTC_C   ((1<<2) | DRM_MODE_TYPE_BUILTIN) /* deprecated */
 #define DRM_MODE_TYPE_PREFERRED        (1<<3)
-#define DRM_MODE_TYPE_DEFAULT  (1<<4)
+#define DRM_MODE_TYPE_DEFAULT  (1<<4) /* deprecated */
 #define DRM_MODE_TYPE_USERDEF  (1<<5)
 #define DRM_MODE_TYPE_DRIVER   (1<<6)
 
-#define DRM_MODE_TYPE_ALL      (DRM_MODE_TYPE_BUILTIN |        \
-                                DRM_MODE_TYPE_CLOCK_C |        \
-                                DRM_MODE_TYPE_CRTC_C |         \
-                                DRM_MODE_TYPE_PREFERRED |      \
-                                DRM_MODE_TYPE_DEFAULT |        \
+#define DRM_MODE_TYPE_ALL      (DRM_MODE_TYPE_PREFERRED |      \
                                 DRM_MODE_TYPE_USERDEF |        \
                                 DRM_MODE_TYPE_DRIVER)