From a4d013e724302a3ed7f9c63dcaa63bc5eace76ff Mon Sep 17 00:00:00 2001 From: Qiwei Liu Date: Thu, 16 May 2019 16:44:50 +0800 Subject: [PATCH] msm: vidc: support dynamic blur info config Support dynamically config blur resolution to firmware. Remove unused code for encoder aspect_ratio extradata. Change-Id: Id2896ab943de4b676338b42bd4993d4057e960ac Signed-off-by: Qiwei Liu --- msm/vidc/msm_venc.c | 12 +++++++++--- msm/vidc/msm_venc.h | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/msm/vidc/msm_venc.c b/msm/vidc/msm_venc.c index 707a97ef9e6a..48991d3d4128 100644 --- a/msm/vidc/msm_venc.c +++ b/msm/vidc/msm_venc.c @@ -1717,6 +1717,15 @@ int msm_venc_s_ctrl(struct msm_vidc_inst *inst, struct v4l2_ctrl *ctrl) return -EINVAL; } break; + case V4L2_CID_MPEG_VIDC_VIDEO_BLUR_DIMENSIONS: + if (inst->state == MSM_VIDC_START_DONE) { + rc = msm_venc_set_blur_resolution(inst); + if (rc) + dprintk(VIDC_ERR, + "%s: set blur resolution failed\n", + __func__); + } + break; case V4L2_CID_MPEG_VIDC_VIDEO_HEVC_MAX_HIER_CODING_LAYER: case V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_TYPE: case V4L2_CID_ROTATE: @@ -1747,7 +1756,6 @@ int msm_venc_s_ctrl(struct msm_vidc_inst *inst, struct v4l2_ctrl *ctrl) case V4L2_CID_MPEG_VIDEO_HEVC_SIZE_OF_LENGTH_FIELD: case V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH: case V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT: - case V4L2_CID_MPEG_VIDC_VIDEO_BLUR_DIMENSIONS: case V4L2_CID_MPEG_VIDC_VIDEO_PRIORITY: case V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_RANDOM: case V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB: @@ -3840,8 +3848,6 @@ int msm_venc_set_extradata(struct msm_vidc_inst *inst) codec = get_v4l2_codec(inst); if (inst->prop.extradata_ctrls == EXTRADATA_NONE) { // Disable all Extradata - msm_comm_set_index_extradata(inst, - MSM_VIDC_EXTRADATA_ASPECT_RATIO, 0x0); msm_comm_set_extradata(inst, HFI_PROPERTY_PARAM_VENC_LTR_INFO, 0x0); msm_comm_set_extradata(inst, diff --git a/msm/vidc/msm_venc.h b/msm/vidc/msm_venc.h index 4894e4013d43..f8c0b0a666a6 100644 --- a/msm/vidc/msm_venc.h +++ b/msm/vidc/msm_venc.h @@ -37,4 +37,5 @@ int msm_venc_set_hp_max_layer(struct msm_vidc_inst *inst); int msm_venc_set_hp_layer(struct msm_vidc_inst *inst); int msm_venc_set_base_layer_priority_id(struct msm_vidc_inst *inst); int msm_venc_set_lossless(struct msm_vidc_inst *inst); +int msm_venc_set_blur_resolution(struct msm_vidc_inst *inst); #endif