if (pix->width != solo_enc->width ||
pix->height != solo_enc->height)
return -EBUSY;
- } else if (!(pix->width == solo_dev->video_hsize &&
- pix->height == solo_dev->video_vsize << 1) &&
- !(pix->width == solo_dev->video_hsize >> 1 &&
- pix->height == solo_dev->video_vsize)) {
+ }
+
+ if (pix->width < solo_dev->video_hsize ||
+ pix->height < solo_dev->video_vsize << 1) {
/* Default to CIF 1/2 size */
pix->width = solo_dev->video_hsize >> 1;
pix->height = solo_dev->video_vsize;
+ } else {
+ /* Full frame */
+ pix->width = solo_dev->video_hsize;
+ pix->height = solo_dev->video_vsize << 1;
}
if (pix->field == V4L2_FIELD_ANY)