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

Commit 617f5333 authored by Tobias Lorenz's avatar Tobias Lorenz Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (9218): si470x: removement of get/set input/audio



This patch removes the unnecessary get/set input/audio functions.

The reason is, that the V4L2 specification says, that if input or audio
cannot be switched anyway, the functions doesn't need to be implemented.

I've tested the new driver with all current radio programs in
Debian/testing and found no problems with that.

In my opinion, the driver is much cleaner by removing these unnecessary
functions.

Signed-off-by: default avatarTobias Lorenz <tobias.lorenz@gmx.net>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 73a529f9
Loading
Loading
Loading
Loading
+4 −68
Original line number Diff line number Diff line
@@ -1215,36 +1215,6 @@ static int si470x_vidioc_querycap(struct file *file, void *priv,
}


/*
 * si470x_vidioc_g_input - get input
 */
static int si470x_vidioc_g_input(struct file *file, void *priv,
		unsigned int *i)
{
	*i = 0;

	return 0;
}


/*
 * si470x_vidioc_s_input - set input
 */
static int si470x_vidioc_s_input(struct file *file, void *priv, unsigned int i)
{
	int retval = 0;

	/* safety checks */
	if (i != 0)
		retval = -EINVAL;

	if (retval < 0)
		printk(KERN_WARNING DRIVER_NAME
			": set input failed with %d\n", retval);
	return retval;
}


/*
 * si470x_vidioc_queryctrl - enumerate control items
 */
@@ -1364,44 +1334,13 @@ static int si470x_vidioc_s_ctrl(struct file *file, void *priv,
static int si470x_vidioc_g_audio(struct file *file, void *priv,
		struct v4l2_audio *audio)
{
	int retval = 0;

	/* safety checks */
	if (audio->index != 0) {
		retval = -EINVAL;
		goto done;
	}

	/* driver constants */
	audio->index = 0;
	strcpy(audio->name, "Radio");
	audio->capability = V4L2_AUDCAP_STEREO;
	audio->mode = 0;

done:
	if (retval < 0)
		printk(KERN_WARNING DRIVER_NAME
			": get audio failed with %d\n", retval);
	return retval;
}


/*
 * si470x_vidioc_s_audio - set audio attributes
 */
static int si470x_vidioc_s_audio(struct file *file, void *priv,
		struct v4l2_audio *audio)
{
	int retval = 0;

	/* safety checks */
	if (audio->index != 0) {
		retval = -EINVAL;
		goto done;
	}

done:
	if (retval < 0)
		printk(KERN_WARNING DRIVER_NAME
			": set audio failed with %d\n", retval);
	return retval;
	return 0;
}


@@ -1613,13 +1552,10 @@ static int si470x_vidioc_s_hw_freq_seek(struct file *file, void *priv,
 */
static const struct v4l2_ioctl_ops si470x_ioctl_ops = {
	.vidioc_querycap	= si470x_vidioc_querycap,
	.vidioc_g_input		= si470x_vidioc_g_input,
	.vidioc_s_input		= si470x_vidioc_s_input,
	.vidioc_queryctrl	= si470x_vidioc_queryctrl,
	.vidioc_g_ctrl		= si470x_vidioc_g_ctrl,
	.vidioc_s_ctrl		= si470x_vidioc_s_ctrl,
	.vidioc_g_audio		= si470x_vidioc_g_audio,
	.vidioc_s_audio		= si470x_vidioc_s_audio,
	.vidioc_g_tuner		= si470x_vidioc_g_tuner,
	.vidioc_s_tuner		= si470x_vidioc_s_tuner,
	.vidioc_g_frequency	= si470x_vidioc_g_frequency,