From 34716fcae7efcc0b70215c3531e5de2778b9d7bb Mon Sep 17 00:00:00 2001 From: chzhang Date: Fri, 11 Feb 2011 01:40:11 -0800 Subject: [PATCH] HDMI stereo support - kernel code changes Signed-off-by: Chong Zhang Original-Change-Id: I53eea3b14852aecd589dfbd0461258e064835cc9 Reviewed-on: http://git-master/r/11405 Reviewed-by: Daniel Willemsen Rebase-Id: R4c2c1bba6eeeee16cf3d99061717c236c695eaf7 --- drivers/video/fbdev/core/modedb.c | 4 ++-- include/uapi/linux/fb.h | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/video/fbdev/core/modedb.c b/drivers/video/fbdev/core/modedb.c index 79f6e5a3edaa..823ca4e96539 100644 --- a/drivers/video/fbdev/core/modedb.c +++ b/drivers/video/fbdev/core/modedb.c @@ -1291,7 +1291,7 @@ void fb_var_to_videomode(struct fb_videomode *mode, mode->upper_margin = var->upper_margin; mode->lower_margin = var->lower_margin; mode->sync = var->sync; - mode->vmode = var->vmode & FB_VMODE_MASK; + mode->vmode = var->vmode & (FB_VMODE_MASK | FB_VMODE_STEREO_MASK); mode->flag = FB_MODE_IS_FROM_VAR; mode->refresh = 0; @@ -1336,7 +1336,7 @@ void fb_videomode_to_var(struct fb_var_screeninfo *var, var->hsync_len = mode->hsync_len; var->vsync_len = mode->vsync_len; var->sync = mode->sync; - var->vmode = mode->vmode & FB_VMODE_MASK; + var->vmode = mode->vmode & (FB_VMODE_MASK | FB_VMODE_STEREO_MASK); } /** diff --git a/include/uapi/linux/fb.h b/include/uapi/linux/fb.h index fb795c3b3c17..491b5a27a5e6 100644 --- a/include/uapi/linux/fb.h +++ b/include/uapi/linux/fb.h @@ -226,6 +226,15 @@ struct fb_bitfield { #define FB_VMODE_SMOOTH_XPAN 512 /* smooth xpan possible (internally used) */ #define FB_VMODE_CONUPDATE 512 /* don't update x/yoffset */ +/* + * Stereo modes + */ +#define FB_VMODE_STEREO_NONE 0x00000000 /* not stereo */ +#define FB_VMODE_STEREO_FRAME_PACK 0x01000000 /* frame packing */ +#define FB_VMODE_STEREO_TOP_BOTTOM 0x02000000 /* top-bottom */ +#define FB_VMODE_STEREO_LEFT_RIGHT 0x04000000 /* left-right */ +#define FB_VMODE_STEREO_MASK 0xFF000000 + /* * Display rotation support */