diff options
Diffstat (limited to 'drivers/media/usb/cx231xx/cx231xx-video.c')
-rw-r--r-- | drivers/media/usb/cx231xx/cx231xx-video.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/media/usb/cx231xx/cx231xx-video.c b/drivers/media/usb/cx231xx/cx231xx-video.c index ac6200870a62..96f65318d788 100644 --- a/drivers/media/usb/cx231xx/cx231xx-video.c +++ b/drivers/media/usb/cx231xx/cx231xx-video.c | |||
@@ -1172,10 +1172,11 @@ int cx231xx_g_frequency(struct file *file, void *priv, | |||
1172 | } | 1172 | } |
1173 | 1173 | ||
1174 | int cx231xx_s_frequency(struct file *file, void *priv, | 1174 | int cx231xx_s_frequency(struct file *file, void *priv, |
1175 | struct v4l2_frequency *f) | 1175 | const struct v4l2_frequency *f) |
1176 | { | 1176 | { |
1177 | struct cx231xx_fh *fh = priv; | 1177 | struct cx231xx_fh *fh = priv; |
1178 | struct cx231xx *dev = fh->dev; | 1178 | struct cx231xx *dev = fh->dev; |
1179 | struct v4l2_frequency new_freq = *f; | ||
1179 | int rc; | 1180 | int rc; |
1180 | u32 if_frequency = 5400000; | 1181 | u32 if_frequency = 5400000; |
1181 | 1182 | ||
@@ -1194,8 +1195,8 @@ int cx231xx_s_frequency(struct file *file, void *priv, | |||
1194 | rc = cx231xx_tuner_pre_channel_change(dev); | 1195 | rc = cx231xx_tuner_pre_channel_change(dev); |
1195 | 1196 | ||
1196 | call_all(dev, tuner, s_frequency, f); | 1197 | call_all(dev, tuner, s_frequency, f); |
1197 | call_all(dev, tuner, g_frequency, f); | 1198 | call_all(dev, tuner, g_frequency, &new_freq); |
1198 | dev->ctl_freq = f->frequency; | 1199 | dev->ctl_freq = new_freq.frequency; |
1199 | 1200 | ||
1200 | /* set post channel change settings in DIF first */ | 1201 | /* set post channel change settings in DIF first */ |
1201 | rc = cx231xx_tuner_post_channel_change(dev); | 1202 | rc = cx231xx_tuner_post_channel_change(dev); |