[media] smiapp: Use highest bits-per-pixel for sensor internal format
authorSakari Ailus <sakari.ailus@iki.fi>
Sat, 15 Sep 2012 20:19:49 +0000 (17:19 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 26 Sep 2012 20:43:24 +0000 (17:43 -0300)
The format shown on the links internal to the sensor was the first one
enumerated from the sensor, not the highest bit depth data that can be
produced by the sensor. Correct this.

Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/i2c/smiapp/smiapp-core.c

index 4f1c8d6..02bfa44 100644 (file)
@@ -777,7 +777,11 @@ static int smiapp_get_mbus_formats(struct smiapp_sensor *sensor)
                        dev_dbg(&client->dev, "jolly good! %d\n", j);
 
                        sensor->default_mbus_frame_fmts |= 1 << j;
-                       if (!sensor->csi_format) {
+                       if (!sensor->csi_format
+                           || f->width > sensor->csi_format->width
+                           || (f->width == sensor->csi_format->width
+                               && f->compressed
+                               > sensor->csi_format->compressed)) {
                                sensor->csi_format = f;
                                sensor->internal_csi_format = f;
                        }