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

Commit 34d359db authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (10087): Add new enum_input function on soc_camera



This patch presents new method to be able to select V4L2 input type

Signed-off-by: default avatarKuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 513791ab
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
@@ -125,14 +125,23 @@ static int soc_camera_try_fmt_vid_cap(struct file *file, void *priv,
static int soc_camera_enum_input(struct file *file, void *priv,
				 struct v4l2_input *inp)
{
	struct soc_camera_file *icf = file->private_data;
	struct soc_camera_device *icd = icf->icd;
	int ret = 0;

	if (inp->index != 0)
		return -EINVAL;

	if (icd->ops->enum_input)
		ret = icd->ops->enum_input(icd, inp);
	else {
		/* default is camera */
		inp->type = V4L2_INPUT_TYPE_CAMERA;
		inp->std  = V4L2_STD_UNKNOWN;
		strcpy(inp->name, "Camera");
	}

	return 0;
	return ret;
}

static int soc_camera_g_input(struct file *file, void *priv, unsigned int *i)
+1 −0
Original line number Diff line number Diff line
@@ -166,6 +166,7 @@ struct soc_camera_ops {
	int (*get_chip_id)(struct soc_camera_device *,
			   struct v4l2_chip_ident *);
	int (*set_std)(struct soc_camera_device *, v4l2_std_id *);
	int (*enum_input)(struct soc_camera_device *, struct v4l2_input *);
#ifdef CONFIG_VIDEO_ADV_DEBUG
	int (*get_register)(struct soc_camera_device *, struct v4l2_register *);
	int (*set_register)(struct soc_camera_device *, struct v4l2_register *);