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

Commit ec6f4328 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

[media] v4l2: make vidioc_s_freq_hw_seek const



Write-only ioctls should have a const argument in the ioctl op.
Do this conversion for vidioc_s_freq_hw_seek.
Adding const for write-only ioctls was decided during the 2012 Media Workshop.

Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent d88aab53
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -348,7 +348,7 @@ static int vidioc_g_frequency(struct file *file, void *priv,
}
}


static int vidioc_s_hw_freq_seek(struct file *file, void *priv,
static int vidioc_s_hw_freq_seek(struct file *file, void *priv,
		struct v4l2_hw_freq_seek *seek)
		const struct v4l2_hw_freq_seek *seek)
{
{
	static u8 buf[8] = {
	static u8 buf[8] = {
		0x3d, 0x32, 0x0f, 0x08, 0x3d, 0x32, 0x0f, 0x08
		0x3d, 0x32, 0x0f, 0x08, 0x3d, 0x32, 0x0f, 0x08
+17 −15
Original line number Original line Diff line number Diff line
@@ -385,59 +385,61 @@ static int vidioc_s_frequency(struct file *file, void *priv,
}
}


static int vidioc_s_hw_freq_seek(struct file *file, void *fh,
static int vidioc_s_hw_freq_seek(struct file *file, void *fh,
					struct v4l2_hw_freq_seek *a)
					const struct v4l2_hw_freq_seek *a)
{
{
	struct radio_tea5777 *tea = video_drvdata(file);
	struct radio_tea5777 *tea = video_drvdata(file);
	unsigned long timeout;
	unsigned long timeout;
	u32 rangelow = a->rangelow;
	u32 rangehigh = a->rangehigh;
	int i, res, spacing;
	int i, res, spacing;
	u32 orig_freq;
	u32 orig_freq;


	if (a->tuner || a->wrap_around)
	if (a->tuner || a->wrap_around)
		return -EINVAL;
		return -EINVAL;


	if (a->rangelow || a->rangehigh) {
	if (rangelow || rangehigh) {
		for (i = 0; i < ARRAY_SIZE(bands); i++) {
		for (i = 0; i < ARRAY_SIZE(bands); i++) {
			if (i == BAND_AM && !tea->has_am)
			if (i == BAND_AM && !tea->has_am)
				continue;
				continue;
			if (bands[i].rangelow  >= a->rangelow &&
			if (bands[i].rangelow  >= rangelow &&
			    bands[i].rangehigh <= a->rangehigh)
			    bands[i].rangehigh <= rangehigh)
				break;
				break;
		}
		}
		if (i == ARRAY_SIZE(bands))
		if (i == ARRAY_SIZE(bands))
			return -EINVAL; /* No matching band found */
			return -EINVAL; /* No matching band found */


		tea->band = i;
		tea->band = i;
		if (tea->freq < a->rangelow || tea->freq > a->rangehigh) {
		if (tea->freq < rangelow || tea->freq > rangehigh) {
			tea->freq = clamp(tea->freq, a->rangelow,
			tea->freq = clamp(tea->freq, rangelow,
						     a->rangehigh);
						     rangehigh);
			res = radio_tea5777_set_freq(tea);
			res = radio_tea5777_set_freq(tea);
			if (res)
			if (res)
				return res;
				return res;
		}
		}
	} else {
	} else {
		a->rangelow  = bands[tea->band].rangelow;
		rangelow  = bands[tea->band].rangelow;
		a->rangehigh = bands[tea->band].rangehigh;
		rangehigh = bands[tea->band].rangehigh;
	}
	}


	spacing   = (tea->band == BAND_AM) ? (5 * 16) : (200 * 16); /* kHz */
	spacing   = (tea->band == BAND_AM) ? (5 * 16) : (200 * 16); /* kHz */
	orig_freq = tea->freq;
	orig_freq = tea->freq;


	tea->write_reg |= TEA5777_W_PROGBLIM_MASK;
	tea->write_reg |= TEA5777_W_PROGBLIM_MASK;
	if (tea->seek_rangelow != a->rangelow) {
	if (tea->seek_rangelow != rangelow) {
		tea->write_reg &= ~TEA5777_W_UPDWN_MASK;
		tea->write_reg &= ~TEA5777_W_UPDWN_MASK;
		tea->freq = a->rangelow;
		tea->freq = rangelow;
		res = radio_tea5777_set_freq(tea);
		res = radio_tea5777_set_freq(tea);
		if (res)
		if (res)
			goto leave;
			goto leave;
		tea->seek_rangelow = a->rangelow;
		tea->seek_rangelow = rangelow;
	}
	}
	if (tea->seek_rangehigh != a->rangehigh) {
	if (tea->seek_rangehigh != rangehigh) {
		tea->write_reg |= TEA5777_W_UPDWN_MASK;
		tea->write_reg |= TEA5777_W_UPDWN_MASK;
		tea->freq = a->rangehigh;
		tea->freq = rangehigh;
		res = radio_tea5777_set_freq(tea);
		res = radio_tea5777_set_freq(tea);
		if (res)
		if (res)
			goto leave;
			goto leave;
		tea->seek_rangehigh = a->rangehigh;
		tea->seek_rangehigh = rangehigh;
	}
	}
	tea->write_reg &= ~TEA5777_W_PROGBLIM_MASK;
	tea->write_reg &= ~TEA5777_W_PROGBLIM_MASK;


+1 −1
Original line number Original line Diff line number Diff line
@@ -1682,7 +1682,7 @@ static int wl1273_fm_vidioc_s_frequency(struct file *file, void *priv,
#define WL1273_DEFAULT_SEEK_LEVEL	7
#define WL1273_DEFAULT_SEEK_LEVEL	7


static int wl1273_fm_vidioc_s_hw_freq_seek(struct file *file, void *priv,
static int wl1273_fm_vidioc_s_hw_freq_seek(struct file *file, void *priv,
					   struct v4l2_hw_freq_seek *seek)
					   const struct v4l2_hw_freq_seek *seek)
{
{
	struct wl1273_device *radio = video_get_drvdata(video_devdata(file));
	struct wl1273_device *radio = video_get_drvdata(video_devdata(file));
	struct wl1273_core *core = radio->core;
	struct wl1273_core *core = radio->core;
+2 −2
Original line number Original line Diff line number Diff line
@@ -296,7 +296,7 @@ int si470x_set_freq(struct si470x_device *radio, unsigned int freq)
 * si470x_set_seek - set seek
 * si470x_set_seek - set seek
 */
 */
static int si470x_set_seek(struct si470x_device *radio,
static int si470x_set_seek(struct si470x_device *radio,
			   struct v4l2_hw_freq_seek *seek)
			   const struct v4l2_hw_freq_seek *seek)
{
{
	int band, retval;
	int band, retval;
	unsigned int freq;
	unsigned int freq;
@@ -701,7 +701,7 @@ static int si470x_vidioc_s_frequency(struct file *file, void *priv,
 * si470x_vidioc_s_hw_freq_seek - set hardware frequency seek
 * si470x_vidioc_s_hw_freq_seek - set hardware frequency seek
 */
 */
static int si470x_vidioc_s_hw_freq_seek(struct file *file, void *priv,
static int si470x_vidioc_s_hw_freq_seek(struct file *file, void *priv,
		struct v4l2_hw_freq_seek *seek)
		const struct v4l2_hw_freq_seek *seek)
{
{
	struct si470x_device *radio = video_drvdata(file);
	struct si470x_device *radio = video_drvdata(file);


+1 −1
Original line number Original line Diff line number Diff line
@@ -403,7 +403,7 @@ static int fm_v4l2_vidioc_s_freq(struct file *file, void *priv,


/* Set hardware frequency seek. If current mode is NOT RX, set it RX. */
/* Set hardware frequency seek. If current mode is NOT RX, set it RX. */
static int fm_v4l2_vidioc_s_hw_freq_seek(struct file *file, void *priv,
static int fm_v4l2_vidioc_s_hw_freq_seek(struct file *file, void *priv,
		struct v4l2_hw_freq_seek *seek)
		const struct v4l2_hw_freq_seek *seek)
{
{
	struct fmdev *fmdev = video_drvdata(file);
	struct fmdev *fmdev = video_drvdata(file);
	int ret;
	int ret;
Loading