diff --git a/drivers/media/video/meye.c b/drivers/media/video/meye.c
index 850bee97090c91e169531c0d218d9933c4b9f1e1..595a3ea7574ec9284d212bb2a650ffd3ad129e48 100644
--- a/drivers/media/video/meye.c
+++ b/drivers/media/video/meye.c
@@ -1682,13 +1682,13 @@ static unsigned int meye_poll(struct file *file, poll_table *wait)
 
 static void meye_vm_open(struct vm_area_struct *vma)
 {
-	int idx = (int)vma->vm_private_data;
+	long idx = (long)vma->vm_private_data;
 	meye.vma_use_count[idx]++;
 }
 
 static void meye_vm_close(struct vm_area_struct *vma)
 {
-	int idx = (int)vma->vm_private_data;
+	long idx = (long)vma->vm_private_data;
 	meye.vma_use_count[idx]--;
 }
 
diff --git a/drivers/media/video/usbvideo/quickcam_messenger.c b/drivers/media/video/usbvideo/quickcam_messenger.c
index 8ad9f6af89afb1f12c7f0a1b7f41aab51fbc797a..3f3182a24da13f94c4ef1b3758c4eb6d1ef1ce1c 100644
--- a/drivers/media/video/usbvideo/quickcam_messenger.c
+++ b/drivers/media/video/usbvideo/quickcam_messenger.c
@@ -343,7 +343,7 @@ static int qcm_sensor_set_gains(struct uvd *uvd, u16 hue,
 	u16 saturation, u16 value)
 {
 	int ret;
-	u16 r,g,b;
+	u16 r=0,g=0,b=0;
 
 	/* this code is based on qc-usb-messenger */
 	qcm_hsv2rgb(hue, saturation, value, &r, &g, &b);
diff --git a/drivers/media/video/zoran_device.c b/drivers/media/video/zoran_device.c
index c690b2ee880a4fe8f44f6496177d345703962329..02168d9c218796a8c74b7f3cdf3baf921e31078b 100644
--- a/drivers/media/video/zoran_device.c
+++ b/drivers/media/video/zoran_device.c
@@ -536,7 +536,7 @@ zr36057_overlay (struct zoran *zr,
 		 * All error messages are internal driver checking only! */
 
 		/* video display top and bottom registers */
-		reg = (u32) zr->buffer.base +
+		reg = (long) zr->buffer.base +
 		    zr->overlay_settings.x *
 		    ((zr->overlay_settings.format->depth + 7) / 8) +
 		    zr->overlay_settings.y *