WORKAROUND: Revert "staging: bcm2835-codec: Format changed should trigger drain" 63/271163/1 accepted/tizen/unified/20220217.153341 submit/tizen/20220216.082647
authorSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 16 Feb 2022 07:57:00 +0000 (16:57 +0900)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 16 Feb 2022 08:09:36 +0000 (17:09 +0900)
This reverts commit b7e6b495eff31298ba4665f71b2414cc9a8f99c2.

When setting last buffer done on format changed event, bcm2835-codec does not
work for decoding because it recognizes there is no queued buffer even it is
not well fit for v4l2 codec spec. Maybe it is because v4l2 codec gst plugin
v4l2 usage is not up to date in tizen. Until properly fixing it, revert it
to support video h/w decoding on rpi4 in tizen.

Change-Id: Id7d77ee57e58d42eab5a080d63eb8eb1518e6f7a
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c

index 472d97d..d917188 100644 (file)
@@ -1007,7 +1007,6 @@ static void handle_fmt_changed(struct bcm2835_codec_ctx *ctx,
                (struct mmal_msg_event_format_changed *)mmal_buf->buffer;
        struct mmal_parameter_video_interlace_type interlace;
        int interlace_size = sizeof(interlace);
-       struct vb2_queue *vq;
        int ret;
 
        v4l2_dbg(1, debug, &ctx->dev->v4l2_dev, "%s: Format changed: buff size min %u, rec %u, buff num min %u, rec %u\n",
@@ -1077,10 +1076,6 @@ static void handle_fmt_changed(struct bcm2835_codec_ctx *ctx,
                q_data->field = V4L2_FIELD_NONE;
        }
 
-       vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx, V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE);
-       if (vq->streaming)
-               vq->last_buffer_dequeued = true;
-
        queue_res_chg_event(ctx);
 }