diff --git a/drivers/media/platform/qcom/iris/iris_hfi_common.h b/drivers/media/platform/qcom/iris/iris_hfi_common.h index 16099f9a25b65..9bc5221bd0a97 100644 --- a/drivers/media/platform/qcom/iris/iris_hfi_common.h +++ b/drivers/media/platform/qcom/iris/iris_hfi_common.h @@ -142,6 +142,7 @@ struct hfi_subscription_params { u32 fw_min_count; u32 pic_order_cnt; u32 color_info; + u32 video_format; u32 profile; u32 level; u32 tier; diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen2_command.c b/drivers/media/platform/qcom/iris/iris_hfi_gen2_command.c index 83727605d6ef8..cd97c87ca6c82 100644 --- a/drivers/media/platform/qcom/iris/iris_hfi_gen2_command.c +++ b/drivers/media/platform/qcom/iris/iris_hfi_gen2_command.c @@ -358,7 +358,7 @@ static int iris_hfi_gen2_set_colorspace(struct iris_inst *inst, u32 plane) struct v4l2_pix_format_mplane *pixmp = &inst->fmt_src->fmt.pix_mp; u32 video_signal_type_present_flag = 0, color_info; u32 matrix_coeff = HFI_MATRIX_COEFF_RESERVED; - u32 video_format = UNSPECIFIED_COLOR_FORMAT; + u32 video_format = inst_hfi_gen2->src_subcr_params.video_format; u32 full_range = V4L2_QUANTIZATION_DEFAULT; u32 transfer_char = HFI_TRANSFER_RESERVED; u32 port = iris_hfi_gen2_get_port(inst, plane); @@ -807,6 +807,7 @@ static int iris_hfi_gen2_session_open(struct iris_inst *inst) inst_hfi_gen2->ipsc_properties_set = false; inst_hfi_gen2->opsc_properties_set = false; + inst_hfi_gen2->src_subcr_params.video_format = UNSPECIFIED_COLOR_FORMAT; inst_hfi_gen2->packet = kzalloc(4096, GFP_KERNEL); if (!inst_hfi_gen2->packet) diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen2_response.c b/drivers/media/platform/qcom/iris/iris_hfi_gen2_response.c index 25162ae713574..9b9faf11dddb1 100644 --- a/drivers/media/platform/qcom/iris/iris_hfi_gen2_response.c +++ b/drivers/media/platform/qcom/iris/iris_hfi_gen2_response.c @@ -579,6 +579,8 @@ static void iris_hfi_gen2_read_input_subcr_params(struct iris_inst *inst) full_range = (subsc_params.color_info & 0x2000000) >> 25; video_signal_type_present_flag = (subsc_params.color_info & 0x20000000) >> 29; + inst_hfi_gen2->src_subcr_params.video_format = + (subsc_params.color_info & 0x1C000000) >> 26; pixmp_op->colorspace = V4L2_COLORSPACE_DEFAULT; pixmp_op->xfer_func = V4L2_XFER_FUNC_DEFAULT;