Merge branch 'stable-3.2' into pandora-3.2
[pandora-kernel.git] / drivers / media / video / omap / omap_vout.c
index 6e84fa0..94366d6 100644 (file)
@@ -336,8 +336,6 @@ static int video_mode_to_dss_mode(struct omap_vout_device *vout)
        ovl = ovid->overlays[0];
 
        switch (pix->pixelformat) {
-       case 0:
-               break;
        case V4L2_PIX_FMT_YUYV:
                mode = OMAP_DSS_COLOR_YUV2;
                break;
@@ -359,6 +357,7 @@ static int video_mode_to_dss_mode(struct omap_vout_device *vout)
                break;
        default:
                mode = -EINVAL;
+               break;
        }
        return mode;
 }
@@ -1044,7 +1043,8 @@ static int vidioc_querycap(struct file *file, void *fh,
        strlcpy(cap->driver, VOUT_NAME, sizeof(cap->driver));
        strlcpy(cap->card, vout->vfd->name, sizeof(cap->card));
        cap->bus_info[0] = '\0';
-       cap->capabilities = V4L2_CAP_STREAMING | V4L2_CAP_VIDEO_OUTPUT;
+       cap->capabilities = V4L2_CAP_STREAMING | V4L2_CAP_VIDEO_OUTPUT |
+               V4L2_CAP_VIDEO_OUTPUT_OVERLAY;
 
        return 0;
 }
@@ -1826,7 +1826,9 @@ static int vidioc_g_fbuf(struct file *file, void *fh,
        ovid = &vout->vid_info;
        ovl = ovid->overlays[0];
 
-       a->flags = 0x0;
+       /* The video overlay must stay within the framebuffer and can't be
+          positioned independently. */
+       a->flags = V4L2_FBUF_FLAG_OVERLAY;
        a->capability = V4L2_FBUF_CAP_LOCAL_ALPHA | V4L2_FBUF_CAP_CHROMAKEY
                | V4L2_FBUF_CAP_SRC_CHROMAKEY;
 
@@ -2266,13 +2268,12 @@ static struct platform_driver omap_vout_driver = {
        .driver = {
                .name = VOUT_NAME,
        },
-       .probe = omap_vout_probe,
        .remove = omap_vout_remove,
 };
 
 static int __init omap_vout_init(void)
 {
-       if (platform_driver_register(&omap_vout_driver) != 0) {
+       if (platform_driver_probe(&omap_vout_driver, omap_vout_probe) != 0) {
                printk(KERN_ERR VOUT_NAME ":Could not register Video driver\n");
                return -EINVAL;
        }