video: driver: internal buffer size for h264d
add internal buffer size change for h264 decoder. Change-Id: Idc5aa592ff7cd5a04c5e982becb128e626455ef2 Signed-off-by: Darshana Patil <darshana@codeaurora.org>
This commit is contained in:
@@ -659,17 +659,12 @@ typedef HFI_U32 HFI_BOOL;
|
|||||||
_size = HFI_ALIGN(_size_bse, VENUS_DMA_ALIGNMENT) + \
|
_size = HFI_ALIGN(_size_bse, VENUS_DMA_ALIGNMENT) + \
|
||||||
HFI_ALIGN(_size_vpp, VENUS_DMA_ALIGNMENT) + \
|
HFI_ALIGN(_size_vpp, VENUS_DMA_ALIGNMENT) + \
|
||||||
HFI_ALIGN(SIZE_HW_PIC(SIZE_H264D_HW_PIC_T), \
|
HFI_ALIGN(SIZE_HW_PIC(SIZE_H264D_HW_PIC_T), \
|
||||||
VENUS_DMA_ALIGNMENT)+ HFI_ALIGN(SIZE_H264D_QP\
|
VENUS_DMA_ALIGNMENT); \
|
||||||
(frame_width, frame_height), VENUS_DMA_ALIGNMENT); \
|
|
||||||
_size = HFI_ALIGN(_size, VENUS_DMA_ALIGNMENT); \
|
_size = HFI_ALIGN(_size, VENUS_DMA_ALIGNMENT); \
|
||||||
} while (0)
|
} 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, \
|
#define HFI_BUFFER_LINE_H264D(_size, frame_width, frame_height, \
|
||||||
_yuv_bufcount_min, is_opb, num_vpp_pipes) \
|
is_opb, num_vpp_pipes) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
HFI_U32 vpss_lb_size = 0; \
|
HFI_U32 vpss_lb_size = 0; \
|
||||||
@@ -690,7 +685,8 @@ typedef HFI_U32 HFI_BOOL;
|
|||||||
frame_height), VENUS_DMA_ALIGNMENT) + \
|
frame_height), VENUS_DMA_ALIGNMENT) + \
|
||||||
HFI_ALIGN(SIZE_H264D_LB_RECON_DMA_METADATA_WR\
|
HFI_ALIGN(SIZE_H264D_LB_RECON_DMA_METADATA_WR\
|
||||||
(frame_width, frame_height), \
|
(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); \
|
_size = HFI_ALIGN(_size, VENUS_DMA_ALIGNMENT); \
|
||||||
if (is_opb) \
|
if (is_opb) \
|
||||||
{ \
|
{ \
|
||||||
|
@@ -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);
|
out_min_count = max(vpp_delay + 1, out_min_count);
|
||||||
|
|
||||||
if (inst->codec == MSM_VIDC_H264)
|
if (inst->codec == MSM_VIDC_H264)
|
||||||
HFI_BUFFER_LINE_H264D(size, width, height, out_min_count,
|
HFI_BUFFER_LINE_H264D(size, width, height, is_opb,
|
||||||
is_opb, num_vpp_pipes);
|
num_vpp_pipes);
|
||||||
else if (inst->codec == MSM_VIDC_HEVC)
|
else if (inst->codec == MSM_VIDC_HEVC)
|
||||||
HFI_BUFFER_LINE_H265D(size, width, height, is_opb,
|
HFI_BUFFER_LINE_H265D(size, width, height, is_opb,
|
||||||
num_vpp_pipes);
|
num_vpp_pipes);
|
||||||
|
Reference in New Issue
Block a user