diff options
| -rw-r--r-- | drivers/media/platform/coda/coda-common.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/platform/coda/coda-common.c b/drivers/media/platform/coda/coda-common.c index 3ce58dee4422..1d96cca61547 100644 --- a/drivers/media/platform/coda/coda-common.c +++ b/drivers/media/platform/coda/coda-common.c | |||
| @@ -1515,10 +1515,20 @@ static int coda_queue_setup(struct vb2_queue *vq, | |||
| 1515 | 1515 | ||
| 1516 | static int coda_buf_prepare(struct vb2_buffer *vb) | 1516 | static int coda_buf_prepare(struct vb2_buffer *vb) |
| 1517 | { | 1517 | { |
| 1518 | struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb); | ||
| 1518 | struct coda_ctx *ctx = vb2_get_drv_priv(vb->vb2_queue); | 1519 | struct coda_ctx *ctx = vb2_get_drv_priv(vb->vb2_queue); |
| 1519 | struct coda_q_data *q_data; | 1520 | struct coda_q_data *q_data; |
| 1520 | 1521 | ||
| 1521 | q_data = get_q_data(ctx, vb->vb2_queue->type); | 1522 | q_data = get_q_data(ctx, vb->vb2_queue->type); |
| 1523 | if (V4L2_TYPE_IS_OUTPUT(vb->vb2_queue->type)) { | ||
| 1524 | if (vbuf->field == V4L2_FIELD_ANY) | ||
| 1525 | vbuf->field = V4L2_FIELD_NONE; | ||
| 1526 | if (vbuf->field != V4L2_FIELD_NONE) { | ||
| 1527 | v4l2_warn(&ctx->dev->v4l2_dev, | ||
| 1528 | "%s field isn't supported\n", __func__); | ||
| 1529 | return -EINVAL; | ||
| 1530 | } | ||
| 1531 | } | ||
| 1522 | 1532 | ||
| 1523 | if (vb2_plane_size(vb, 0) < q_data->sizeimage) { | 1533 | if (vb2_plane_size(vb, 0) < q_data->sizeimage) { |
| 1524 | v4l2_warn(&ctx->dev->v4l2_dev, | 1534 | v4l2_warn(&ctx->dev->v4l2_dev, |
