瀏覽代碼

video: driver: internal buffer size for h264d

add internal buffer size change for h264 decoder.

Change-Id: Idc5aa592ff7cd5a04c5e982becb128e626455ef2
Signed-off-by: Darshana Patil <[email protected]>
Darshana Patil 4 年之前
父節點
當前提交
3b10d3f3d8
共有 2 個文件被更改,包括 6 次插入10 次删除
  1. 4 8
      driver/variant/iris2/inc/hfi_buffer_iris2.h
  2. 2 2
      driver/variant/iris2/src/msm_vidc_buffer_iris2.c

+ 4 - 8
driver/variant/iris2/inc/hfi_buffer_iris2.h

@@ -659,17 +659,12 @@ typedef HFI_U32 HFI_BOOL;
 		_size = HFI_ALIGN(_size_bse, VENUS_DMA_ALIGNMENT) + \
 			HFI_ALIGN(_size_vpp, VENUS_DMA_ALIGNMENT) + \
 			HFI_ALIGN(SIZE_HW_PIC(SIZE_H264D_HW_PIC_T), \
-			VENUS_DMA_ALIGNMENT)+ HFI_ALIGN(SIZE_H264D_QP\
-			(frame_width, frame_height), VENUS_DMA_ALIGNMENT); \
+			VENUS_DMA_ALIGNMENT); \
 		_size = HFI_ALIGN(_size, VENUS_DMA_ALIGNMENT); \
 	} while (0)
 
-/*
- * _yuv_bufcount_min = MAX(Min YUV Buffer count,
- * (HFI_PROPERTY_PARAM_VDEC_VPP_DELAY + 1))
- */
 #define HFI_BUFFER_LINE_H264D(_size, frame_width, frame_height, \
-				_yuv_bufcount_min, is_opb, num_vpp_pipes) \
+                              is_opb, num_vpp_pipes)            \
 	do \
 	{ \
 		HFI_U32 vpss_lb_size = 0; \
@@ -690,7 +685,8 @@ typedef HFI_U32 HFI_BOOL;
 			frame_height), VENUS_DMA_ALIGNMENT) + \
 			HFI_ALIGN(SIZE_H264D_LB_RECON_DMA_METADATA_WR\
 			(frame_width, frame_height), \
-			VENUS_DMA_ALIGNMENT) * 2;   \
+			VENUS_DMA_ALIGNMENT) * 2 + HFI_ALIGN(SIZE_H264D_QP\
+			(frame_width, frame_height), VENUS_DMA_ALIGNMENT); \
 		_size = HFI_ALIGN(_size, VENUS_DMA_ALIGNMENT); \
 		if (is_opb) \
 		{ \

+ 2 - 2
driver/variant/iris2/src/msm_vidc_buffer_iris2.c

@@ -156,8 +156,8 @@ static u32 msm_vidc_decoder_line_size_iris2(struct msm_vidc_inst *inst)
 	out_min_count = max(vpp_delay + 1, out_min_count);
 
 	if (inst->codec == MSM_VIDC_H264)
-		HFI_BUFFER_LINE_H264D(size, width, height, out_min_count,
-			is_opb, num_vpp_pipes);
+		HFI_BUFFER_LINE_H264D(size, width, height, is_opb,
+			num_vpp_pipes);
 	else if (inst->codec == MSM_VIDC_HEVC)
 		HFI_BUFFER_LINE_H265D(size, width, height, is_opb,
 			num_vpp_pipes);