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

Commit 13d1c302 authored by Arun Menon's avatar Arun Menon
Browse files

msm: vidc: send extradata size in ftb for dynamic buffer mode



In dynamic buffer mode, since  set_buffers is not called,
extradata buffer size should be set during ftb.
Without this change, firmware will assert if extra data
is enabled.

Change-Id: I2b95b550f3d44dd6a864a1f08ef922a529806cdc
Signed-off-by: default avatarArun Menon <avmenon@codeaurora.org>
parent 1f4dd82d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -569,6 +569,7 @@ int create_pkt_cmd_session_ftb(struct hfi_cmd_session_fill_buffer_packet *pkt,
	pkt->alloc_len = output_frame->alloc_len;
	pkt->filled_len = output_frame->filled_len;
	pkt->offset = output_frame->offset;
	pkt->rgData[0] = output_frame->extradata_size;
	dprintk(VIDC_DBG, "### Q OUTPUT BUFFER ###: %d, %d, %d\n",
			pkt->alloc_len, pkt->filled_len, pkt->offset);

+4 −1
Original line number Diff line number Diff line
@@ -2473,9 +2473,12 @@ int msm_comm_qbuf(struct vb2_buffer *vb)
			extra_idx =
			EXTRADATA_IDX(inst->fmts[CAPTURE_PORT]->num_planes);
			if (extra_idx && (extra_idx < VIDEO_MAX_PLANES) &&
				vb->v4l2_planes[extra_idx].m.userptr)
				vb->v4l2_planes[extra_idx].m.userptr) {
				frame_data.extradata_addr =
					vb->v4l2_planes[extra_idx].m.userptr;
				frame_data.extradata_size =
					vb->v4l2_planes[extra_idx].length;
			}
			dprintk(VIDC_DBG,
				"Sending ftb to hal: Alloc: %d :filled: %d",
				frame_data.alloc_len, frame_data.filled_len);
+1 −0
Original line number Diff line number Diff line
@@ -871,6 +871,7 @@ struct vidc_frame_data {
	u32 mark_target;
	u32 mark_data;
	u32 clnt_data;
	u32 extradata_size;
};

struct vidc_seq_hdr {