static void coda_buf_queue(struct vb2_buffer *vb)
 {
        struct coda_ctx *ctx = vb2_get_drv_priv(vb->vb2_queue);
+       struct vb2_queue *vq = vb->vb2_queue;
        struct coda_q_data *q_data;
 
        q_data = get_q_data(ctx, vb->vb2_queue->type);
         * In the decoder case, immediately try to copy the buffer into the
         * bitstream ringbuffer and mark it as ready to be dequeued.
         */
-       if (ctx->use_bit && ctx->inst_type == CODA_INST_DECODER &&
-           vb->vb2_queue->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) {
+       if (ctx->bitstream.size && vq->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) {
                /*
                 * For backwards compatibility, queuing an empty buffer marks
                 * the stream end