Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 13194488 authored by Prateek Shrivastava's avatar Prateek Shrivastava Committed by Gerrit - the friendly Code Review server
Browse files

msm: vidc: Queue DPB buffer after session continue



After flush if instance is in reconfig mode then the
driver doesn't queue DPB buffers resulting into only OPB
buffers with FW. So after flush if we get session continue
command the FW doesn't process due to lack of DPB buffers.
Queuing the DPB buffers after session continue in reconfig
mode will resolve this issue.

CRs-Fixed: 2163853
Change-Id: I8e6ce55a5fb26983ff9bf5a5da87a0033a8d9a8e
Signed-off-by: default avatarPrateek Shrivastava <pshrivas@codeaurora.org>
parent 2e6001c5
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
/* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -5721,6 +5721,16 @@ int msm_comm_session_continue(void *instance)
		inst->prop.width[CAPTURE_PORT] = inst->reconfig_width;
		inst->prop.height[OUTPUT_PORT] = inst->reconfig_height;
		inst->prop.width[OUTPUT_PORT] = inst->reconfig_width;
		if (msm_comm_get_stream_output_mode(inst) ==
			HAL_VIDEO_DECODER_SECONDARY) {
			rc = msm_comm_queue_output_buffers(inst);
			if (rc) {
				dprintk(VIDC_ERR,
						"Failed to queue output buffers: %d\n",
						rc);
				goto sess_continue_fail;
			}
		}
	} else if (inst->session_type == MSM_VIDC_ENCODER) {
		dprintk(VIDC_DBG,
				"session_continue not supported for encoder");