diff options
-rw-r--r-- | drivers/gpu/drm/drm_crtc.c | 3 | ||||
-rw-r--r-- | include/drm/drm_crtc.h | 2 | ||||
-rw-r--r-- | include/uapi/drm/drm_mode.h | 4 |
3 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 2ce80ed55b08..d7a8370e3cdc 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c | |||
@@ -1319,6 +1319,9 @@ static int drm_crtc_convert_umode(struct drm_display_mode *out, | |||
1319 | if (in->clock > INT_MAX || in->vrefresh > INT_MAX) | 1319 | if (in->clock > INT_MAX || in->vrefresh > INT_MAX) |
1320 | return -ERANGE; | 1320 | return -ERANGE; |
1321 | 1321 | ||
1322 | if ((in->flags & DRM_MODE_FLAG_3D_MASK) > DRM_MODE_FLAG_3D_MAX) | ||
1323 | return -EINVAL; | ||
1324 | |||
1322 | out->clock = in->clock; | 1325 | out->clock = in->clock; |
1323 | out->hdisplay = in->hdisplay; | 1326 | out->hdisplay = in->hdisplay; |
1324 | out->hsync_start = in->hsync_start; | 1327 | out->hsync_start = in->hsync_start; |
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index eb6b8dc971d9..50cedadc9fcc 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h | |||
@@ -128,6 +128,8 @@ enum drm_mode_status { | |||
128 | #define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */ | 128 | #define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */ |
129 | #define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */ | 129 | #define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */ |
130 | 130 | ||
131 | #define DRM_MODE_FLAG_3D_MAX DRM_MODE_FLAG_3D_SIDE_BY_SIDE_HALF | ||
132 | |||
131 | struct drm_display_mode { | 133 | struct drm_display_mode { |
132 | /* Header */ | 134 | /* Header */ |
133 | struct list_head head; | 135 | struct list_head head; |
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h index 7980f8994070..c2c4ace3db61 100644 --- a/include/uapi/drm/drm_mode.h +++ b/include/uapi/drm/drm_mode.h | |||
@@ -58,6 +58,10 @@ | |||
58 | #define DRM_MODE_FLAG_PIXMUX (1<<11) | 58 | #define DRM_MODE_FLAG_PIXMUX (1<<11) |
59 | #define DRM_MODE_FLAG_DBLCLK (1<<12) | 59 | #define DRM_MODE_FLAG_DBLCLK (1<<12) |
60 | #define DRM_MODE_FLAG_CLKDIV2 (1<<13) | 60 | #define DRM_MODE_FLAG_CLKDIV2 (1<<13) |
61 | /* | ||
62 | * When adding a new stereo mode don't forget to adjust DRM_MODE_FLAGS_3D_MAX | ||
63 | * (define not exposed to user space). | ||
64 | */ | ||
61 | #define DRM_MODE_FLAG_3D_MASK (0x1f<<14) | 65 | #define DRM_MODE_FLAG_3D_MASK (0x1f<<14) |
62 | #define DRM_MODE_FLAG_3D_NONE (0<<14) | 66 | #define DRM_MODE_FLAG_3D_NONE (0<<14) |
63 | #define DRM_MODE_FLAG_3D_FRAME_PACKING (1<<14) | 67 | #define DRM_MODE_FLAG_3D_FRAME_PACKING (1<<14) |