Revert "video: driver: always caliberate gop size"

This reverts commit b35579ad54.

Change-Id: I5ba0b244f53068ae6f0d3225b278e1ddafc360c5
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
This commit is contained in:
Darshana Patil
2021-05-28 12:52:22 -07:00
parent b2e9fada31
commit 65636fd2ad
2 changed files with 18 additions and 5 deletions

View File

@@ -744,7 +744,7 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
HFI_PROP_LAYER_COUNT,
CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
CAP_FLAG_DYNAMIC_ALLOWED,
{BITRATE_MODE},
{BITRATE_MODE, META_EVA_STATS},
{GOP_SIZE, B_FRAME, BIT_RATE},
msm_vidc_adjust_layer_count, msm_vidc_set_layer_count_and_type},
@@ -754,7 +754,7 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
HFI_PROP_LAYER_COUNT,
CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
CAP_FLAG_DYNAMIC_ALLOWED,
{BITRATE_MODE},
{BITRATE_MODE, META_EVA_STATS},
{GOP_SIZE, B_FRAME, BIT_RATE},
msm_vidc_adjust_layer_count, msm_vidc_set_layer_count_and_type},
@@ -1330,7 +1330,10 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
V4L2_MPEG_MSM_VIDC_DISABLE, V4L2_MPEG_MSM_VIDC_ENABLE,
1, V4L2_MPEG_MSM_VIDC_DISABLE,
V4L2_CID_MPEG_VIDC_METADATA_EVA_STATS,
HFI_PROP_EVA_STAT_INFO},
HFI_PROP_EVA_STAT_INFO,
CAP_FLAG_ROOT,
{0},
{ENH_LAYER_COUNT}},
{META_BUF_TAG, DEC | ENC, CODECS_ALL,
V4L2_MPEG_MSM_VIDC_DISABLE, V4L2_MPEG_MSM_VIDC_ENABLE,

View File

@@ -1316,6 +1316,14 @@ static int msm_vidc_adjust_static_layer_count_and_type(struct msm_vidc_inst *ins
goto exit;
}
if (!inst->capabilities->cap[META_EVA_STATS].value &&
hb_requested && (layer_count > 1)) {
layer_count = 1;
i_vpr_h(inst,
"%s: cvp disable supports only one enh layer HB\n",
__func__);
}
/* decide hfi layer type */
if (hb_requested) {
inst->hfi_layer_type = HFI_HIER_B;
@@ -1368,7 +1376,9 @@ int msm_vidc_adjust_layer_count(void *instance, struct v4l2_ctrl *ctrl)
capability->cap[ENH_LAYER_COUNT].value;
if (!is_parent_available(inst, ENH_LAYER_COUNT,
BITRATE_MODE, __func__))
BITRATE_MODE, __func__) ||
!is_parent_available(inst, ENH_LAYER_COUNT,
META_EVA_STATS, __func__))
return -EINVAL;
if (!inst->vb2q[OUTPUT_PORT].streaming) {
@@ -1419,7 +1429,7 @@ int msm_vidc_adjust_gop_size(void *instance, struct v4l2_ctrl *ctrl)
/*
* Layer encoding needs GOP size to be multiple of subgop size
* And subgop size is 2 ^ number of enhancement layers.
*/
*/
/* v4l2 layer count is the number of enhancement layers */
min_gop_size = 1 << enh_layer_count;