|
@@ -607,6 +607,10 @@ static int get_driver_buffer_flags(struct msm_vidc_inst *inst, u32 hfi_flags)
|
|
|
driver_flags |= MSM_VIDC_BUF_FLAG_ERROR;
|
|
|
}
|
|
|
|
|
|
+ if (inst->hfi_frame_info.subframe_input)
|
|
|
+ if (inst->capabilities->cap[META_BUF_TAG].value)
|
|
|
+ driver_flags |= MSM_VIDC_BUF_FLAG_ERROR;
|
|
|
+
|
|
|
if (hfi_flags & HFI_BUF_FW_FLAG_CODEC_CONFIG)
|
|
|
driver_flags |= MSM_VIDC_BUF_FLAG_CODECCONFIG;
|
|
|
|
|
@@ -1499,6 +1503,15 @@ static int handle_property_with_payload(struct msm_vidc_inst *inst,
|
|
|
if (inst->hfi_frame_info.picture_type & HFI_PICTURE_B)
|
|
|
inst->has_bframe = true;
|
|
|
break;
|
|
|
+ case HFI_PROP_SUBFRAME_INPUT:
|
|
|
+ if (port != INPUT_PORT) {
|
|
|
+ i_vpr_e(inst,
|
|
|
+ "%s: invalid port: %d for property %#x\n",
|
|
|
+ __func__, pkt->port, pkt->type);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ inst->hfi_frame_info.subframe_input = 1;
|
|
|
+ break;
|
|
|
case HFI_PROP_WORST_COMPRESSION_RATIO:
|
|
|
inst->hfi_frame_info.cr = payload_ptr[0];
|
|
|
break;
|