diff --git a/drivers/media/video/gspca/mars.c b/drivers/media/video/gspca/mars.c
index 7f605ce..ce065d3 100644
--- a/drivers/media/video/gspca/mars.c
+++ b/drivers/media/video/gspca/mars.c
@@ -69,10 +69,10 @@
 		.id      = V4L2_CID_SATURATION,
 		.type    = V4L2_CTRL_TYPE_INTEGER,
 		.name    = "Color",
-		.minimum = 0,
-		.maximum = 220,
+		.minimum = 1,
+		.maximum = 255,
 		.step    = 1,
-#define COLOR_DEF 190
+#define COLOR_DEF 200
 		.default_value = COLOR_DEF,
 	    },
 	    .set = sd_setcolors,
@@ -191,7 +191,7 @@
 	struct sd *sd = (struct sd *) gspca_dev;
 	int err_code;
 	u8 *data;
-	int i, val;
+	int i;
 
 	data = gspca_dev->usb_buf;
 
@@ -247,9 +247,11 @@
 	data[0] = 0x5e;		/* address */
 	data[1] = 0;		/* reg 94, Y Gain (auto) */
 /*jfm: from win trace*/
-	val = sd->colors * 0x40 + 0x400;
-	data[2] = val;		/* reg 0x5f/0x60 (LE) = saturation */
-	data[3] = val >> 8;
+				/* reg 0x5f/0x60 (LE) = saturation */
+				/* h (60): xxxx x100
+				 * l (5f): xxxx x000 */
+	data[2] = sd->colors << 3;
+	data[3] = ((sd->colors >> 2) & 0xf8) | 0x04;
 	data[4] = sd->brightness; /* reg 0x61 = brightness */
 	data[5] = 0x00;
 
@@ -365,10 +367,11 @@
 
 	sd->colors = val;
 	if (gspca_dev->streaming) {
-		val = val * 0x40 + 0x400;
+
+		/* see sd_start */
 		gspca_dev->usb_buf[0] = 0x5f;
-		gspca_dev->usb_buf[1] = val;
-		gspca_dev->usb_buf[2] = val >> 8;
+		gspca_dev->usb_buf[1] = sd->colors << 3;
+		gspca_dev->usb_buf[2] = ((sd->colors >> 2) & 0xf8) | 0x04;
 		reg_w(gspca_dev, 3);
 	}
 	return 0;
