فهرست منبع

video: driver: remove support of s_parm/g_parm for decoder

remove support of s_parm/g_parm for decoder

Change-Id: I5b35b33610eb96bbfc26181c8c249316ee65b31b
Darshana Patil 3 سال پیش
والد
کامیت
2d69ee17ae
4فایلهای تغییر یافته به همراه12 افزوده شده و 106 حذف شده
  1. 0 2
      driver/platform/common/src/msm_vidc_platform.c
  2. 0 4
      driver/vidc/inc/msm_vdec.h
  3. 0 94
      driver/vidc/src/msm_vdec.c
  4. 12 6
      driver/vidc/src/msm_vidc.c

+ 0 - 2
driver/platform/common/src/msm_vidc_platform.c

@@ -128,8 +128,6 @@ static struct v4l2_ioctl_ops msm_v4l2_ioctl_ops_dec = {
 	.vidioc_g_fmt_meta_cap          = msm_v4l2_g_fmt,
 	.vidioc_g_selection             = msm_v4l2_g_selection,
 	.vidioc_s_selection             = msm_v4l2_s_selection,
-	.vidioc_s_parm                  = msm_v4l2_s_parm,
-	.vidioc_g_parm                  = msm_v4l2_g_parm,
 	.vidioc_reqbufs                 = msm_v4l2_reqbufs,
 	.vidioc_querybuf                = msm_v4l2_querybuf,
 	.vidioc_create_bufs             = msm_v4l2_create_bufs,

+ 0 - 4
driver/vidc/inc/msm_vdec.h

@@ -19,10 +19,6 @@ int msm_vdec_s_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
 int msm_vdec_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
 int msm_vdec_s_selection(struct msm_vidc_inst* inst, struct v4l2_selection* s);
 int msm_vdec_g_selection(struct msm_vidc_inst* inst, struct v4l2_selection* s);
-int msm_vdec_s_param(struct msm_vidc_inst *inst,
-		struct v4l2_streamparm *s_parm);
-int msm_vdec_g_param(struct msm_vidc_inst *inst,
-		struct v4l2_streamparm *s_parm);
 int msm_vdec_subscribe_event(struct msm_vidc_inst *inst,
 		const struct v4l2_event_subscription *sub);
 int msm_vdec_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f);

+ 0 - 94
driver/vidc/src/msm_vdec.c

@@ -2508,100 +2508,6 @@ int msm_vdec_g_selection(struct msm_vidc_inst* inst, struct v4l2_selection* s)
 	return 0;
 }
 
-int msm_vdec_s_param(struct msm_vidc_inst *inst,
-		struct v4l2_streamparm *s_parm)
-{
-	int rc = 0;
-	struct msm_vidc_inst_capability *capability = NULL;
-	struct v4l2_fract *timeperframe = NULL;
-	u32 q16_rate, max_rate, default_rate;
-	u64 us_per_frame = 0, input_rate = 0;
-	bool is_frame_rate = false;
-
-	if (!inst || !s_parm) {
-		d_vpr_e("%s: invalid params\n", __func__);
-		return -EINVAL;
-	}
-	capability = inst->capabilities;
-
-	if (s_parm->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-		timeperframe = &s_parm->parm.output.timeperframe;
-		max_rate = capability->cap[FRAME_RATE].max >> 16;
-		default_rate = capability->cap[FRAME_RATE].value >> 16;
-		is_frame_rate = true;
-	} else {
-		timeperframe = &s_parm->parm.capture.timeperframe;
-		max_rate = capability->cap[OPERATING_RATE].max >> 16;
-		default_rate = capability->cap[OPERATING_RATE].value >> 16;
-	}
-
-	if (!timeperframe->denominator || !timeperframe->numerator) {
-		i_vpr_e(inst, "%s: type %s, invalid rate\n", __func__,
-			v4l2_type_name(s_parm->type));
-		input_rate = default_rate;
-		goto set_default;
-	}
-
-	us_per_frame = timeperframe->numerator * (u64)USEC_PER_SEC;
-	do_div(us_per_frame, timeperframe->denominator);
-
-	if (!us_per_frame) {
-		i_vpr_e(inst, "%s: us_per_frame is zero\n", __func__);
-		rc = -EINVAL;
-		goto exit;
-	}
-
-	input_rate = (u64)USEC_PER_SEC;
-	do_div(input_rate, us_per_frame);
-
-set_default:
-	i_vpr_h(inst, "%s: type %s, %s value %llu\n",
-		__func__, v4l2_type_name(s_parm->type),
-		is_frame_rate ? "frame rate" : "operating rate", input_rate);
-
-	q16_rate = (u32)input_rate << 16;
-	msm_vidc_update_cap_value(inst, is_frame_rate ? FRAME_RATE : OPERATING_RATE,
-		q16_rate, __func__);
-
-	if (is_frame_rate)
-		capability->cap[FRAME_RATE].flags |= CAP_FLAG_CLIENT_SET;
-	else
-		capability->cap[OPERATING_RATE].flags |= CAP_FLAG_CLIENT_SET;
-
-exit:
-	return rc;
-}
-
-int msm_vdec_g_param(struct msm_vidc_inst *inst,
-		struct v4l2_streamparm *s_parm)
-{
-	struct msm_vidc_inst_capability *capability = NULL;
-	struct v4l2_fract *timeperframe = NULL;
-
-	if (!inst || !s_parm) {
-		d_vpr_e("%s: invalid params\n", __func__);
-		return -EINVAL;
-	}
-	capability = inst->capabilities;
-
-	if (s_parm->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-		timeperframe = &s_parm->parm.output.timeperframe;
-		timeperframe->numerator = 1;
-		timeperframe->denominator =
-			capability->cap[FRAME_RATE].value >> 16;
-	} else {
-		timeperframe = &s_parm->parm.capture.timeperframe;
-		timeperframe->numerator = 1;
-		timeperframe->denominator =
-			capability->cap[OPERATING_RATE].value >> 16;
-	}
-
-	i_vpr_h(inst, "%s: type %u, num %u denom %u\n",
-		__func__, s_parm->type, timeperframe->numerator,
-		timeperframe->denominator);
-	return 0;
-}
-
 int msm_vdec_subscribe_event(struct msm_vidc_inst *inst,
 		const struct v4l2_event_subscription *sub)
 {

+ 12 - 6
driver/vidc/src/msm_vidc.c

@@ -350,10 +350,13 @@ int msm_vidc_s_param(void *instance, struct v4l2_streamparm *param)
 		param->type != V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
 		return -EINVAL;
 
-	if (is_decode_session(inst))
-		rc = msm_vdec_s_param(instance, param);
-	else if (is_encode_session(inst))
+	if (is_encode_session(inst)) {
 		rc = msm_venc_s_param(instance, param);
+	} else {
+		i_vpr_e(inst, "%s: invalid domain %#x\n",
+			__func__, inst->domain);
+		return -EINVAL;
+	}
 
 	return rc;
 }
@@ -373,10 +376,13 @@ int msm_vidc_g_param(void *instance, struct v4l2_streamparm *param)
 		param->type != V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
 		return -EINVAL;
 
-	if (is_decode_session(inst))
-		rc = msm_vdec_g_param(instance, param);
-	else if (is_encode_session(inst))
+	if (is_encode_session(inst)) {
 		rc = msm_venc_g_param(instance, param);
+	} else {
+		i_vpr_e(inst, "%s: invalid domain %#x\n",
+			__func__, inst->domain);
+		return -EINVAL;
+	}
 
 	return rc;
 }