MLK-22038: don't clear instance before reset firmware
authorming_qian <ming.qian@nxp.com>
Mon, 8 Jul 2019 05:33:42 +0000 (13:33 +0800)
committerming_qian <ming.qian@nxp.com>
Mon, 8 Jul 2019 05:57:10 +0000 (13:57 +0800)
reset firmware may be called after snapshot,
in this case, we shouldn't clear instance,
otherwise, the stream will hang

Signed-off-by: ming_qian <ming.qian@nxp.com>
Reviewed-by: Shijie Qin <shijie.qin@nxp.com>
drivers/mxc/vpu_malone/vpu_b0.c

index 3b4a8ed..4e279eb 100644 (file)
@@ -5708,17 +5708,6 @@ static int swreset_vpu_firmware(struct vpu_dev *dev, u_int32 idx)
        vpu_dbg(LVL_WARN, "SWRESET: swreset_vpu_firmware\n");
        dev->firmware_started = false;
 
-       ctx->firmware_stopped = true;
-       ctx->start_flag = true;
-       ctx->b_firstseq = true;
-       ctx->wait_rst_done = false;
-       down(&ctx->q_data[V4L2_DST].drv_q_lock);
-       respond_req_frame(ctx, &ctx->q_data[V4L2_DST], true);
-       clear_queue(&ctx->q_data[V4L2_DST]);
-       reset_mbi_dcp_count(ctx);
-       up(&ctx->q_data[V4L2_DST].drv_q_lock);
-       memset(ctx->pSeqinfo, 0, sizeof(MediaIPFW_Video_SeqInfo));
-       vpu_dec_cleanup_cmd(ctx);
        v4l2_vpu_send_cmd(ctx, 0, VID_API_CMD_FIRM_RESET, 0, NULL);
 
        reinit_completion(&dev->start_cmp);