Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aeb8c45d authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: vidc: remove redundant ioctl in video driver"

parents 5e67779d 81f0d83a
Loading
Loading
Loading
Loading
+0 −17
Original line number Diff line number Diff line
@@ -1944,23 +1944,6 @@ int create_pkt_cmd_session_set_property(
		pkt->size += sizeof(u32) * 2;
		break;
	}
	case HAL_PARAM_EXTRADATA_INPUT_CROP:
	{
		struct hfi_index_extradata_input_crop_payload *hfi = NULL;
		struct hal_index_extradata_input_crop_payload *hal = pdata;

		pkt->rg_property_data[0] =
			HFI_INDEX_EXTRADATA_INPUT_CROP;
		hfi = (struct hfi_index_extradata_input_crop_payload *)
			&pkt->rg_property_data[1];
		memcpy(hfi, hal,
			sizeof(struct
				hfi_index_extradata_input_crop_payload));
		pkt->size += sizeof(u32) +
				sizeof(struct
				hfi_index_extradata_input_crop_payload);
		break;
	}
	case HAL_PROPERTY_PARAM_VENC_ASPECT_RATIO:
	{
		struct hfi_aspect_ratio *hfi = NULL;
+0 −9
Original line number Diff line number Diff line
@@ -227,14 +227,6 @@ static int msm_v4l2_enum_framesizes(struct file *file, void *fh,
	return msm_vidc_enum_framesizes((void *)vidc_inst, fsize);
}

static int msm_v4l2_s_crop(struct file *file, void *fh,
				const struct v4l2_crop *c)
{
	struct msm_vidc_inst *vidc_inst = get_vidc_inst(file, fh);

	return msm_vidc_s_crop((void *)vidc_inst, c);
}

static const struct v4l2_ioctl_ops msm_v4l2_ioctl_ops = {
	.vidioc_querycap = msm_v4l2_querycap,
	.vidioc_enum_fmt_vid_cap_mplane = msm_v4l2_enum_fmt,
@@ -259,7 +251,6 @@ static const struct v4l2_ioctl_ops msm_v4l2_ioctl_ops = {
	.vidioc_s_parm = msm_v4l2_s_parm,
	.vidioc_g_parm = msm_v4l2_g_parm,
	.vidioc_enum_framesizes = msm_v4l2_enum_framesizes,
	.vidioc_s_crop = msm_v4l2_s_crop,
};

static const struct v4l2_ioctl_ops msm_v4l2_enc_ioctl_ops = {
+0 −47
Original line number Diff line number Diff line
@@ -3149,53 +3149,6 @@ int msm_venc_querycap(struct msm_vidc_inst *inst, struct v4l2_capability *cap)
	return 0;
}

int msm_venc_s_crop(struct msm_vidc_inst *inst, const struct v4l2_crop *c)
{
	int rc = 0, property_id = 0;
	struct hfi_device *hdev;
	struct hal_index_extradata_input_crop_payload payload;

	if (!inst || !c || !inst->core || !inst->core->device) {
		dprintk(VIDC_ERR,
			"Invalid input, inst = %p, f = %p\n", inst, c);
		return -EINVAL;
	}

	hdev = inst->core->device;

	switch (c->type) {
	case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE:
	{
		payload.port_index = HAL_BUFFER_INPUT;
		payload.top = c->c.top;
		payload.left = c->c.left;
		payload.width = c->c.width;
		payload.height = c->c.height;
		property_id = HAL_PARAM_EXTRADATA_INPUT_CROP;
		dprintk(VIDC_ERR, "Setting rectangle data\n");

		rc = call_hfi_op(hdev, session_set_property,
				(void *)inst->session, property_id, &payload);

		if (rc) {
			dprintk(VIDC_WARN,
				"Failed to set rectangle info%d\n", rc);
		}
		break;
	}
	case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
		dprintk(VIDC_WARN,
			"Rectangle info not supported in CAPTURE_PLANE\n");
		break;
	default:
		dprintk(VIDC_ERR,
				"%s Unknown buffer type %d\n",
				__func__, c->type);
		break;
	}
	return rc;
}

int msm_venc_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f)
{
	const struct msm_vidc_format *fmt = NULL;
+0 −1
Original line number Diff line number Diff line
@@ -35,7 +35,6 @@ int msm_venc_streamon(struct msm_vidc_inst *inst, enum v4l2_buf_type i);
int msm_venc_streamoff(struct msm_vidc_inst *inst, enum v4l2_buf_type i);
int msm_venc_cmd(struct msm_vidc_inst *inst, struct v4l2_encoder_cmd *enc);
int msm_venc_s_parm(struct msm_vidc_inst *inst, struct v4l2_streamparm *a);
int msm_venc_s_crop(struct msm_vidc_inst *inst, const struct v4l2_crop *c);
struct vb2_ops *msm_venc_get_vb2q_ops(void);

#endif
+0 −13
Original line number Diff line number Diff line
@@ -94,19 +94,6 @@ int msm_vidc_querycap(void *instance, struct v4l2_capability *cap)
}
EXPORT_SYMBOL(msm_vidc_querycap);

int msm_vidc_s_crop(void *instance,
		const struct v4l2_crop *c)
{
	struct msm_vidc_inst *inst = instance;

	if (!inst || !c)
		return -EINVAL;
	if (inst->session_type == MSM_VIDC_ENCODER)
		return msm_venc_s_crop(instance, c);
	return -EINVAL;
}
EXPORT_SYMBOL(msm_vidc_s_crop);

int msm_vidc_enum_fmt(void *instance, struct v4l2_fmtdesc *f)
{
	struct msm_vidc_inst *inst = instance;
Loading