diff options
35 files changed, 37 insertions, 61 deletions
diff --git a/drivers/media/video/au0828/au0828-video.c b/drivers/media/video/au0828/au0828-video.c index f7ad4958b94..19b23f21f96 100644 --- a/drivers/media/video/au0828/au0828-video.c +++ b/drivers/media/video/au0828/au0828-video.c | |||
@@ -1100,7 +1100,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id * norm) | |||
1100 | have to make the au0828 bridge adjust the size of its capture | 1100 | have to make the au0828 bridge adjust the size of its capture |
1101 | buffer, which is currently hardcoded at 720x480 */ | 1101 | buffer, which is currently hardcoded at 720x480 */ |
1102 | 1102 | ||
1103 | v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_std, *norm); | 1103 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, *norm); |
1104 | return 0; | 1104 | return 0; |
1105 | } | 1105 | } |
1106 | 1106 | ||
diff --git a/drivers/media/video/bt819.c b/drivers/media/video/bt819.c index df4516d8dca..9f84032ce38 100644 --- a/drivers/media/video/bt819.c +++ b/drivers/media/video/bt819.c | |||
@@ -444,9 +444,6 @@ static const struct v4l2_subdev_core_ops bt819_core_ops = { | |||
444 | .g_ctrl = bt819_g_ctrl, | 444 | .g_ctrl = bt819_g_ctrl, |
445 | .s_ctrl = bt819_s_ctrl, | 445 | .s_ctrl = bt819_s_ctrl, |
446 | .queryctrl = bt819_queryctrl, | 446 | .queryctrl = bt819_queryctrl, |
447 | }; | ||
448 | |||
449 | static const struct v4l2_subdev_tuner_ops bt819_tuner_ops = { | ||
450 | .s_std = bt819_s_std, | 447 | .s_std = bt819_s_std, |
451 | }; | 448 | }; |
452 | 449 | ||
@@ -459,7 +456,6 @@ static const struct v4l2_subdev_video_ops bt819_video_ops = { | |||
459 | 456 | ||
460 | static const struct v4l2_subdev_ops bt819_ops = { | 457 | static const struct v4l2_subdev_ops bt819_ops = { |
461 | .core = &bt819_core_ops, | 458 | .core = &bt819_core_ops, |
462 | .tuner = &bt819_tuner_ops, | ||
463 | .video = &bt819_video_ops, | 459 | .video = &bt819_video_ops, |
464 | }; | 460 | }; |
465 | 461 | ||
diff --git a/drivers/media/video/bt8xx/bttv-driver.c b/drivers/media/video/bt8xx/bttv-driver.c index 7a8ca0d8356..41c31eabe26 100644 --- a/drivers/media/video/bt8xx/bttv-driver.c +++ b/drivers/media/video/bt8xx/bttv-driver.c | |||
@@ -1329,7 +1329,7 @@ set_tvnorm(struct bttv *btv, unsigned int norm) | |||
1329 | break; | 1329 | break; |
1330 | } | 1330 | } |
1331 | id = tvnorm->v4l2_id; | 1331 | id = tvnorm->v4l2_id; |
1332 | bttv_call_all(btv, tuner, s_std, id); | 1332 | bttv_call_all(btv, core, s_std, id); |
1333 | 1333 | ||
1334 | return 0; | 1334 | return 0; |
1335 | } | 1335 | } |
diff --git a/drivers/media/video/cx18/cx18-av-core.c b/drivers/media/video/cx18/cx18-av-core.c index 0c58e55fdbe..9b3e574dd82 100644 --- a/drivers/media/video/cx18/cx18-av-core.c +++ b/drivers/media/video/cx18/cx18-av-core.c | |||
@@ -1189,6 +1189,7 @@ static const struct v4l2_subdev_core_ops cx18_av_general_ops = { | |||
1189 | .queryctrl = cx18_av_queryctrl, | 1189 | .queryctrl = cx18_av_queryctrl, |
1190 | .g_ctrl = cx18_av_g_ctrl, | 1190 | .g_ctrl = cx18_av_g_ctrl, |
1191 | .s_ctrl = cx18_av_s_ctrl, | 1191 | .s_ctrl = cx18_av_s_ctrl, |
1192 | .s_std = cx18_av_s_std, | ||
1192 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1193 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
1193 | .g_register = cx18_av_g_register, | 1194 | .g_register = cx18_av_g_register, |
1194 | .s_register = cx18_av_s_register, | 1195 | .s_register = cx18_av_s_register, |
@@ -1200,7 +1201,6 @@ static const struct v4l2_subdev_tuner_ops cx18_av_tuner_ops = { | |||
1200 | .s_frequency = cx18_av_s_frequency, | 1201 | .s_frequency = cx18_av_s_frequency, |
1201 | .g_tuner = cx18_av_g_tuner, | 1202 | .g_tuner = cx18_av_g_tuner, |
1202 | .s_tuner = cx18_av_s_tuner, | 1203 | .s_tuner = cx18_av_s_tuner, |
1203 | .s_std = cx18_av_s_std, | ||
1204 | }; | 1204 | }; |
1205 | 1205 | ||
1206 | static const struct v4l2_subdev_audio_ops cx18_av_audio_ops = { | 1206 | static const struct v4l2_subdev_audio_ops cx18_av_audio_ops = { |
diff --git a/drivers/media/video/cx18/cx18-fileops.c b/drivers/media/video/cx18/cx18-fileops.c index 4d7d6d5a7f8..b3889c0b269 100644 --- a/drivers/media/video/cx18/cx18-fileops.c +++ b/drivers/media/video/cx18/cx18-fileops.c | |||
@@ -608,7 +608,7 @@ int cx18_v4l2_close(struct file *filp) | |||
608 | /* Mark that the radio is no longer in use */ | 608 | /* Mark that the radio is no longer in use */ |
609 | clear_bit(CX18_F_I_RADIO_USER, &cx->i_flags); | 609 | clear_bit(CX18_F_I_RADIO_USER, &cx->i_flags); |
610 | /* Switch tuner to TV */ | 610 | /* Switch tuner to TV */ |
611 | cx18_call_all(cx, tuner, s_std, cx->std); | 611 | cx18_call_all(cx, core, s_std, cx->std); |
612 | /* Select correct audio input (i.e. TV tuner or Line in) */ | 612 | /* Select correct audio input (i.e. TV tuner or Line in) */ |
613 | cx18_audio_set_io(cx); | 613 | cx18_audio_set_io(cx); |
614 | if (atomic_read(&cx->ana_capturing) > 0) { | 614 | if (atomic_read(&cx->ana_capturing) > 0) { |
diff --git a/drivers/media/video/cx18/cx18-gpio.c b/drivers/media/video/cx18/cx18-gpio.c index 5518d1424f8..ae2460e6860 100644 --- a/drivers/media/video/cx18/cx18-gpio.c +++ b/drivers/media/video/cx18/cx18-gpio.c | |||
@@ -180,10 +180,10 @@ static int gpiomux_s_audio_routing(struct v4l2_subdev *sd, | |||
180 | 180 | ||
181 | static const struct v4l2_subdev_core_ops gpiomux_core_ops = { | 181 | static const struct v4l2_subdev_core_ops gpiomux_core_ops = { |
182 | .log_status = gpiomux_log_status, | 182 | .log_status = gpiomux_log_status, |
183 | .s_std = gpiomux_s_std, | ||
183 | }; | 184 | }; |
184 | 185 | ||
185 | static const struct v4l2_subdev_tuner_ops gpiomux_tuner_ops = { | 186 | static const struct v4l2_subdev_tuner_ops gpiomux_tuner_ops = { |
186 | .s_std = gpiomux_s_std, | ||
187 | .s_radio = gpiomux_s_radio, | 187 | .s_radio = gpiomux_s_radio, |
188 | }; | 188 | }; |
189 | 189 | ||
diff --git a/drivers/media/video/cx18/cx18-ioctl.c b/drivers/media/video/cx18/cx18-ioctl.c index e4c9e3d8bac..f572080590f 100644 --- a/drivers/media/video/cx18/cx18-ioctl.c +++ b/drivers/media/video/cx18/cx18-ioctl.c | |||
@@ -705,7 +705,7 @@ int cx18_s_std(struct file *file, void *fh, v4l2_std_id *std) | |||
705 | (unsigned long long) cx->std); | 705 | (unsigned long long) cx->std); |
706 | 706 | ||
707 | /* Tuner */ | 707 | /* Tuner */ |
708 | cx18_call_all(cx, tuner, s_std, cx->std); | 708 | cx18_call_all(cx, core, s_std, cx->std); |
709 | return 0; | 709 | return 0; |
710 | } | 710 | } |
711 | 711 | ||
diff --git a/drivers/media/video/cx231xx/cx231xx-video.c b/drivers/media/video/cx231xx/cx231xx-video.c index ec5aea3134e..0645703e6f9 100644 --- a/drivers/media/video/cx231xx/cx231xx-video.c +++ b/drivers/media/video/cx231xx/cx231xx-video.c | |||
@@ -1089,7 +1089,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *norm) | |||
1089 | dev->height = f.fmt.pix.height; | 1089 | dev->height = f.fmt.pix.height; |
1090 | get_scale(dev, dev->width, dev->height, &dev->hscale, &dev->vscale); | 1090 | get_scale(dev, dev->width, dev->height, &dev->hscale, &dev->vscale); |
1091 | 1091 | ||
1092 | call_all(dev, tuner, s_std, dev->norm); | 1092 | call_all(dev, core, s_std, dev->norm); |
1093 | 1093 | ||
1094 | mutex_unlock(&dev->lock); | 1094 | mutex_unlock(&dev->lock); |
1095 | 1095 | ||
diff --git a/drivers/media/video/cx23885/cx23885-video.c b/drivers/media/video/cx23885/cx23885-video.c index f0ac62c5dc8..41f0a2b1187 100644 --- a/drivers/media/video/cx23885/cx23885-video.c +++ b/drivers/media/video/cx23885/cx23885-video.c | |||
@@ -299,7 +299,7 @@ static int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) | |||
299 | 299 | ||
300 | dev->tvnorm = norm; | 300 | dev->tvnorm = norm; |
301 | 301 | ||
302 | call_all(dev, tuner, s_std, norm); | 302 | call_all(dev, core, s_std, norm); |
303 | 303 | ||
304 | return 0; | 304 | return 0; |
305 | } | 305 | } |
diff --git a/drivers/media/video/cx25840/cx25840-core.c b/drivers/media/video/cx25840/cx25840-core.c index 51266812d33..62090279f46 100644 --- a/drivers/media/video/cx25840/cx25840-core.c +++ b/drivers/media/video/cx25840/cx25840-core.c | |||
@@ -1472,6 +1472,7 @@ static const struct v4l2_subdev_core_ops cx25840_core_ops = { | |||
1472 | .g_ctrl = cx25840_g_ctrl, | 1472 | .g_ctrl = cx25840_g_ctrl, |
1473 | .s_ctrl = cx25840_s_ctrl, | 1473 | .s_ctrl = cx25840_s_ctrl, |
1474 | .queryctrl = cx25840_queryctrl, | 1474 | .queryctrl = cx25840_queryctrl, |
1475 | .s_std = cx25840_s_std, | ||
1475 | .reset = cx25840_reset, | 1476 | .reset = cx25840_reset, |
1476 | .load_fw = cx25840_load_fw, | 1477 | .load_fw = cx25840_load_fw, |
1477 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1478 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
@@ -1482,7 +1483,6 @@ static const struct v4l2_subdev_core_ops cx25840_core_ops = { | |||
1482 | 1483 | ||
1483 | static const struct v4l2_subdev_tuner_ops cx25840_tuner_ops = { | 1484 | static const struct v4l2_subdev_tuner_ops cx25840_tuner_ops = { |
1484 | .s_frequency = cx25840_s_frequency, | 1485 | .s_frequency = cx25840_s_frequency, |
1485 | .s_std = cx25840_s_std, | ||
1486 | .s_radio = cx25840_s_radio, | 1486 | .s_radio = cx25840_s_radio, |
1487 | .g_tuner = cx25840_g_tuner, | 1487 | .g_tuner = cx25840_g_tuner, |
1488 | .s_tuner = cx25840_s_tuner, | 1488 | .s_tuner = cx25840_s_tuner, |
diff --git a/drivers/media/video/cx88/cx88-core.c b/drivers/media/video/cx88/cx88-core.c index f2fb9f30bfc..0e149b22bd1 100644 --- a/drivers/media/video/cx88/cx88-core.c +++ b/drivers/media/video/cx88/cx88-core.c | |||
@@ -991,7 +991,7 @@ int cx88_set_tvnorm(struct cx88_core *core, v4l2_std_id norm) | |||
991 | set_tvaudio(core); | 991 | set_tvaudio(core); |
992 | 992 | ||
993 | // tell i2c chips | 993 | // tell i2c chips |
994 | call_all(core, tuner, s_std, norm); | 994 | call_all(core, core, s_std, norm); |
995 | 995 | ||
996 | // done | 996 | // done |
997 | return 0; | 997 | return 0; |
diff --git a/drivers/media/video/em28xx/em28xx-video.c b/drivers/media/video/em28xx/em28xx-video.c index 9d4e0c1e170..96487843a47 100644 --- a/drivers/media/video/em28xx/em28xx-video.c +++ b/drivers/media/video/em28xx/em28xx-video.c | |||
@@ -829,7 +829,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *norm) | |||
829 | get_scale(dev, dev->width, dev->height, &dev->hscale, &dev->vscale); | 829 | get_scale(dev, dev->width, dev->height, &dev->hscale, &dev->vscale); |
830 | 830 | ||
831 | em28xx_resolution_set(dev); | 831 | em28xx_resolution_set(dev); |
832 | v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_std, dev->norm); | 832 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, dev->norm); |
833 | 833 | ||
834 | mutex_unlock(&dev->lock); | 834 | mutex_unlock(&dev->lock); |
835 | return 0; | 835 | return 0; |
diff --git a/drivers/media/video/ivtv/ivtv-fileops.c b/drivers/media/video/ivtv/ivtv-fileops.c index cfaacf6096d..e212337c651 100644 --- a/drivers/media/video/ivtv/ivtv-fileops.c +++ b/drivers/media/video/ivtv/ivtv-fileops.c | |||
@@ -857,7 +857,7 @@ int ivtv_v4l2_close(struct file *filp) | |||
857 | /* Mark that the radio is no longer in use */ | 857 | /* Mark that the radio is no longer in use */ |
858 | clear_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); | 858 | clear_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); |
859 | /* Switch tuner to TV */ | 859 | /* Switch tuner to TV */ |
860 | ivtv_call_all(itv, tuner, s_std, itv->std); | 860 | ivtv_call_all(itv, core, s_std, itv->std); |
861 | /* Select correct audio input (i.e. TV tuner or Line in) */ | 861 | /* Select correct audio input (i.e. TV tuner or Line in) */ |
862 | ivtv_audio_set_io(itv); | 862 | ivtv_audio_set_io(itv); |
863 | if (itv->hw_flags & IVTV_HW_SAA711X) | 863 | if (itv->hw_flags & IVTV_HW_SAA711X) |
diff --git a/drivers/media/video/ivtv/ivtv-gpio.c b/drivers/media/video/ivtv/ivtv-gpio.c index 3321983d89e..0dd5f53b731 100644 --- a/drivers/media/video/ivtv/ivtv-gpio.c +++ b/drivers/media/video/ivtv/ivtv-gpio.c | |||
@@ -342,10 +342,10 @@ static const struct v4l2_subdev_core_ops subdev_core_ops = { | |||
342 | .g_ctrl = subdev_g_ctrl, | 342 | .g_ctrl = subdev_g_ctrl, |
343 | .s_ctrl = subdev_s_ctrl, | 343 | .s_ctrl = subdev_s_ctrl, |
344 | .queryctrl = subdev_queryctrl, | 344 | .queryctrl = subdev_queryctrl, |
345 | .s_std = subdev_s_std, | ||
345 | }; | 346 | }; |
346 | 347 | ||
347 | static const struct v4l2_subdev_tuner_ops subdev_tuner_ops = { | 348 | static const struct v4l2_subdev_tuner_ops subdev_tuner_ops = { |
348 | .s_std = subdev_s_std, | ||
349 | .s_radio = subdev_s_radio, | 349 | .s_radio = subdev_s_radio, |
350 | .g_tuner = subdev_g_tuner, | 350 | .g_tuner = subdev_g_tuner, |
351 | .s_tuner = subdev_s_tuner, | 351 | .s_tuner = subdev_s_tuner, |
diff --git a/drivers/media/video/ivtv/ivtv-ioctl.c b/drivers/media/video/ivtv/ivtv-ioctl.c index 9a0424298af..052fbe9cde8 100644 --- a/drivers/media/video/ivtv/ivtv-ioctl.c +++ b/drivers/media/video/ivtv/ivtv-ioctl.c | |||
@@ -1121,7 +1121,7 @@ int ivtv_s_std(struct file *file, void *fh, v4l2_std_id *std) | |||
1121 | IVTV_DEBUG_INFO("Switching standard to %llx.\n", (unsigned long long)itv->std); | 1121 | IVTV_DEBUG_INFO("Switching standard to %llx.\n", (unsigned long long)itv->std); |
1122 | 1122 | ||
1123 | /* Tuner */ | 1123 | /* Tuner */ |
1124 | ivtv_call_all(itv, tuner, s_std, itv->std); | 1124 | ivtv_call_all(itv, core, s_std, itv->std); |
1125 | 1125 | ||
1126 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { | 1126 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { |
1127 | /* set display standard */ | 1127 | /* set display standard */ |
diff --git a/drivers/media/video/ks0127.c b/drivers/media/video/ks0127.c index 841024b6bcd..4e5f0e7dc59 100644 --- a/drivers/media/video/ks0127.c +++ b/drivers/media/video/ks0127.c | |||
@@ -648,9 +648,6 @@ static int ks0127_g_chip_ident(struct v4l2_subdev *sd, struct v4l2_dbg_chip_iden | |||
648 | 648 | ||
649 | static const struct v4l2_subdev_core_ops ks0127_core_ops = { | 649 | static const struct v4l2_subdev_core_ops ks0127_core_ops = { |
650 | .g_chip_ident = ks0127_g_chip_ident, | 650 | .g_chip_ident = ks0127_g_chip_ident, |
651 | }; | ||
652 | |||
653 | static const struct v4l2_subdev_tuner_ops ks0127_tuner_ops = { | ||
654 | .s_std = ks0127_s_std, | 651 | .s_std = ks0127_s_std, |
655 | }; | 652 | }; |
656 | 653 | ||
@@ -663,7 +660,6 @@ static const struct v4l2_subdev_video_ops ks0127_video_ops = { | |||
663 | 660 | ||
664 | static const struct v4l2_subdev_ops ks0127_ops = { | 661 | static const struct v4l2_subdev_ops ks0127_ops = { |
665 | .core = &ks0127_core_ops, | 662 | .core = &ks0127_core_ops, |
666 | .tuner = &ks0127_tuner_ops, | ||
667 | .video = &ks0127_video_ops, | 663 | .video = &ks0127_video_ops, |
668 | }; | 664 | }; |
669 | 665 | ||
diff --git a/drivers/media/video/msp3400-driver.c b/drivers/media/video/msp3400-driver.c index aeab597a040..38e639750a4 100644 --- a/drivers/media/video/msp3400-driver.c +++ b/drivers/media/video/msp3400-driver.c | |||
@@ -700,6 +700,7 @@ static const struct v4l2_subdev_core_ops msp_core_ops = { | |||
700 | .g_ctrl = msp_g_ctrl, | 700 | .g_ctrl = msp_g_ctrl, |
701 | .s_ctrl = msp_s_ctrl, | 701 | .s_ctrl = msp_s_ctrl, |
702 | .queryctrl = msp_queryctrl, | 702 | .queryctrl = msp_queryctrl, |
703 | .s_std = msp_s_std, | ||
703 | }; | 704 | }; |
704 | 705 | ||
705 | static const struct v4l2_subdev_tuner_ops msp_tuner_ops = { | 706 | static const struct v4l2_subdev_tuner_ops msp_tuner_ops = { |
@@ -707,7 +708,6 @@ static const struct v4l2_subdev_tuner_ops msp_tuner_ops = { | |||
707 | .g_tuner = msp_g_tuner, | 708 | .g_tuner = msp_g_tuner, |
708 | .s_tuner = msp_s_tuner, | 709 | .s_tuner = msp_s_tuner, |
709 | .s_radio = msp_s_radio, | 710 | .s_radio = msp_s_radio, |
710 | .s_std = msp_s_std, | ||
711 | }; | 711 | }; |
712 | 712 | ||
713 | static const struct v4l2_subdev_audio_ops msp_audio_ops = { | 713 | static const struct v4l2_subdev_audio_ops msp_audio_ops = { |
diff --git a/drivers/media/video/mxb.c b/drivers/media/video/mxb.c index 84aec62e845..238bb40ae09 100644 --- a/drivers/media/video/mxb.c +++ b/drivers/media/video/mxb.c | |||
@@ -266,7 +266,7 @@ static int mxb_init_done(struct saa7146_dev* dev) | |||
266 | int i = 0, err = 0; | 266 | int i = 0, err = 0; |
267 | 267 | ||
268 | /* select video mode in saa7111a */ | 268 | /* select video mode in saa7111a */ |
269 | saa7111a_call(mxb, tuner, s_std, std); | 269 | saa7111a_call(mxb, core, s_std, std); |
270 | 270 | ||
271 | /* select tuner-output on saa7111a */ | 271 | /* select tuner-output on saa7111a */ |
272 | i = 0; | 272 | i = 0; |
@@ -286,7 +286,7 @@ static int mxb_init_done(struct saa7146_dev* dev) | |||
286 | tuner_call(mxb, tuner, s_frequency, &mxb->cur_freq); | 286 | tuner_call(mxb, tuner, s_frequency, &mxb->cur_freq); |
287 | 287 | ||
288 | /* set a default video standard */ | 288 | /* set a default video standard */ |
289 | tuner_call(mxb, tuner, s_std, std); | 289 | tuner_call(mxb, core, s_std, std); |
290 | 290 | ||
291 | /* mute audio on tea6420s */ | 291 | /* mute audio on tea6420s */ |
292 | tea6420_1_call(mxb, audio, s_routing, &TEA6420_line[6][0]); | 292 | tea6420_1_call(mxb, audio, s_routing, &TEA6420_line[6][0]); |
@@ -788,7 +788,7 @@ static int std_callback(struct saa7146_dev *dev, struct saa7146_standard *standa | |||
788 | saa7146_write(dev, GPIO_CTRL, 0x00404050); | 788 | saa7146_write(dev, GPIO_CTRL, 0x00404050); |
789 | /* unset the 7111 gpio register -- I don't know what this does exactly */ | 789 | /* unset the 7111 gpio register -- I don't know what this does exactly */ |
790 | saa7111a_call(mxb, core, s_gpio, 0); | 790 | saa7111a_call(mxb, core, s_gpio, 0); |
791 | tuner_call(mxb, tuner, s_std, std); | 791 | tuner_call(mxb, core, s_std, std); |
792 | } else { | 792 | } else { |
793 | v4l2_std_id std = V4L2_STD_PAL_BG; | 793 | v4l2_std_id std = V4L2_STD_PAL_BG; |
794 | 794 | ||
@@ -797,7 +797,7 @@ static int std_callback(struct saa7146_dev *dev, struct saa7146_standard *standa | |||
797 | saa7146_write(dev, GPIO_CTRL, 0x00404050); | 797 | saa7146_write(dev, GPIO_CTRL, 0x00404050); |
798 | /* set the 7111 gpio register -- I don't know what this does exactly */ | 798 | /* set the 7111 gpio register -- I don't know what this does exactly */ |
799 | saa7111a_call(mxb, core, s_gpio, 1); | 799 | saa7111a_call(mxb, core, s_gpio, 1); |
800 | tuner_call(mxb, tuner, s_std, std); | 800 | tuner_call(mxb, core, s_std, std); |
801 | } | 801 | } |
802 | return 0; | 802 | return 0; |
803 | } | 803 | } |
diff --git a/drivers/media/video/pvrusb2/pvrusb2-hdw.c b/drivers/media/video/pvrusb2/pvrusb2-hdw.c index 59a0259266f..2ee9d4d4c55 100644 --- a/drivers/media/video/pvrusb2/pvrusb2-hdw.c +++ b/drivers/media/video/pvrusb2/pvrusb2-hdw.c | |||
@@ -2944,7 +2944,7 @@ static void pvr2_subdev_update(struct pvr2_hdw *hdw) | |||
2944 | v4l2_std_id vs; | 2944 | v4l2_std_id vs; |
2945 | vs = hdw->std_mask_cur; | 2945 | vs = hdw->std_mask_cur; |
2946 | v4l2_device_call_all(&hdw->v4l2_dev, 0, | 2946 | v4l2_device_call_all(&hdw->v4l2_dev, 0, |
2947 | tuner, s_std, vs); | 2947 | core, s_std, vs); |
2948 | } | 2948 | } |
2949 | hdw->tuner_signal_stale = !0; | 2949 | hdw->tuner_signal_stale = !0; |
2950 | hdw->cropcap_stale = !0; | 2950 | hdw->cropcap_stale = !0; |
diff --git a/drivers/media/video/saa7110.c b/drivers/media/video/saa7110.c index df4e08d2dce..8bb1fc17d19 100644 --- a/drivers/media/video/saa7110.c +++ b/drivers/media/video/saa7110.c | |||
@@ -414,9 +414,6 @@ static const struct v4l2_subdev_core_ops saa7110_core_ops = { | |||
414 | .g_ctrl = saa7110_g_ctrl, | 414 | .g_ctrl = saa7110_g_ctrl, |
415 | .s_ctrl = saa7110_s_ctrl, | 415 | .s_ctrl = saa7110_s_ctrl, |
416 | .queryctrl = saa7110_queryctrl, | 416 | .queryctrl = saa7110_queryctrl, |
417 | }; | ||
418 | |||
419 | static const struct v4l2_subdev_tuner_ops saa7110_tuner_ops = { | ||
420 | .s_std = saa7110_s_std, | 417 | .s_std = saa7110_s_std, |
421 | }; | 418 | }; |
422 | 419 | ||
@@ -429,7 +426,6 @@ static const struct v4l2_subdev_video_ops saa7110_video_ops = { | |||
429 | 426 | ||
430 | static const struct v4l2_subdev_ops saa7110_ops = { | 427 | static const struct v4l2_subdev_ops saa7110_ops = { |
431 | .core = &saa7110_core_ops, | 428 | .core = &saa7110_core_ops, |
432 | .tuner = &saa7110_tuner_ops, | ||
433 | .video = &saa7110_video_ops, | 429 | .video = &saa7110_video_ops, |
434 | }; | 430 | }; |
435 | 431 | ||
diff --git a/drivers/media/video/saa7115.c b/drivers/media/video/saa7115.c index 5ee94d61869..e6538eb3aa1 100644 --- a/drivers/media/video/saa7115.c +++ b/drivers/media/video/saa7115.c | |||
@@ -1500,6 +1500,7 @@ static const struct v4l2_subdev_core_ops saa711x_core_ops = { | |||
1500 | .g_ctrl = saa711x_g_ctrl, | 1500 | .g_ctrl = saa711x_g_ctrl, |
1501 | .s_ctrl = saa711x_s_ctrl, | 1501 | .s_ctrl = saa711x_s_ctrl, |
1502 | .queryctrl = saa711x_queryctrl, | 1502 | .queryctrl = saa711x_queryctrl, |
1503 | .s_std = saa711x_s_std, | ||
1503 | .reset = saa711x_reset, | 1504 | .reset = saa711x_reset, |
1504 | .s_gpio = saa711x_s_gpio, | 1505 | .s_gpio = saa711x_s_gpio, |
1505 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1506 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
@@ -1509,7 +1510,6 @@ static const struct v4l2_subdev_core_ops saa711x_core_ops = { | |||
1509 | }; | 1510 | }; |
1510 | 1511 | ||
1511 | static const struct v4l2_subdev_tuner_ops saa711x_tuner_ops = { | 1512 | static const struct v4l2_subdev_tuner_ops saa711x_tuner_ops = { |
1512 | .s_std = saa711x_s_std, | ||
1513 | .s_radio = saa711x_s_radio, | 1513 | .s_radio = saa711x_s_radio, |
1514 | .g_tuner = saa711x_g_tuner, | 1514 | .g_tuner = saa711x_g_tuner, |
1515 | }; | 1515 | }; |
diff --git a/drivers/media/video/saa7134/saa6752hs.c b/drivers/media/video/saa7134/saa6752hs.c index dc2213e2f86..63c4b8f1f54 100644 --- a/drivers/media/video/saa7134/saa6752hs.c +++ b/drivers/media/video/saa7134/saa6752hs.c | |||
@@ -928,9 +928,6 @@ static const struct v4l2_subdev_core_ops saa6752hs_core_ops = { | |||
928 | .g_ext_ctrls = saa6752hs_g_ext_ctrls, | 928 | .g_ext_ctrls = saa6752hs_g_ext_ctrls, |
929 | .s_ext_ctrls = saa6752hs_s_ext_ctrls, | 929 | .s_ext_ctrls = saa6752hs_s_ext_ctrls, |
930 | .try_ext_ctrls = saa6752hs_try_ext_ctrls, | 930 | .try_ext_ctrls = saa6752hs_try_ext_ctrls, |
931 | }; | ||
932 | |||
933 | static const struct v4l2_subdev_tuner_ops saa6752hs_tuner_ops = { | ||
934 | .s_std = saa6752hs_s_std, | 931 | .s_std = saa6752hs_s_std, |
935 | }; | 932 | }; |
936 | 933 | ||
@@ -941,7 +938,6 @@ static const struct v4l2_subdev_video_ops saa6752hs_video_ops = { | |||
941 | 938 | ||
942 | static const struct v4l2_subdev_ops saa6752hs_ops = { | 939 | static const struct v4l2_subdev_ops saa6752hs_ops = { |
943 | .core = &saa6752hs_core_ops, | 940 | .core = &saa6752hs_core_ops, |
944 | .tuner = &saa6752hs_tuner_ops, | ||
945 | .video = &saa6752hs_video_ops, | 941 | .video = &saa6752hs_video_ops, |
946 | }; | 942 | }; |
947 | 943 | ||
diff --git a/drivers/media/video/saa7134/saa7134-video.c b/drivers/media/video/saa7134/saa7134-video.c index b520e9c2dac..493cad94146 100644 --- a/drivers/media/video/saa7134/saa7134-video.c +++ b/drivers/media/video/saa7134/saa7134-video.c | |||
@@ -625,10 +625,10 @@ void saa7134_set_tvnorm_hw(struct saa7134_dev *dev) | |||
625 | saa7134_set_decoder(dev); | 625 | saa7134_set_decoder(dev); |
626 | 626 | ||
627 | if (card_in(dev, dev->ctl_input).tv) | 627 | if (card_in(dev, dev->ctl_input).tv) |
628 | saa_call_all(dev, tuner, s_std, dev->tvnorm->id); | 628 | saa_call_all(dev, core, s_std, dev->tvnorm->id); |
629 | /* Set the correct norm for the saa6752hs. This function | 629 | /* Set the correct norm for the saa6752hs. This function |
630 | does nothing if there is no saa6752hs. */ | 630 | does nothing if there is no saa6752hs. */ |
631 | saa_call_empress(dev, tuner, s_std, dev->tvnorm->id); | 631 | saa_call_empress(dev, core, s_std, dev->tvnorm->id); |
632 | } | 632 | } |
633 | 633 | ||
634 | static void set_h_prescale(struct saa7134_dev *dev, int task, int prescale) | 634 | static void set_h_prescale(struct saa7134_dev *dev, int task, int prescale) |
diff --git a/drivers/media/video/saa717x.c b/drivers/media/video/saa717x.c index 25bf2303a6b..b73801caaa9 100644 --- a/drivers/media/video/saa717x.c +++ b/drivers/media/video/saa717x.c | |||
@@ -1390,12 +1390,12 @@ static const struct v4l2_subdev_core_ops saa717x_core_ops = { | |||
1390 | .queryctrl = saa717x_queryctrl, | 1390 | .queryctrl = saa717x_queryctrl, |
1391 | .g_ctrl = saa717x_g_ctrl, | 1391 | .g_ctrl = saa717x_g_ctrl, |
1392 | .s_ctrl = saa717x_s_ctrl, | 1392 | .s_ctrl = saa717x_s_ctrl, |
1393 | .s_std = saa717x_s_std, | ||
1393 | }; | 1394 | }; |
1394 | 1395 | ||
1395 | static const struct v4l2_subdev_tuner_ops saa717x_tuner_ops = { | 1396 | static const struct v4l2_subdev_tuner_ops saa717x_tuner_ops = { |
1396 | .g_tuner = saa717x_g_tuner, | 1397 | .g_tuner = saa717x_g_tuner, |
1397 | .s_tuner = saa717x_s_tuner, | 1398 | .s_tuner = saa717x_s_tuner, |
1398 | .s_std = saa717x_s_std, | ||
1399 | .s_radio = saa717x_s_radio, | 1399 | .s_radio = saa717x_s_radio, |
1400 | }; | 1400 | }; |
1401 | 1401 | ||
diff --git a/drivers/media/video/saa7191.c b/drivers/media/video/saa7191.c index 3f523aeec56..13ab4f2ddcc 100644 --- a/drivers/media/video/saa7191.c +++ b/drivers/media/video/saa7191.c | |||
@@ -582,9 +582,6 @@ static const struct v4l2_subdev_core_ops saa7191_core_ops = { | |||
582 | .g_chip_ident = saa7191_g_chip_ident, | 582 | .g_chip_ident = saa7191_g_chip_ident, |
583 | .g_ctrl = saa7191_g_ctrl, | 583 | .g_ctrl = saa7191_g_ctrl, |
584 | .s_ctrl = saa7191_s_ctrl, | 584 | .s_ctrl = saa7191_s_ctrl, |
585 | }; | ||
586 | |||
587 | static const struct v4l2_subdev_tuner_ops saa7191_tuner_ops = { | ||
588 | .s_std = saa7191_s_std, | 585 | .s_std = saa7191_s_std, |
589 | }; | 586 | }; |
590 | 587 | ||
@@ -597,7 +594,6 @@ static const struct v4l2_subdev_video_ops saa7191_video_ops = { | |||
597 | static const struct v4l2_subdev_ops saa7191_ops = { | 594 | static const struct v4l2_subdev_ops saa7191_ops = { |
598 | .core = &saa7191_core_ops, | 595 | .core = &saa7191_core_ops, |
599 | .video = &saa7191_video_ops, | 596 | .video = &saa7191_video_ops, |
600 | .tuner = &saa7191_tuner_ops, | ||
601 | }; | 597 | }; |
602 | 598 | ||
603 | static int saa7191_probe(struct i2c_client *client, | 599 | static int saa7191_probe(struct i2c_client *client, |
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c index 61f10070345..28af7b7e951 100644 --- a/drivers/media/video/tuner-core.c +++ b/drivers/media/video/tuner-core.c | |||
@@ -981,10 +981,10 @@ static int tuner_command(struct i2c_client *client, unsigned cmd, void *arg) | |||
981 | 981 | ||
982 | static const struct v4l2_subdev_core_ops tuner_core_ops = { | 982 | static const struct v4l2_subdev_core_ops tuner_core_ops = { |
983 | .log_status = tuner_log_status, | 983 | .log_status = tuner_log_status, |
984 | .s_std = tuner_s_std, | ||
984 | }; | 985 | }; |
985 | 986 | ||
986 | static const struct v4l2_subdev_tuner_ops tuner_tuner_ops = { | 987 | static const struct v4l2_subdev_tuner_ops tuner_tuner_ops = { |
987 | .s_std = tuner_s_std, | ||
988 | .s_radio = tuner_s_radio, | 988 | .s_radio = tuner_s_radio, |
989 | .g_tuner = tuner_g_tuner, | 989 | .g_tuner = tuner_g_tuner, |
990 | .s_tuner = tuner_s_tuner, | 990 | .s_tuner = tuner_s_tuner, |
diff --git a/drivers/media/video/tvaudio.c b/drivers/media/video/tvaudio.c index 994753cbd63..2a49c839f8a 100644 --- a/drivers/media/video/tvaudio.c +++ b/drivers/media/video/tvaudio.c | |||
@@ -1911,12 +1911,12 @@ static const struct v4l2_subdev_core_ops tvaudio_core_ops = { | |||
1911 | .queryctrl = tvaudio_queryctrl, | 1911 | .queryctrl = tvaudio_queryctrl, |
1912 | .g_ctrl = tvaudio_g_ctrl, | 1912 | .g_ctrl = tvaudio_g_ctrl, |
1913 | .s_ctrl = tvaudio_s_ctrl, | 1913 | .s_ctrl = tvaudio_s_ctrl, |
1914 | .s_std = tvaudio_s_std, | ||
1914 | }; | 1915 | }; |
1915 | 1916 | ||
1916 | static const struct v4l2_subdev_tuner_ops tvaudio_tuner_ops = { | 1917 | static const struct v4l2_subdev_tuner_ops tvaudio_tuner_ops = { |
1917 | .s_radio = tvaudio_s_radio, | 1918 | .s_radio = tvaudio_s_radio, |
1918 | .s_frequency = tvaudio_s_frequency, | 1919 | .s_frequency = tvaudio_s_frequency, |
1919 | .s_std = tvaudio_s_std, | ||
1920 | .s_tuner = tvaudio_s_tuner, | 1920 | .s_tuner = tvaudio_s_tuner, |
1921 | .s_tuner = tvaudio_g_tuner, | 1921 | .s_tuner = tvaudio_g_tuner, |
1922 | }; | 1922 | }; |
diff --git a/drivers/media/video/tvp5150.c b/drivers/media/video/tvp5150.c index d7f3bad2c02..4aea84a392e 100644 --- a/drivers/media/video/tvp5150.c +++ b/drivers/media/video/tvp5150.c | |||
@@ -1025,6 +1025,7 @@ static const struct v4l2_subdev_core_ops tvp5150_core_ops = { | |||
1025 | .g_ctrl = tvp5150_g_ctrl, | 1025 | .g_ctrl = tvp5150_g_ctrl, |
1026 | .s_ctrl = tvp5150_s_ctrl, | 1026 | .s_ctrl = tvp5150_s_ctrl, |
1027 | .queryctrl = tvp5150_queryctrl, | 1027 | .queryctrl = tvp5150_queryctrl, |
1028 | .s_std = tvp5150_s_std, | ||
1028 | .reset = tvp5150_reset, | 1029 | .reset = tvp5150_reset, |
1029 | .g_chip_ident = tvp5150_g_chip_ident, | 1030 | .g_chip_ident = tvp5150_g_chip_ident, |
1030 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1031 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
@@ -1034,7 +1035,6 @@ static const struct v4l2_subdev_core_ops tvp5150_core_ops = { | |||
1034 | }; | 1035 | }; |
1035 | 1036 | ||
1036 | static const struct v4l2_subdev_tuner_ops tvp5150_tuner_ops = { | 1037 | static const struct v4l2_subdev_tuner_ops tvp5150_tuner_ops = { |
1037 | .s_std = tvp5150_s_std, | ||
1038 | .g_tuner = tvp5150_g_tuner, | 1038 | .g_tuner = tvp5150_g_tuner, |
1039 | }; | 1039 | }; |
1040 | 1040 | ||
diff --git a/drivers/media/video/usbvision/usbvision-video.c b/drivers/media/video/usbvision/usbvision-video.c index 7db493ca87b..c8f8a3c4bbf 100644 --- a/drivers/media/video/usbvision/usbvision-video.c +++ b/drivers/media/video/usbvision/usbvision-video.c | |||
@@ -621,7 +621,7 @@ static int vidioc_s_std (struct file *file, void *priv, v4l2_std_id *id) | |||
621 | usbvision->tvnormId=*id; | 621 | usbvision->tvnormId=*id; |
622 | 622 | ||
623 | mutex_lock(&usbvision->lock); | 623 | mutex_lock(&usbvision->lock); |
624 | call_all(usbvision, tuner, s_std, usbvision->tvnormId); | 624 | call_all(usbvision, core, s_std, usbvision->tvnormId); |
625 | mutex_unlock(&usbvision->lock); | 625 | mutex_unlock(&usbvision->lock); |
626 | /* propagate the change to the decoder */ | 626 | /* propagate the change to the decoder */ |
627 | usbvision_muxsel(usbvision, usbvision->ctl_input); | 627 | usbvision_muxsel(usbvision, usbvision->ctl_input); |
diff --git a/drivers/media/video/vino.c b/drivers/media/video/vino.c index 8da4dd1e0e9..c39a2d4d517 100644 --- a/drivers/media/video/vino.c +++ b/drivers/media/video/vino.c | |||
@@ -2589,7 +2589,7 @@ static int vino_acquire_input(struct vino_channel_settings *vcs) | |||
2589 | } | 2589 | } |
2590 | if (data_norm == 3) | 2590 | if (data_norm == 3) |
2591 | data_norm = VINO_DATA_NORM_PAL; | 2591 | data_norm = VINO_DATA_NORM_PAL; |
2592 | ret = decoder_call(tuner, s_std, norm); | 2592 | ret = decoder_call(core, s_std, norm); |
2593 | } | 2593 | } |
2594 | 2594 | ||
2595 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); | 2595 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); |
@@ -2679,7 +2679,7 @@ static int vino_set_input(struct vino_channel_settings *vcs, int input) | |||
2679 | } | 2679 | } |
2680 | if (data_norm == 3) | 2680 | if (data_norm == 3) |
2681 | data_norm = VINO_DATA_NORM_PAL; | 2681 | data_norm = VINO_DATA_NORM_PAL; |
2682 | ret = decoder_call(tuner, s_std, norm); | 2682 | ret = decoder_call(core, s_std, norm); |
2683 | } | 2683 | } |
2684 | 2684 | ||
2685 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); | 2685 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); |
@@ -2813,7 +2813,7 @@ static int vino_set_data_norm(struct vino_channel_settings *vcs, | |||
2813 | * as it may take a while... */ | 2813 | * as it may take a while... */ |
2814 | 2814 | ||
2815 | norm = vino_data_norms[data_norm].std; | 2815 | norm = vino_data_norms[data_norm].std; |
2816 | err = decoder_call(tuner, s_std, norm); | 2816 | err = decoder_call(core, s_std, norm); |
2817 | 2817 | ||
2818 | spin_lock_irqsave(&vino_drvdata->input_lock, *flags); | 2818 | spin_lock_irqsave(&vino_drvdata->input_lock, *flags); |
2819 | 2819 | ||
diff --git a/drivers/media/video/vp27smpx.c b/drivers/media/video/vp27smpx.c index 42e23a4fa60..38e53b303cc 100644 --- a/drivers/media/video/vp27smpx.c +++ b/drivers/media/video/vp27smpx.c | |||
@@ -134,11 +134,11 @@ static int vp27smpx_log_status(struct v4l2_subdev *sd) | |||
134 | static const struct v4l2_subdev_core_ops vp27smpx_core_ops = { | 134 | static const struct v4l2_subdev_core_ops vp27smpx_core_ops = { |
135 | .log_status = vp27smpx_log_status, | 135 | .log_status = vp27smpx_log_status, |
136 | .g_chip_ident = vp27smpx_g_chip_ident, | 136 | .g_chip_ident = vp27smpx_g_chip_ident, |
137 | .s_std = vp27smpx_s_std, | ||
137 | }; | 138 | }; |
138 | 139 | ||
139 | static const struct v4l2_subdev_tuner_ops vp27smpx_tuner_ops = { | 140 | static const struct v4l2_subdev_tuner_ops vp27smpx_tuner_ops = { |
140 | .s_radio = vp27smpx_s_radio, | 141 | .s_radio = vp27smpx_s_radio, |
141 | .s_std = vp27smpx_s_std, | ||
142 | .s_tuner = vp27smpx_s_tuner, | 142 | .s_tuner = vp27smpx_s_tuner, |
143 | .g_tuner = vp27smpx_g_tuner, | 143 | .g_tuner = vp27smpx_g_tuner, |
144 | }; | 144 | }; |
diff --git a/drivers/media/video/vpx3220.c b/drivers/media/video/vpx3220.c index 2fa7e8bb574..59a8bb046c3 100644 --- a/drivers/media/video/vpx3220.c +++ b/drivers/media/video/vpx3220.c | |||
@@ -516,9 +516,6 @@ static const struct v4l2_subdev_core_ops vpx3220_core_ops = { | |||
516 | .g_ctrl = vpx3220_g_ctrl, | 516 | .g_ctrl = vpx3220_g_ctrl, |
517 | .s_ctrl = vpx3220_s_ctrl, | 517 | .s_ctrl = vpx3220_s_ctrl, |
518 | .queryctrl = vpx3220_queryctrl, | 518 | .queryctrl = vpx3220_queryctrl, |
519 | }; | ||
520 | |||
521 | static const struct v4l2_subdev_tuner_ops vpx3220_tuner_ops = { | ||
522 | .s_std = vpx3220_s_std, | 519 | .s_std = vpx3220_s_std, |
523 | }; | 520 | }; |
524 | 521 | ||
@@ -531,7 +528,6 @@ static const struct v4l2_subdev_video_ops vpx3220_video_ops = { | |||
531 | 528 | ||
532 | static const struct v4l2_subdev_ops vpx3220_ops = { | 529 | static const struct v4l2_subdev_ops vpx3220_ops = { |
533 | .core = &vpx3220_core_ops, | 530 | .core = &vpx3220_core_ops, |
534 | .tuner = &vpx3220_tuner_ops, | ||
535 | .video = &vpx3220_video_ops, | 531 | .video = &vpx3220_video_ops, |
536 | }; | 532 | }; |
537 | 533 | ||
diff --git a/drivers/media/video/zoran/zoran_device.c b/drivers/media/video/zoran/zoran_device.c index e0223deed35..25e565f0502 100644 --- a/drivers/media/video/zoran/zoran_device.c +++ b/drivers/media/video/zoran/zoran_device.c | |||
@@ -1584,7 +1584,7 @@ zoran_init_hardware (struct zoran *zr) | |||
1584 | route.input = zr->card.input[zr->input].muxsel; | 1584 | route.input = zr->card.input[zr->input].muxsel; |
1585 | 1585 | ||
1586 | decoder_call(zr, core, init, 0); | 1586 | decoder_call(zr, core, init, 0); |
1587 | decoder_call(zr, tuner, s_std, zr->norm); | 1587 | decoder_call(zr, core, s_std, zr->norm); |
1588 | decoder_call(zr, video, s_routing, &route); | 1588 | decoder_call(zr, video, s_routing, &route); |
1589 | 1589 | ||
1590 | encoder_call(zr, core, init, 0); | 1590 | encoder_call(zr, core, init, 0); |
diff --git a/drivers/media/video/zoran/zoran_driver.c b/drivers/media/video/zoran/zoran_driver.c index f16e57cf11e..979e8d0e80f 100644 --- a/drivers/media/video/zoran/zoran_driver.c +++ b/drivers/media/video/zoran/zoran_driver.c | |||
@@ -1449,7 +1449,7 @@ zoran_set_norm (struct zoran *zr, | |||
1449 | v4l2_std_id std = 0; | 1449 | v4l2_std_id std = 0; |
1450 | 1450 | ||
1451 | decoder_call(zr, video, querystd, &std); | 1451 | decoder_call(zr, video, querystd, &std); |
1452 | decoder_call(zr, tuner, s_std, std); | 1452 | decoder_call(zr, core, s_std, std); |
1453 | 1453 | ||
1454 | /* let changes come into effect */ | 1454 | /* let changes come into effect */ |
1455 | ssleep(2); | 1455 | ssleep(2); |
@@ -1461,7 +1461,7 @@ zoran_set_norm (struct zoran *zr, | |||
1461 | "%s: %s - no norm detected\n", | 1461 | "%s: %s - no norm detected\n", |
1462 | ZR_DEVNAME(zr), __func__); | 1462 | ZR_DEVNAME(zr), __func__); |
1463 | /* reset norm */ | 1463 | /* reset norm */ |
1464 | decoder_call(zr, tuner, s_std, zr->norm); | 1464 | decoder_call(zr, core, s_std, zr->norm); |
1465 | return -EIO; | 1465 | return -EIO; |
1466 | } | 1466 | } |
1467 | 1467 | ||
@@ -1480,7 +1480,7 @@ zoran_set_norm (struct zoran *zr, | |||
1480 | if (on) | 1480 | if (on) |
1481 | zr36057_overlay(zr, 0); | 1481 | zr36057_overlay(zr, 0); |
1482 | 1482 | ||
1483 | decoder_call(zr, tuner, s_std, norm); | 1483 | decoder_call(zr, core, s_std, norm); |
1484 | encoder_call(zr, video, s_std_output, norm); | 1484 | encoder_call(zr, video, s_std_output, norm); |
1485 | 1485 | ||
1486 | if (on) | 1486 | if (on) |
diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h index 38b89cf7c99..b4e48dc3f2b 100644 --- a/include/media/v4l2-subdev.h +++ b/include/media/v4l2-subdev.h | |||
@@ -113,6 +113,7 @@ struct v4l2_subdev_core_ops { | |||
113 | int (*s_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); | 113 | int (*s_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); |
114 | int (*try_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); | 114 | int (*try_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); |
115 | int (*querymenu)(struct v4l2_subdev *sd, struct v4l2_querymenu *qm); | 115 | int (*querymenu)(struct v4l2_subdev *sd, struct v4l2_querymenu *qm); |
116 | int (*s_std)(struct v4l2_subdev *sd, v4l2_std_id norm); | ||
116 | long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg); | 117 | long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg); |
117 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 118 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
118 | int (*g_register)(struct v4l2_subdev *sd, struct v4l2_dbg_register *reg); | 119 | int (*g_register)(struct v4l2_subdev *sd, struct v4l2_dbg_register *reg); |
@@ -137,7 +138,6 @@ struct v4l2_subdev_tuner_ops { | |||
137 | int (*g_frequency)(struct v4l2_subdev *sd, struct v4l2_frequency *freq); | 138 | int (*g_frequency)(struct v4l2_subdev *sd, struct v4l2_frequency *freq); |
138 | int (*g_tuner)(struct v4l2_subdev *sd, struct v4l2_tuner *vt); | 139 | int (*g_tuner)(struct v4l2_subdev *sd, struct v4l2_tuner *vt); |
139 | int (*s_tuner)(struct v4l2_subdev *sd, struct v4l2_tuner *vt); | 140 | int (*s_tuner)(struct v4l2_subdev *sd, struct v4l2_tuner *vt); |
140 | int (*s_std)(struct v4l2_subdev *sd, v4l2_std_id norm); | ||
141 | int (*s_type_addr)(struct v4l2_subdev *sd, struct tuner_setup *type); | 141 | int (*s_type_addr)(struct v4l2_subdev *sd, struct tuner_setup *type); |
142 | int (*s_config)(struct v4l2_subdev *sd, const struct v4l2_priv_tun_config *config); | 142 | int (*s_config)(struct v4l2_subdev *sd, const struct v4l2_priv_tun_config *config); |
143 | int (*s_standby)(struct v4l2_subdev *sd); | 143 | int (*s_standby)(struct v4l2_subdev *sd); |