diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2014-04-28 15:53:01 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2014-05-24 16:11:26 -0400 |
commit | 8774bed9ce832d8d9ccb79e92800b808aa2d2ad2 (patch) | |
tree | 30756d116a47317fff754ca0f976cf5134033756 | |
parent | 85ada737b9d9ede7dbb17e831d3b4bb187dc1915 (diff) |
[media] v4l: subdev: Move [gs]_std operation to video ops
The g_std and s_std operations are video-related, move them to the video
ops where they belong.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
60 files changed, 107 insertions, 91 deletions
diff --git a/drivers/media/i2c/adv7180.c b/drivers/media/i2c/adv7180.c index 5e638b159452..ac1cdbe251a3 100644 --- a/drivers/media/i2c/adv7180.c +++ b/drivers/media/i2c/adv7180.c | |||
@@ -461,6 +461,7 @@ static int adv7180_g_mbus_config(struct v4l2_subdev *sd, | |||
461 | } | 461 | } |
462 | 462 | ||
463 | static const struct v4l2_subdev_video_ops adv7180_video_ops = { | 463 | static const struct v4l2_subdev_video_ops adv7180_video_ops = { |
464 | .s_std = adv7180_s_std, | ||
464 | .querystd = adv7180_querystd, | 465 | .querystd = adv7180_querystd, |
465 | .g_input_status = adv7180_g_input_status, | 466 | .g_input_status = adv7180_g_input_status, |
466 | .s_routing = adv7180_s_routing, | 467 | .s_routing = adv7180_s_routing, |
@@ -472,7 +473,6 @@ static const struct v4l2_subdev_video_ops adv7180_video_ops = { | |||
472 | }; | 473 | }; |
473 | 474 | ||
474 | static const struct v4l2_subdev_core_ops adv7180_core_ops = { | 475 | static const struct v4l2_subdev_core_ops adv7180_core_ops = { |
475 | .s_std = adv7180_s_std, | ||
476 | .s_power = adv7180_s_power, | 476 | .s_power = adv7180_s_power, |
477 | }; | 477 | }; |
478 | 478 | ||
diff --git a/drivers/media/i2c/adv7183.c b/drivers/media/i2c/adv7183.c index d45e0e3a781d..df461b07b2f7 100644 --- a/drivers/media/i2c/adv7183.c +++ b/drivers/media/i2c/adv7183.c | |||
@@ -501,8 +501,6 @@ static const struct v4l2_ctrl_ops adv7183_ctrl_ops = { | |||
501 | 501 | ||
502 | static const struct v4l2_subdev_core_ops adv7183_core_ops = { | 502 | static const struct v4l2_subdev_core_ops adv7183_core_ops = { |
503 | .log_status = adv7183_log_status, | 503 | .log_status = adv7183_log_status, |
504 | .g_std = adv7183_g_std, | ||
505 | .s_std = adv7183_s_std, | ||
506 | .reset = adv7183_reset, | 504 | .reset = adv7183_reset, |
507 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 505 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
508 | .g_register = adv7183_g_register, | 506 | .g_register = adv7183_g_register, |
@@ -511,6 +509,8 @@ static const struct v4l2_subdev_core_ops adv7183_core_ops = { | |||
511 | }; | 509 | }; |
512 | 510 | ||
513 | static const struct v4l2_subdev_video_ops adv7183_video_ops = { | 511 | static const struct v4l2_subdev_video_ops adv7183_video_ops = { |
512 | .g_std = adv7183_g_std, | ||
513 | .s_std = adv7183_s_std, | ||
514 | .s_routing = adv7183_s_routing, | 514 | .s_routing = adv7183_s_routing, |
515 | .querystd = adv7183_querystd, | 515 | .querystd = adv7183_querystd, |
516 | .g_input_status = adv7183_g_input_status, | 516 | .g_input_status = adv7183_g_input_status, |
diff --git a/drivers/media/i2c/adv7842.c b/drivers/media/i2c/adv7842.c index 06c25c3fa3a9..6a4d389c749c 100644 --- a/drivers/media/i2c/adv7842.c +++ b/drivers/media/i2c/adv7842.c | |||
@@ -2873,8 +2873,6 @@ static const struct v4l2_ctrl_ops adv7842_ctrl_ops = { | |||
2873 | 2873 | ||
2874 | static const struct v4l2_subdev_core_ops adv7842_core_ops = { | 2874 | static const struct v4l2_subdev_core_ops adv7842_core_ops = { |
2875 | .log_status = adv7842_log_status, | 2875 | .log_status = adv7842_log_status, |
2876 | .g_std = adv7842_g_std, | ||
2877 | .s_std = adv7842_s_std, | ||
2878 | .ioctl = adv7842_ioctl, | 2876 | .ioctl = adv7842_ioctl, |
2879 | .interrupt_service_routine = adv7842_isr, | 2877 | .interrupt_service_routine = adv7842_isr, |
2880 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 2878 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
@@ -2884,6 +2882,8 @@ static const struct v4l2_subdev_core_ops adv7842_core_ops = { | |||
2884 | }; | 2882 | }; |
2885 | 2883 | ||
2886 | static const struct v4l2_subdev_video_ops adv7842_video_ops = { | 2884 | static const struct v4l2_subdev_video_ops adv7842_video_ops = { |
2885 | .g_std = adv7842_g_std, | ||
2886 | .s_std = adv7842_s_std, | ||
2887 | .s_routing = adv7842_s_routing, | 2887 | .s_routing = adv7842_s_routing, |
2888 | .querystd = adv7842_querystd, | 2888 | .querystd = adv7842_querystd, |
2889 | .g_input_status = adv7842_g_input_status, | 2889 | .g_input_status = adv7842_g_input_status, |
diff --git a/drivers/media/i2c/bt819.c b/drivers/media/i2c/bt819.c index 369cf6ff88f7..76b334a6a56d 100644 --- a/drivers/media/i2c/bt819.c +++ b/drivers/media/i2c/bt819.c | |||
@@ -387,10 +387,10 @@ static const struct v4l2_subdev_core_ops bt819_core_ops = { | |||
387 | .s_ctrl = v4l2_subdev_s_ctrl, | 387 | .s_ctrl = v4l2_subdev_s_ctrl, |
388 | .queryctrl = v4l2_subdev_queryctrl, | 388 | .queryctrl = v4l2_subdev_queryctrl, |
389 | .querymenu = v4l2_subdev_querymenu, | 389 | .querymenu = v4l2_subdev_querymenu, |
390 | .s_std = bt819_s_std, | ||
391 | }; | 390 | }; |
392 | 391 | ||
393 | static const struct v4l2_subdev_video_ops bt819_video_ops = { | 392 | static const struct v4l2_subdev_video_ops bt819_video_ops = { |
393 | .s_std = bt819_s_std, | ||
394 | .s_routing = bt819_s_routing, | 394 | .s_routing = bt819_s_routing, |
395 | .s_stream = bt819_s_stream, | 395 | .s_stream = bt819_s_stream, |
396 | .querystd = bt819_querystd, | 396 | .querystd = bt819_querystd, |
diff --git a/drivers/media/i2c/cx25840/cx25840-core.c b/drivers/media/i2c/cx25840/cx25840-core.c index 2e3771d57354..e453a3ffe7d1 100644 --- a/drivers/media/i2c/cx25840/cx25840-core.c +++ b/drivers/media/i2c/cx25840/cx25840-core.c | |||
@@ -5041,8 +5041,6 @@ static const struct v4l2_subdev_core_ops cx25840_core_ops = { | |||
5041 | .g_ext_ctrls = v4l2_subdev_g_ext_ctrls, | 5041 | .g_ext_ctrls = v4l2_subdev_g_ext_ctrls, |
5042 | .queryctrl = v4l2_subdev_queryctrl, | 5042 | .queryctrl = v4l2_subdev_queryctrl, |
5043 | .querymenu = v4l2_subdev_querymenu, | 5043 | .querymenu = v4l2_subdev_querymenu, |
5044 | .s_std = cx25840_s_std, | ||
5045 | .g_std = cx25840_g_std, | ||
5046 | .reset = cx25840_reset, | 5044 | .reset = cx25840_reset, |
5047 | .load_fw = cx25840_load_fw, | 5045 | .load_fw = cx25840_load_fw, |
5048 | .s_io_pin_config = common_s_io_pin_config, | 5046 | .s_io_pin_config = common_s_io_pin_config, |
@@ -5067,6 +5065,8 @@ static const struct v4l2_subdev_audio_ops cx25840_audio_ops = { | |||
5067 | }; | 5065 | }; |
5068 | 5066 | ||
5069 | static const struct v4l2_subdev_video_ops cx25840_video_ops = { | 5067 | static const struct v4l2_subdev_video_ops cx25840_video_ops = { |
5068 | .s_std = cx25840_s_std, | ||
5069 | .g_std = cx25840_g_std, | ||
5070 | .s_routing = cx25840_s_video_routing, | 5070 | .s_routing = cx25840_s_video_routing, |
5071 | .s_mbus_fmt = cx25840_s_mbus_fmt, | 5071 | .s_mbus_fmt = cx25840_s_mbus_fmt, |
5072 | .s_stream = cx25840_s_stream, | 5072 | .s_stream = cx25840_s_stream, |
diff --git a/drivers/media/i2c/ks0127.c b/drivers/media/i2c/ks0127.c index c3e94ae82c03..25b81bc58c81 100644 --- a/drivers/media/i2c/ks0127.c +++ b/drivers/media/i2c/ks0127.c | |||
@@ -648,11 +648,8 @@ static int ks0127_g_input_status(struct v4l2_subdev *sd, u32 *status) | |||
648 | 648 | ||
649 | /* ----------------------------------------------------------------------- */ | 649 | /* ----------------------------------------------------------------------- */ |
650 | 650 | ||
651 | static const struct v4l2_subdev_core_ops ks0127_core_ops = { | ||
652 | .s_std = ks0127_s_std, | ||
653 | }; | ||
654 | |||
655 | static const struct v4l2_subdev_video_ops ks0127_video_ops = { | 651 | static const struct v4l2_subdev_video_ops ks0127_video_ops = { |
652 | .s_std = ks0127_s_std, | ||
656 | .s_routing = ks0127_s_routing, | 653 | .s_routing = ks0127_s_routing, |
657 | .s_stream = ks0127_s_stream, | 654 | .s_stream = ks0127_s_stream, |
658 | .querystd = ks0127_querystd, | 655 | .querystd = ks0127_querystd, |
@@ -660,7 +657,6 @@ static const struct v4l2_subdev_video_ops ks0127_video_ops = { | |||
660 | }; | 657 | }; |
661 | 658 | ||
662 | static const struct v4l2_subdev_ops ks0127_ops = { | 659 | static const struct v4l2_subdev_ops ks0127_ops = { |
663 | .core = &ks0127_core_ops, | ||
664 | .video = &ks0127_video_ops, | 660 | .video = &ks0127_video_ops, |
665 | }; | 661 | }; |
666 | 662 | ||
diff --git a/drivers/media/i2c/ml86v7667.c b/drivers/media/i2c/ml86v7667.c index a9110d8bbbcd..2cace7313a22 100644 --- a/drivers/media/i2c/ml86v7667.c +++ b/drivers/media/i2c/ml86v7667.c | |||
@@ -276,6 +276,7 @@ static const struct v4l2_ctrl_ops ml86v7667_ctrl_ops = { | |||
276 | }; | 276 | }; |
277 | 277 | ||
278 | static struct v4l2_subdev_video_ops ml86v7667_subdev_video_ops = { | 278 | static struct v4l2_subdev_video_ops ml86v7667_subdev_video_ops = { |
279 | .s_std = ml86v7667_s_std, | ||
279 | .querystd = ml86v7667_querystd, | 280 | .querystd = ml86v7667_querystd, |
280 | .g_input_status = ml86v7667_g_input_status, | 281 | .g_input_status = ml86v7667_g_input_status, |
281 | .enum_mbus_fmt = ml86v7667_enum_mbus_fmt, | 282 | .enum_mbus_fmt = ml86v7667_enum_mbus_fmt, |
@@ -286,7 +287,6 @@ static struct v4l2_subdev_video_ops ml86v7667_subdev_video_ops = { | |||
286 | }; | 287 | }; |
287 | 288 | ||
288 | static struct v4l2_subdev_core_ops ml86v7667_subdev_core_ops = { | 289 | static struct v4l2_subdev_core_ops ml86v7667_subdev_core_ops = { |
289 | .s_std = ml86v7667_s_std, | ||
290 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 290 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
291 | .g_register = ml86v7667_g_register, | 291 | .g_register = ml86v7667_g_register, |
292 | .s_register = ml86v7667_s_register, | 292 | .s_register = ml86v7667_s_register, |
diff --git a/drivers/media/i2c/msp3400-driver.c b/drivers/media/i2c/msp3400-driver.c index 8190fec68080..4d9c6bc34265 100644 --- a/drivers/media/i2c/msp3400-driver.c +++ b/drivers/media/i2c/msp3400-driver.c | |||
@@ -649,10 +649,10 @@ static const struct v4l2_subdev_core_ops msp_core_ops = { | |||
649 | .s_ctrl = v4l2_subdev_s_ctrl, | 649 | .s_ctrl = v4l2_subdev_s_ctrl, |
650 | .queryctrl = v4l2_subdev_queryctrl, | 650 | .queryctrl = v4l2_subdev_queryctrl, |
651 | .querymenu = v4l2_subdev_querymenu, | 651 | .querymenu = v4l2_subdev_querymenu, |
652 | .s_std = msp_s_std, | ||
653 | }; | 652 | }; |
654 | 653 | ||
655 | static const struct v4l2_subdev_video_ops msp_video_ops = { | 654 | static const struct v4l2_subdev_video_ops msp_video_ops = { |
655 | .s_std = msp_s_std, | ||
656 | .querystd = msp_querystd, | 656 | .querystd = msp_querystd, |
657 | }; | 657 | }; |
658 | 658 | ||
diff --git a/drivers/media/i2c/saa6752hs.c b/drivers/media/i2c/saa6752hs.c index 8272c0b9c5bf..04e9e55018a5 100644 --- a/drivers/media/i2c/saa6752hs.c +++ b/drivers/media/i2c/saa6752hs.c | |||
@@ -643,10 +643,10 @@ static const struct v4l2_ctrl_ops saa6752hs_ctrl_ops = { | |||
643 | 643 | ||
644 | static const struct v4l2_subdev_core_ops saa6752hs_core_ops = { | 644 | static const struct v4l2_subdev_core_ops saa6752hs_core_ops = { |
645 | .init = saa6752hs_init, | 645 | .init = saa6752hs_init, |
646 | .s_std = saa6752hs_s_std, | ||
647 | }; | 646 | }; |
648 | 647 | ||
649 | static const struct v4l2_subdev_video_ops saa6752hs_video_ops = { | 648 | static const struct v4l2_subdev_video_ops saa6752hs_video_ops = { |
649 | .s_std = saa6752hs_s_std, | ||
650 | .s_mbus_fmt = saa6752hs_s_mbus_fmt, | 650 | .s_mbus_fmt = saa6752hs_s_mbus_fmt, |
651 | .try_mbus_fmt = saa6752hs_try_mbus_fmt, | 651 | .try_mbus_fmt = saa6752hs_try_mbus_fmt, |
652 | .g_mbus_fmt = saa6752hs_g_mbus_fmt, | 652 | .g_mbus_fmt = saa6752hs_g_mbus_fmt, |
diff --git a/drivers/media/i2c/saa7110.c b/drivers/media/i2c/saa7110.c index ac43e929a1d6..99689ee57d7e 100644 --- a/drivers/media/i2c/saa7110.c +++ b/drivers/media/i2c/saa7110.c | |||
@@ -365,10 +365,10 @@ static const struct v4l2_subdev_core_ops saa7110_core_ops = { | |||
365 | .s_ctrl = v4l2_subdev_s_ctrl, | 365 | .s_ctrl = v4l2_subdev_s_ctrl, |
366 | .queryctrl = v4l2_subdev_queryctrl, | 366 | .queryctrl = v4l2_subdev_queryctrl, |
367 | .querymenu = v4l2_subdev_querymenu, | 367 | .querymenu = v4l2_subdev_querymenu, |
368 | .s_std = saa7110_s_std, | ||
369 | }; | 368 | }; |
370 | 369 | ||
371 | static const struct v4l2_subdev_video_ops saa7110_video_ops = { | 370 | static const struct v4l2_subdev_video_ops saa7110_video_ops = { |
371 | .s_std = saa7110_s_std, | ||
372 | .s_routing = saa7110_s_routing, | 372 | .s_routing = saa7110_s_routing, |
373 | .s_stream = saa7110_s_stream, | 373 | .s_stream = saa7110_s_stream, |
374 | .querystd = saa7110_querystd, | 374 | .querystd = saa7110_querystd, |
diff --git a/drivers/media/i2c/saa7115.c b/drivers/media/i2c/saa7115.c index afdbcb045cee..35a44648150e 100644 --- a/drivers/media/i2c/saa7115.c +++ b/drivers/media/i2c/saa7115.c | |||
@@ -1582,7 +1582,6 @@ static const struct v4l2_subdev_core_ops saa711x_core_ops = { | |||
1582 | .s_ctrl = v4l2_subdev_s_ctrl, | 1582 | .s_ctrl = v4l2_subdev_s_ctrl, |
1583 | .queryctrl = v4l2_subdev_queryctrl, | 1583 | .queryctrl = v4l2_subdev_queryctrl, |
1584 | .querymenu = v4l2_subdev_querymenu, | 1584 | .querymenu = v4l2_subdev_querymenu, |
1585 | .s_std = saa711x_s_std, | ||
1586 | .reset = saa711x_reset, | 1585 | .reset = saa711x_reset, |
1587 | .s_gpio = saa711x_s_gpio, | 1586 | .s_gpio = saa711x_s_gpio, |
1588 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1587 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
@@ -1601,6 +1600,7 @@ static const struct v4l2_subdev_audio_ops saa711x_audio_ops = { | |||
1601 | }; | 1600 | }; |
1602 | 1601 | ||
1603 | static const struct v4l2_subdev_video_ops saa711x_video_ops = { | 1602 | static const struct v4l2_subdev_video_ops saa711x_video_ops = { |
1603 | .s_std = saa711x_s_std, | ||
1604 | .s_routing = saa711x_s_routing, | 1604 | .s_routing = saa711x_s_routing, |
1605 | .s_crystal_freq = saa711x_s_crystal_freq, | 1605 | .s_crystal_freq = saa711x_s_crystal_freq, |
1606 | .s_mbus_fmt = saa711x_s_mbus_fmt, | 1606 | .s_mbus_fmt = saa711x_s_mbus_fmt, |
diff --git a/drivers/media/i2c/saa717x.c b/drivers/media/i2c/saa717x.c index 401ca114ab99..6922a9f9a5cd 100644 --- a/drivers/media/i2c/saa717x.c +++ b/drivers/media/i2c/saa717x.c | |||
@@ -1198,7 +1198,6 @@ static const struct v4l2_subdev_core_ops saa717x_core_ops = { | |||
1198 | .g_register = saa717x_g_register, | 1198 | .g_register = saa717x_g_register, |
1199 | .s_register = saa717x_s_register, | 1199 | .s_register = saa717x_s_register, |
1200 | #endif | 1200 | #endif |
1201 | .s_std = saa717x_s_std, | ||
1202 | .g_ext_ctrls = v4l2_subdev_g_ext_ctrls, | 1201 | .g_ext_ctrls = v4l2_subdev_g_ext_ctrls, |
1203 | .try_ext_ctrls = v4l2_subdev_try_ext_ctrls, | 1202 | .try_ext_ctrls = v4l2_subdev_try_ext_ctrls, |
1204 | .s_ext_ctrls = v4l2_subdev_s_ext_ctrls, | 1203 | .s_ext_ctrls = v4l2_subdev_s_ext_ctrls, |
@@ -1216,6 +1215,7 @@ static const struct v4l2_subdev_tuner_ops saa717x_tuner_ops = { | |||
1216 | }; | 1215 | }; |
1217 | 1216 | ||
1218 | static const struct v4l2_subdev_video_ops saa717x_video_ops = { | 1217 | static const struct v4l2_subdev_video_ops saa717x_video_ops = { |
1218 | .s_std = saa717x_s_std, | ||
1219 | .s_routing = saa717x_s_video_routing, | 1219 | .s_routing = saa717x_s_video_routing, |
1220 | .s_mbus_fmt = saa717x_s_mbus_fmt, | 1220 | .s_mbus_fmt = saa717x_s_mbus_fmt, |
1221 | .s_stream = saa717x_s_stream, | 1221 | .s_stream = saa717x_s_stream, |
diff --git a/drivers/media/i2c/saa7191.c b/drivers/media/i2c/saa7191.c index 606a4baf944d..8e9699268a63 100644 --- a/drivers/media/i2c/saa7191.c +++ b/drivers/media/i2c/saa7191.c | |||
@@ -573,10 +573,10 @@ static int saa7191_g_input_status(struct v4l2_subdev *sd, u32 *status) | |||
573 | static const struct v4l2_subdev_core_ops saa7191_core_ops = { | 573 | static const struct v4l2_subdev_core_ops saa7191_core_ops = { |
574 | .g_ctrl = saa7191_g_ctrl, | 574 | .g_ctrl = saa7191_g_ctrl, |
575 | .s_ctrl = saa7191_s_ctrl, | 575 | .s_ctrl = saa7191_s_ctrl, |
576 | .s_std = saa7191_s_std, | ||
577 | }; | 576 | }; |
578 | 577 | ||
579 | static const struct v4l2_subdev_video_ops saa7191_video_ops = { | 578 | static const struct v4l2_subdev_video_ops saa7191_video_ops = { |
579 | .s_std = saa7191_s_std, | ||
580 | .s_routing = saa7191_s_routing, | 580 | .s_routing = saa7191_s_routing, |
581 | .querystd = saa7191_querystd, | 581 | .querystd = saa7191_querystd, |
582 | .g_input_status = saa7191_g_input_status, | 582 | .g_input_status = saa7191_g_input_status, |
diff --git a/drivers/media/i2c/soc_camera/tw9910.c b/drivers/media/i2c/soc_camera/tw9910.c index 02a51ff57e5d..416402eb4f82 100644 --- a/drivers/media/i2c/soc_camera/tw9910.c +++ b/drivers/media/i2c/soc_camera/tw9910.c | |||
@@ -814,8 +814,6 @@ done: | |||
814 | } | 814 | } |
815 | 815 | ||
816 | static struct v4l2_subdev_core_ops tw9910_subdev_core_ops = { | 816 | static struct v4l2_subdev_core_ops tw9910_subdev_core_ops = { |
817 | .s_std = tw9910_s_std, | ||
818 | .g_std = tw9910_g_std, | ||
819 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 817 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
820 | .g_register = tw9910_g_register, | 818 | .g_register = tw9910_g_register, |
821 | .s_register = tw9910_s_register, | 819 | .s_register = tw9910_s_register, |
@@ -879,6 +877,8 @@ static int tw9910_g_tvnorms(struct v4l2_subdev *sd, v4l2_std_id *norm) | |||
879 | } | 877 | } |
880 | 878 | ||
881 | static struct v4l2_subdev_video_ops tw9910_subdev_video_ops = { | 879 | static struct v4l2_subdev_video_ops tw9910_subdev_video_ops = { |
880 | .s_std = tw9910_s_std, | ||
881 | .g_std = tw9910_g_std, | ||
882 | .s_stream = tw9910_s_stream, | 882 | .s_stream = tw9910_s_stream, |
883 | .g_mbus_fmt = tw9910_g_fmt, | 883 | .g_mbus_fmt = tw9910_g_fmt, |
884 | .s_mbus_fmt = tw9910_s_fmt, | 884 | .s_mbus_fmt = tw9910_s_fmt, |
diff --git a/drivers/media/i2c/sony-btf-mpx.c b/drivers/media/i2c/sony-btf-mpx.c index 32d82320b485..1da8004f5a8e 100644 --- a/drivers/media/i2c/sony-btf-mpx.c +++ b/drivers/media/i2c/sony-btf-mpx.c | |||
@@ -327,18 +327,18 @@ static int sony_btf_mpx_s_tuner(struct v4l2_subdev *sd, const struct v4l2_tuner | |||
327 | 327 | ||
328 | /* --------------------------------------------------------------------------*/ | 328 | /* --------------------------------------------------------------------------*/ |
329 | 329 | ||
330 | static const struct v4l2_subdev_core_ops sony_btf_mpx_core_ops = { | ||
331 | .s_std = sony_btf_mpx_s_std, | ||
332 | }; | ||
333 | |||
334 | static const struct v4l2_subdev_tuner_ops sony_btf_mpx_tuner_ops = { | 330 | static const struct v4l2_subdev_tuner_ops sony_btf_mpx_tuner_ops = { |
335 | .s_tuner = sony_btf_mpx_s_tuner, | 331 | .s_tuner = sony_btf_mpx_s_tuner, |
336 | .g_tuner = sony_btf_mpx_g_tuner, | 332 | .g_tuner = sony_btf_mpx_g_tuner, |
337 | }; | 333 | }; |
338 | 334 | ||
335 | static const struct v4l2_subdev_video_ops sony_btf_mpx_video_ops = { | ||
336 | .s_std = sony_btf_mpx_s_std, | ||
337 | }; | ||
338 | |||
339 | static const struct v4l2_subdev_ops sony_btf_mpx_ops = { | 339 | static const struct v4l2_subdev_ops sony_btf_mpx_ops = { |
340 | .core = &sony_btf_mpx_core_ops, | ||
341 | .tuner = &sony_btf_mpx_tuner_ops, | 340 | .tuner = &sony_btf_mpx_tuner_ops, |
341 | .video = &sony_btf_mpx_video_ops, | ||
342 | }; | 342 | }; |
343 | 343 | ||
344 | /* --------------------------------------------------------------------------*/ | 344 | /* --------------------------------------------------------------------------*/ |
diff --git a/drivers/media/i2c/tvaudio.c b/drivers/media/i2c/tvaudio.c index d76c53a8f027..070c152da95a 100644 --- a/drivers/media/i2c/tvaudio.c +++ b/drivers/media/i2c/tvaudio.c | |||
@@ -1862,7 +1862,6 @@ static const struct v4l2_subdev_core_ops tvaudio_core_ops = { | |||
1862 | .s_ctrl = v4l2_subdev_s_ctrl, | 1862 | .s_ctrl = v4l2_subdev_s_ctrl, |
1863 | .queryctrl = v4l2_subdev_queryctrl, | 1863 | .queryctrl = v4l2_subdev_queryctrl, |
1864 | .querymenu = v4l2_subdev_querymenu, | 1864 | .querymenu = v4l2_subdev_querymenu, |
1865 | .s_std = tvaudio_s_std, | ||
1866 | }; | 1865 | }; |
1867 | 1866 | ||
1868 | static const struct v4l2_subdev_tuner_ops tvaudio_tuner_ops = { | 1867 | static const struct v4l2_subdev_tuner_ops tvaudio_tuner_ops = { |
@@ -1876,10 +1875,15 @@ static const struct v4l2_subdev_audio_ops tvaudio_audio_ops = { | |||
1876 | .s_routing = tvaudio_s_routing, | 1875 | .s_routing = tvaudio_s_routing, |
1877 | }; | 1876 | }; |
1878 | 1877 | ||
1878 | static const struct v4l2_subdev_video_ops tvaudio_video_ops = { | ||
1879 | .s_std = tvaudio_s_std, | ||
1880 | }; | ||
1881 | |||
1879 | static const struct v4l2_subdev_ops tvaudio_ops = { | 1882 | static const struct v4l2_subdev_ops tvaudio_ops = { |
1880 | .core = &tvaudio_core_ops, | 1883 | .core = &tvaudio_core_ops, |
1881 | .tuner = &tvaudio_tuner_ops, | 1884 | .tuner = &tvaudio_tuner_ops, |
1882 | .audio = &tvaudio_audio_ops, | 1885 | .audio = &tvaudio_audio_ops, |
1886 | .video = &tvaudio_video_ops, | ||
1883 | }; | 1887 | }; |
1884 | 1888 | ||
1885 | /* ----------------------------------------------------------------------- */ | 1889 | /* ----------------------------------------------------------------------- */ |
diff --git a/drivers/media/i2c/tvp514x.c b/drivers/media/i2c/tvp514x.c index ca001178c5bf..b9dabc9f4050 100644 --- a/drivers/media/i2c/tvp514x.c +++ b/drivers/media/i2c/tvp514x.c | |||
@@ -1010,10 +1010,10 @@ static const struct v4l2_subdev_core_ops tvp514x_core_ops = { | |||
1010 | .s_ctrl = v4l2_subdev_s_ctrl, | 1010 | .s_ctrl = v4l2_subdev_s_ctrl, |
1011 | .queryctrl = v4l2_subdev_queryctrl, | 1011 | .queryctrl = v4l2_subdev_queryctrl, |
1012 | .querymenu = v4l2_subdev_querymenu, | 1012 | .querymenu = v4l2_subdev_querymenu, |
1013 | .s_std = tvp514x_s_std, | ||
1014 | }; | 1013 | }; |
1015 | 1014 | ||
1016 | static const struct v4l2_subdev_video_ops tvp514x_video_ops = { | 1015 | static const struct v4l2_subdev_video_ops tvp514x_video_ops = { |
1016 | .s_std = tvp514x_s_std, | ||
1017 | .s_routing = tvp514x_s_routing, | 1017 | .s_routing = tvp514x_s_routing, |
1018 | .querystd = tvp514x_querystd, | 1018 | .querystd = tvp514x_querystd, |
1019 | .enum_mbus_fmt = tvp514x_enum_mbus_fmt, | 1019 | .enum_mbus_fmt = tvp514x_enum_mbus_fmt, |
diff --git a/drivers/media/i2c/tvp5150.c b/drivers/media/i2c/tvp5150.c index 07dee4439c2f..a9121254e37a 100644 --- a/drivers/media/i2c/tvp5150.c +++ b/drivers/media/i2c/tvp5150.c | |||
@@ -1063,7 +1063,6 @@ static const struct v4l2_ctrl_ops tvp5150_ctrl_ops = { | |||
1063 | 1063 | ||
1064 | static const struct v4l2_subdev_core_ops tvp5150_core_ops = { | 1064 | static const struct v4l2_subdev_core_ops tvp5150_core_ops = { |
1065 | .log_status = tvp5150_log_status, | 1065 | .log_status = tvp5150_log_status, |
1066 | .s_std = tvp5150_s_std, | ||
1067 | .reset = tvp5150_reset, | 1066 | .reset = tvp5150_reset, |
1068 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1067 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
1069 | .g_register = tvp5150_g_register, | 1068 | .g_register = tvp5150_g_register, |
@@ -1076,6 +1075,7 @@ static const struct v4l2_subdev_tuner_ops tvp5150_tuner_ops = { | |||
1076 | }; | 1075 | }; |
1077 | 1076 | ||
1078 | static const struct v4l2_subdev_video_ops tvp5150_video_ops = { | 1077 | static const struct v4l2_subdev_video_ops tvp5150_video_ops = { |
1078 | .s_std = tvp5150_s_std, | ||
1079 | .s_routing = tvp5150_s_routing, | 1079 | .s_routing = tvp5150_s_routing, |
1080 | .enum_mbus_fmt = tvp5150_enum_mbus_fmt, | 1080 | .enum_mbus_fmt = tvp5150_enum_mbus_fmt, |
1081 | .s_mbus_fmt = tvp5150_mbus_fmt, | 1081 | .s_mbus_fmt = tvp5150_mbus_fmt, |
diff --git a/drivers/media/i2c/tw2804.c b/drivers/media/i2c/tw2804.c index f58607df6193..7347480c0b0c 100644 --- a/drivers/media/i2c/tw2804.c +++ b/drivers/media/i2c/tw2804.c | |||
@@ -342,12 +342,12 @@ static const struct v4l2_ctrl_ops tw2804_ctrl_ops = { | |||
342 | }; | 342 | }; |
343 | 343 | ||
344 | static const struct v4l2_subdev_video_ops tw2804_video_ops = { | 344 | static const struct v4l2_subdev_video_ops tw2804_video_ops = { |
345 | .s_std = tw2804_s_std, | ||
345 | .s_routing = tw2804_s_video_routing, | 346 | .s_routing = tw2804_s_video_routing, |
346 | }; | 347 | }; |
347 | 348 | ||
348 | static const struct v4l2_subdev_core_ops tw2804_core_ops = { | 349 | static const struct v4l2_subdev_core_ops tw2804_core_ops = { |
349 | .log_status = tw2804_log_status, | 350 | .log_status = tw2804_log_status, |
350 | .s_std = tw2804_s_std, | ||
351 | }; | 351 | }; |
352 | 352 | ||
353 | static const struct v4l2_subdev_ops tw2804_ops = { | 353 | static const struct v4l2_subdev_ops tw2804_ops = { |
diff --git a/drivers/media/i2c/tw9903.c b/drivers/media/i2c/tw9903.c index 285b759a5f7f..12c7d211a4a4 100644 --- a/drivers/media/i2c/tw9903.c +++ b/drivers/media/i2c/tw9903.c | |||
@@ -187,10 +187,10 @@ static const struct v4l2_ctrl_ops tw9903_ctrl_ops = { | |||
187 | 187 | ||
188 | static const struct v4l2_subdev_core_ops tw9903_core_ops = { | 188 | static const struct v4l2_subdev_core_ops tw9903_core_ops = { |
189 | .log_status = tw9903_log_status, | 189 | .log_status = tw9903_log_status, |
190 | .s_std = tw9903_s_std, | ||
191 | }; | 190 | }; |
192 | 191 | ||
193 | static const struct v4l2_subdev_video_ops tw9903_video_ops = { | 192 | static const struct v4l2_subdev_video_ops tw9903_video_ops = { |
193 | .s_std = tw9903_s_std, | ||
194 | .s_routing = tw9903_s_video_routing, | 194 | .s_routing = tw9903_s_video_routing, |
195 | }; | 195 | }; |
196 | 196 | ||
diff --git a/drivers/media/i2c/tw9906.c b/drivers/media/i2c/tw9906.c index f6bef25bd9ce..2672d89265ff 100644 --- a/drivers/media/i2c/tw9906.c +++ b/drivers/media/i2c/tw9906.c | |||
@@ -157,10 +157,10 @@ static const struct v4l2_ctrl_ops tw9906_ctrl_ops = { | |||
157 | 157 | ||
158 | static const struct v4l2_subdev_core_ops tw9906_core_ops = { | 158 | static const struct v4l2_subdev_core_ops tw9906_core_ops = { |
159 | .log_status = tw9906_log_status, | 159 | .log_status = tw9906_log_status, |
160 | .s_std = tw9906_s_std, | ||
161 | }; | 160 | }; |
162 | 161 | ||
163 | static const struct v4l2_subdev_video_ops tw9906_video_ops = { | 162 | static const struct v4l2_subdev_video_ops tw9906_video_ops = { |
163 | .s_std = tw9906_s_std, | ||
164 | .s_routing = tw9906_s_video_routing, | 164 | .s_routing = tw9906_s_video_routing, |
165 | }; | 165 | }; |
166 | 166 | ||
diff --git a/drivers/media/i2c/vp27smpx.c b/drivers/media/i2c/vp27smpx.c index 6a3a3ff7ee6a..819ab6d12989 100644 --- a/drivers/media/i2c/vp27smpx.c +++ b/drivers/media/i2c/vp27smpx.c | |||
@@ -124,7 +124,6 @@ static int vp27smpx_log_status(struct v4l2_subdev *sd) | |||
124 | 124 | ||
125 | static const struct v4l2_subdev_core_ops vp27smpx_core_ops = { | 125 | static const struct v4l2_subdev_core_ops vp27smpx_core_ops = { |
126 | .log_status = vp27smpx_log_status, | 126 | .log_status = vp27smpx_log_status, |
127 | .s_std = vp27smpx_s_std, | ||
128 | }; | 127 | }; |
129 | 128 | ||
130 | static const struct v4l2_subdev_tuner_ops vp27smpx_tuner_ops = { | 129 | static const struct v4l2_subdev_tuner_ops vp27smpx_tuner_ops = { |
@@ -133,9 +132,14 @@ static const struct v4l2_subdev_tuner_ops vp27smpx_tuner_ops = { | |||
133 | .g_tuner = vp27smpx_g_tuner, | 132 | .g_tuner = vp27smpx_g_tuner, |
134 | }; | 133 | }; |
135 | 134 | ||
135 | static const struct v4l2_subdev_video_ops vp27smpx_video_ops = { | ||
136 | .s_std = vp27smpx_s_std, | ||
137 | }; | ||
138 | |||
136 | static const struct v4l2_subdev_ops vp27smpx_ops = { | 139 | static const struct v4l2_subdev_ops vp27smpx_ops = { |
137 | .core = &vp27smpx_core_ops, | 140 | .core = &vp27smpx_core_ops, |
138 | .tuner = &vp27smpx_tuner_ops, | 141 | .tuner = &vp27smpx_tuner_ops, |
142 | .video = &vp27smpx_video_ops, | ||
139 | }; | 143 | }; |
140 | 144 | ||
141 | /* ----------------------------------------------------------------------- */ | 145 | /* ----------------------------------------------------------------------- */ |
diff --git a/drivers/media/i2c/vpx3220.c b/drivers/media/i2c/vpx3220.c index ece90df6a043..016e766e72ba 100644 --- a/drivers/media/i2c/vpx3220.c +++ b/drivers/media/i2c/vpx3220.c | |||
@@ -457,10 +457,10 @@ static const struct v4l2_subdev_core_ops vpx3220_core_ops = { | |||
457 | .s_ctrl = v4l2_subdev_s_ctrl, | 457 | .s_ctrl = v4l2_subdev_s_ctrl, |
458 | .queryctrl = v4l2_subdev_queryctrl, | 458 | .queryctrl = v4l2_subdev_queryctrl, |
459 | .querymenu = v4l2_subdev_querymenu, | 459 | .querymenu = v4l2_subdev_querymenu, |
460 | .s_std = vpx3220_s_std, | ||
461 | }; | 460 | }; |
462 | 461 | ||
463 | static const struct v4l2_subdev_video_ops vpx3220_video_ops = { | 462 | static const struct v4l2_subdev_video_ops vpx3220_video_ops = { |
463 | .s_std = vpx3220_s_std, | ||
464 | .s_routing = vpx3220_s_routing, | 464 | .s_routing = vpx3220_s_routing, |
465 | .s_stream = vpx3220_s_stream, | 465 | .s_stream = vpx3220_s_stream, |
466 | .querystd = vpx3220_querystd, | 466 | .querystd = vpx3220_querystd, |
diff --git a/drivers/media/pci/bt8xx/bttv-driver.c b/drivers/media/pci/bt8xx/bttv-driver.c index afcd53bfcf8e..da780f42b121 100644 --- a/drivers/media/pci/bt8xx/bttv-driver.c +++ b/drivers/media/pci/bt8xx/bttv-driver.c | |||
@@ -1182,7 +1182,7 @@ set_tvnorm(struct bttv *btv, unsigned int norm) | |||
1182 | break; | 1182 | break; |
1183 | } | 1183 | } |
1184 | id = tvnorm->v4l2_id; | 1184 | id = tvnorm->v4l2_id; |
1185 | bttv_call_all(btv, core, s_std, id); | 1185 | bttv_call_all(btv, video, s_std, id); |
1186 | 1186 | ||
1187 | return 0; | 1187 | return 0; |
1188 | } | 1188 | } |
diff --git a/drivers/media/pci/cx18/cx18-av-core.c b/drivers/media/pci/cx18/cx18-av-core.c index c4890a430dc6..2d3afe0431a9 100644 --- a/drivers/media/pci/cx18/cx18-av-core.c +++ b/drivers/media/pci/cx18/cx18-av-core.c | |||
@@ -1263,7 +1263,6 @@ static const struct v4l2_subdev_core_ops cx18_av_general_ops = { | |||
1263 | .log_status = cx18_av_log_status, | 1263 | .log_status = cx18_av_log_status, |
1264 | .load_fw = cx18_av_load_fw, | 1264 | .load_fw = cx18_av_load_fw, |
1265 | .reset = cx18_av_reset, | 1265 | .reset = cx18_av_reset, |
1266 | .s_std = cx18_av_s_std, | ||
1267 | #ifdef CONFIG_VIDEO_ADV_DEBUG | 1266 | #ifdef CONFIG_VIDEO_ADV_DEBUG |
1268 | .g_register = cx18_av_g_register, | 1267 | .g_register = cx18_av_g_register, |
1269 | .s_register = cx18_av_s_register, | 1268 | .s_register = cx18_av_s_register, |
@@ -1283,6 +1282,7 @@ static const struct v4l2_subdev_audio_ops cx18_av_audio_ops = { | |||
1283 | }; | 1282 | }; |
1284 | 1283 | ||
1285 | static const struct v4l2_subdev_video_ops cx18_av_video_ops = { | 1284 | static const struct v4l2_subdev_video_ops cx18_av_video_ops = { |
1285 | .s_std = cx18_av_s_std, | ||
1286 | .s_routing = cx18_av_s_video_routing, | 1286 | .s_routing = cx18_av_s_video_routing, |
1287 | .s_stream = cx18_av_s_stream, | 1287 | .s_stream = cx18_av_s_stream, |
1288 | .s_mbus_fmt = cx18_av_s_mbus_fmt, | 1288 | .s_mbus_fmt = cx18_av_s_mbus_fmt, |
diff --git a/drivers/media/pci/cx18/cx18-fileops.c b/drivers/media/pci/cx18/cx18-fileops.c index 4bfd865a4106..76a3b4ac541e 100644 --- a/drivers/media/pci/cx18/cx18-fileops.c +++ b/drivers/media/pci/cx18/cx18-fileops.c | |||
@@ -760,7 +760,7 @@ int cx18_v4l2_close(struct file *filp) | |||
760 | /* Mark that the radio is no longer in use */ | 760 | /* Mark that the radio is no longer in use */ |
761 | clear_bit(CX18_F_I_RADIO_USER, &cx->i_flags); | 761 | clear_bit(CX18_F_I_RADIO_USER, &cx->i_flags); |
762 | /* Switch tuner to TV */ | 762 | /* Switch tuner to TV */ |
763 | cx18_call_all(cx, core, s_std, cx->std); | 763 | cx18_call_all(cx, video, s_std, cx->std); |
764 | /* Select correct audio input (i.e. TV tuner or Line in) */ | 764 | /* Select correct audio input (i.e. TV tuner or Line in) */ |
765 | cx18_audio_set_io(cx); | 765 | cx18_audio_set_io(cx); |
766 | if (atomic_read(&cx->ana_capturing) > 0) { | 766 | if (atomic_read(&cx->ana_capturing) > 0) { |
diff --git a/drivers/media/pci/cx18/cx18-gpio.c b/drivers/media/pci/cx18/cx18-gpio.c index 5374aeb0cd22..38dc6b8f8254 100644 --- a/drivers/media/pci/cx18/cx18-gpio.c +++ b/drivers/media/pci/cx18/cx18-gpio.c | |||
@@ -180,7 +180,6 @@ 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, | ||
184 | }; | 183 | }; |
185 | 184 | ||
186 | static const struct v4l2_subdev_tuner_ops gpiomux_tuner_ops = { | 185 | static const struct v4l2_subdev_tuner_ops gpiomux_tuner_ops = { |
@@ -191,10 +190,15 @@ static const struct v4l2_subdev_audio_ops gpiomux_audio_ops = { | |||
191 | .s_routing = gpiomux_s_audio_routing, | 190 | .s_routing = gpiomux_s_audio_routing, |
192 | }; | 191 | }; |
193 | 192 | ||
193 | static const struct v4l2_subdev_video_ops gpiomux_video_ops = { | ||
194 | .s_std = gpiomux_s_std, | ||
195 | }; | ||
196 | |||
194 | static const struct v4l2_subdev_ops gpiomux_ops = { | 197 | static const struct v4l2_subdev_ops gpiomux_ops = { |
195 | .core = &gpiomux_core_ops, | 198 | .core = &gpiomux_core_ops, |
196 | .tuner = &gpiomux_tuner_ops, | 199 | .tuner = &gpiomux_tuner_ops, |
197 | .audio = &gpiomux_audio_ops, | 200 | .audio = &gpiomux_audio_ops, |
201 | .video = &gpiomux_video_ops, | ||
198 | }; | 202 | }; |
199 | 203 | ||
200 | /* | 204 | /* |
diff --git a/drivers/media/pci/cx18/cx18-ioctl.c b/drivers/media/pci/cx18/cx18-ioctl.c index 1110bcb14e2f..fefb2cd35838 100644 --- a/drivers/media/pci/cx18/cx18-ioctl.c +++ b/drivers/media/pci/cx18/cx18-ioctl.c | |||
@@ -602,7 +602,7 @@ int cx18_s_std(struct file *file, void *fh, v4l2_std_id std) | |||
602 | (unsigned long long) cx->std); | 602 | (unsigned long long) cx->std); |
603 | 603 | ||
604 | /* Tuner */ | 604 | /* Tuner */ |
605 | cx18_call_all(cx, core, s_std, cx->std); | 605 | cx18_call_all(cx, video, s_std, cx->std); |
606 | return 0; | 606 | return 0; |
607 | } | 607 | } |
608 | 608 | ||
diff --git a/drivers/media/pci/cx23885/cx23885-video.c b/drivers/media/pci/cx23885/cx23885-video.c index 7891f34157d1..e0a59523cf3c 100644 --- a/drivers/media/pci/cx23885/cx23885-video.c +++ b/drivers/media/pci/cx23885/cx23885-video.c | |||
@@ -326,7 +326,7 @@ int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) | |||
326 | 326 | ||
327 | dev->tvnorm = norm; | 327 | dev->tvnorm = norm; |
328 | 328 | ||
329 | call_all(dev, core, s_std, norm); | 329 | call_all(dev, video, s_std, norm); |
330 | 330 | ||
331 | return 0; | 331 | return 0; |
332 | } | 332 | } |
@@ -1589,7 +1589,7 @@ static int cx23885_set_freq_via_ops(struct cx23885_dev *dev, | |||
1589 | fe = &dev->ts1.analog_fe; | 1589 | fe = &dev->ts1.analog_fe; |
1590 | 1590 | ||
1591 | if (fe && fe->ops.tuner_ops.set_analog_params) { | 1591 | if (fe && fe->ops.tuner_ops.set_analog_params) { |
1592 | call_all(dev, core, s_std, dev->tvnorm); | 1592 | call_all(dev, video, s_std, dev->tvnorm); |
1593 | fe->ops.tuner_ops.set_analog_params(fe, ¶ms); | 1593 | fe->ops.tuner_ops.set_analog_params(fe, ¶ms); |
1594 | } | 1594 | } |
1595 | else | 1595 | else |
diff --git a/drivers/media/pci/cx88/cx88-core.c b/drivers/media/pci/cx88/cx88-core.c index ad59dc9235ae..e061c88b697e 100644 --- a/drivers/media/pci/cx88/cx88-core.c +++ b/drivers/media/pci/cx88/cx88-core.c | |||
@@ -1012,7 +1012,7 @@ int cx88_set_tvnorm(struct cx88_core *core, v4l2_std_id norm) | |||
1012 | set_tvaudio(core); | 1012 | set_tvaudio(core); |
1013 | 1013 | ||
1014 | // tell i2c chips | 1014 | // tell i2c chips |
1015 | call_all(core, core, s_std, norm); | 1015 | call_all(core, video, s_std, norm); |
1016 | 1016 | ||
1017 | /* The chroma_agc control should be inaccessible if the video format is SECAM */ | 1017 | /* The chroma_agc control should be inaccessible if the video format is SECAM */ |
1018 | v4l2_ctrl_grab(core->chroma_agc, cxiformat == VideoFormatSECAM); | 1018 | v4l2_ctrl_grab(core->chroma_agc, cxiformat == VideoFormatSECAM); |
diff --git a/drivers/media/pci/ivtv/ivtv-fileops.c b/drivers/media/pci/ivtv/ivtv-fileops.c index 9caffd8aa995..e5ff6277ca85 100644 --- a/drivers/media/pci/ivtv/ivtv-fileops.c +++ b/drivers/media/pci/ivtv/ivtv-fileops.c | |||
@@ -894,7 +894,7 @@ int ivtv_v4l2_close(struct file *filp) | |||
894 | /* Mark that the radio is no longer in use */ | 894 | /* Mark that the radio is no longer in use */ |
895 | clear_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); | 895 | clear_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); |
896 | /* Switch tuner to TV */ | 896 | /* Switch tuner to TV */ |
897 | ivtv_call_all(itv, core, s_std, itv->std); | 897 | ivtv_call_all(itv, video, s_std, itv->std); |
898 | /* Select correct audio input (i.e. TV tuner or Line in) */ | 898 | /* Select correct audio input (i.e. TV tuner or Line in) */ |
899 | ivtv_audio_set_io(itv); | 899 | ivtv_audio_set_io(itv); |
900 | if (itv->hw_flags & IVTV_HW_SAA711X) { | 900 | if (itv->hw_flags & IVTV_HW_SAA711X) { |
diff --git a/drivers/media/pci/ivtv/ivtv-ioctl.c b/drivers/media/pci/ivtv/ivtv-ioctl.c index 807b275a847e..b3667a00db3a 100644 --- a/drivers/media/pci/ivtv/ivtv-ioctl.c +++ b/drivers/media/pci/ivtv/ivtv-ioctl.c | |||
@@ -1090,7 +1090,7 @@ void ivtv_s_std_enc(struct ivtv *itv, v4l2_std_id std) | |||
1090 | itv->vbi.sliced_decoder_line_size = itv->is_60hz ? 272 : 284; | 1090 | itv->vbi.sliced_decoder_line_size = itv->is_60hz ? 272 : 284; |
1091 | 1091 | ||
1092 | /* Tuner */ | 1092 | /* Tuner */ |
1093 | ivtv_call_all(itv, core, s_std, itv->std); | 1093 | ivtv_call_all(itv, video, s_std, itv->std); |
1094 | } | 1094 | } |
1095 | 1095 | ||
1096 | void ivtv_s_std_dec(struct ivtv *itv, v4l2_std_id std) | 1096 | void ivtv_s_std_dec(struct ivtv *itv, v4l2_std_id std) |
diff --git a/drivers/media/pci/saa7134/saa7134-video.c b/drivers/media/pci/saa7134/saa7134-video.c index f1452da0a76d..d37599980768 100644 --- a/drivers/media/pci/saa7134/saa7134-video.c +++ b/drivers/media/pci/saa7134/saa7134-video.c | |||
@@ -477,10 +477,10 @@ void saa7134_set_tvnorm_hw(struct saa7134_dev *dev) | |||
477 | saa7134_set_decoder(dev); | 477 | saa7134_set_decoder(dev); |
478 | 478 | ||
479 | if (card_in(dev, dev->ctl_input).tv) | 479 | if (card_in(dev, dev->ctl_input).tv) |
480 | saa_call_all(dev, core, s_std, dev->tvnorm->id); | 480 | saa_call_all(dev, video, s_std, dev->tvnorm->id); |
481 | /* Set the correct norm for the saa6752hs. This function | 481 | /* Set the correct norm for the saa6752hs. This function |
482 | does nothing if there is no saa6752hs. */ | 482 | does nothing if there is no saa6752hs. */ |
483 | saa_call_empress(dev, core, s_std, dev->tvnorm->id); | 483 | saa_call_empress(dev, video, s_std, dev->tvnorm->id); |
484 | } | 484 | } |
485 | 485 | ||
486 | static void set_h_prescale(struct saa7134_dev *dev, int task, int prescale) | 486 | static void set_h_prescale(struct saa7134_dev *dev, int task, int prescale) |
diff --git a/drivers/media/pci/saa7146/mxb.c b/drivers/media/pci/saa7146/mxb.c index 33abe332d175..c4c8fce8f2b4 100644 --- a/drivers/media/pci/saa7146/mxb.c +++ b/drivers/media/pci/saa7146/mxb.c | |||
@@ -357,7 +357,7 @@ static int mxb_init_done(struct saa7146_dev* dev) | |||
357 | tea6420_route(mxb, 6); | 357 | tea6420_route(mxb, 6); |
358 | 358 | ||
359 | /* select video mode in saa7111a */ | 359 | /* select video mode in saa7111a */ |
360 | saa7111a_call(mxb, core, s_std, std); | 360 | saa7111a_call(mxb, video, s_std, std); |
361 | 361 | ||
362 | /* select tuner-output on saa7111a */ | 362 | /* select tuner-output on saa7111a */ |
363 | i = 0; | 363 | i = 0; |
@@ -379,8 +379,8 @@ static int mxb_init_done(struct saa7146_dev* dev) | |||
379 | /* These two gpio calls set the GPIO pins that control the tda9820 */ | 379 | /* These two gpio calls set the GPIO pins that control the tda9820 */ |
380 | saa7146_write(dev, GPIO_CTRL, 0x00404050); | 380 | saa7146_write(dev, GPIO_CTRL, 0x00404050); |
381 | saa7111a_call(mxb, core, s_gpio, 1); | 381 | saa7111a_call(mxb, core, s_gpio, 1); |
382 | saa7111a_call(mxb, core, s_std, std); | 382 | saa7111a_call(mxb, video, s_std, std); |
383 | tuner_call(mxb, core, s_std, std); | 383 | tuner_call(mxb, video, s_std, std); |
384 | 384 | ||
385 | /* switch to tuner-channel on tea6415c */ | 385 | /* switch to tuner-channel on tea6415c */ |
386 | tea6415c_call(mxb, video, s_routing, 3, 17, 0); | 386 | tea6415c_call(mxb, video, s_routing, 3, 17, 0); |
@@ -771,9 +771,9 @@ static int std_callback(struct saa7146_dev *dev, struct saa7146_standard *standa | |||
771 | /* These two gpio calls set the GPIO pins that control the tda9820 */ | 771 | /* These two gpio calls set the GPIO pins that control the tda9820 */ |
772 | saa7146_write(dev, GPIO_CTRL, 0x00404050); | 772 | saa7146_write(dev, GPIO_CTRL, 0x00404050); |
773 | saa7111a_call(mxb, core, s_gpio, 0); | 773 | saa7111a_call(mxb, core, s_gpio, 0); |
774 | saa7111a_call(mxb, core, s_std, std); | 774 | saa7111a_call(mxb, video, s_std, std); |
775 | if (mxb->cur_input == 0) | 775 | if (mxb->cur_input == 0) |
776 | tuner_call(mxb, core, s_std, std); | 776 | tuner_call(mxb, video, s_std, std); |
777 | } else { | 777 | } else { |
778 | v4l2_std_id std = V4L2_STD_PAL_BG; | 778 | v4l2_std_id std = V4L2_STD_PAL_BG; |
779 | 779 | ||
@@ -783,9 +783,9 @@ static int std_callback(struct saa7146_dev *dev, struct saa7146_standard *standa | |||
783 | /* These two gpio calls set the GPIO pins that control the tda9820 */ | 783 | /* These two gpio calls set the GPIO pins that control the tda9820 */ |
784 | saa7146_write(dev, GPIO_CTRL, 0x00404050); | 784 | saa7146_write(dev, GPIO_CTRL, 0x00404050); |
785 | saa7111a_call(mxb, core, s_gpio, 1); | 785 | saa7111a_call(mxb, core, s_gpio, 1); |
786 | saa7111a_call(mxb, core, s_std, std); | 786 | saa7111a_call(mxb, video, s_std, std); |
787 | if (mxb->cur_input == 0) | 787 | if (mxb->cur_input == 0) |
788 | tuner_call(mxb, core, s_std, std); | 788 | tuner_call(mxb, video, s_std, std); |
789 | } | 789 | } |
790 | return 0; | 790 | return 0; |
791 | } | 791 | } |
diff --git a/drivers/media/pci/sta2x11/sta2x11_vip.c b/drivers/media/pci/sta2x11/sta2x11_vip.c index 7559951b2ea4..d2abd3b5c2bf 100644 --- a/drivers/media/pci/sta2x11/sta2x11_vip.c +++ b/drivers/media/pci/sta2x11/sta2x11_vip.c | |||
@@ -444,7 +444,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id std) | |||
444 | int status; | 444 | int status; |
445 | 445 | ||
446 | if (V4L2_STD_ALL == std) { | 446 | if (V4L2_STD_ALL == std) { |
447 | v4l2_subdev_call(vip->decoder, core, s_std, std); | 447 | v4l2_subdev_call(vip->decoder, video, s_std, std); |
448 | ssleep(2); | 448 | ssleep(2); |
449 | v4l2_subdev_call(vip->decoder, video, querystd, &newstd); | 449 | v4l2_subdev_call(vip->decoder, video, querystd, &newstd); |
450 | v4l2_subdev_call(vip->decoder, video, g_input_status, &status); | 450 | v4l2_subdev_call(vip->decoder, video, g_input_status, &status); |
@@ -467,7 +467,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id std) | |||
467 | vip->format = formats_50[0]; | 467 | vip->format = formats_50[0]; |
468 | } | 468 | } |
469 | 469 | ||
470 | return v4l2_subdev_call(vip->decoder, core, s_std, std); | 470 | return v4l2_subdev_call(vip->decoder, video, s_std, std); |
471 | } | 471 | } |
472 | 472 | ||
473 | /** | 473 | /** |
diff --git a/drivers/media/pci/zoran/zoran_device.c b/drivers/media/pci/zoran/zoran_device.c index 519164c572c8..bf34b93f23ee 100644 --- a/drivers/media/pci/zoran/zoran_device.c +++ b/drivers/media/pci/zoran/zoran_device.c | |||
@@ -1572,7 +1572,7 @@ zoran_init_hardware (struct zoran *zr) | |||
1572 | } | 1572 | } |
1573 | 1573 | ||
1574 | decoder_call(zr, core, init, 0); | 1574 | decoder_call(zr, core, init, 0); |
1575 | decoder_call(zr, core, s_std, zr->norm); | 1575 | decoder_call(zr, video, s_std, zr->norm); |
1576 | decoder_call(zr, video, s_routing, | 1576 | decoder_call(zr, video, s_routing, |
1577 | zr->card.input[zr->input].muxsel, 0, 0); | 1577 | zr->card.input[zr->input].muxsel, 0, 0); |
1578 | 1578 | ||
diff --git a/drivers/media/pci/zoran/zoran_driver.c b/drivers/media/pci/zoran/zoran_driver.c index e7e9840c6c35..099d5fbebb7c 100644 --- a/drivers/media/pci/zoran/zoran_driver.c +++ b/drivers/media/pci/zoran/zoran_driver.c | |||
@@ -1469,7 +1469,7 @@ zoran_set_norm (struct zoran *zr, | |||
1469 | if (on) | 1469 | if (on) |
1470 | zr36057_overlay(zr, 0); | 1470 | zr36057_overlay(zr, 0); |
1471 | 1471 | ||
1472 | decoder_call(zr, core, s_std, norm); | 1472 | decoder_call(zr, video, s_std, norm); |
1473 | encoder_call(zr, video, s_std_output, norm); | 1473 | encoder_call(zr, video, s_std_output, norm); |
1474 | 1474 | ||
1475 | if (on) | 1475 | if (on) |
diff --git a/drivers/media/platform/blackfin/bfin_capture.c b/drivers/media/platform/blackfin/bfin_capture.c index 16f643c4aad6..cf3d94f733ff 100644 --- a/drivers/media/platform/blackfin/bfin_capture.c +++ b/drivers/media/platform/blackfin/bfin_capture.c | |||
@@ -631,7 +631,7 @@ static int bcap_s_std(struct file *file, void *priv, v4l2_std_id std) | |||
631 | if (vb2_is_busy(&bcap_dev->buffer_queue)) | 631 | if (vb2_is_busy(&bcap_dev->buffer_queue)) |
632 | return -EBUSY; | 632 | return -EBUSY; |
633 | 633 | ||
634 | ret = v4l2_subdev_call(bcap_dev->sd, core, s_std, std); | 634 | ret = v4l2_subdev_call(bcap_dev->sd, video, s_std, std); |
635 | if (ret < 0) | 635 | if (ret < 0) |
636 | return ret; | 636 | return ret; |
637 | 637 | ||
@@ -1065,7 +1065,7 @@ static int bcap_probe(struct platform_device *pdev) | |||
1065 | /* now we can probe the default state */ | 1065 | /* now we can probe the default state */ |
1066 | if (config->inputs[0].capabilities & V4L2_IN_CAP_STD) { | 1066 | if (config->inputs[0].capabilities & V4L2_IN_CAP_STD) { |
1067 | v4l2_std_id std; | 1067 | v4l2_std_id std; |
1068 | ret = v4l2_subdev_call(bcap_dev->sd, core, g_std, &std); | 1068 | ret = v4l2_subdev_call(bcap_dev->sd, video, g_std, &std); |
1069 | if (ret) { | 1069 | if (ret) { |
1070 | v4l2_err(&bcap_dev->v4l2_dev, | 1070 | v4l2_err(&bcap_dev->v4l2_dev, |
1071 | "Unable to get std\n"); | 1071 | "Unable to get std\n"); |
diff --git a/drivers/media/platform/davinci/vpfe_capture.c b/drivers/media/platform/davinci/vpfe_capture.c index ac6c8c6ac7d0..a51bda2fb637 100644 --- a/drivers/media/platform/davinci/vpfe_capture.c +++ b/drivers/media/platform/davinci/vpfe_capture.c | |||
@@ -1217,7 +1217,7 @@ static int vpfe_s_std(struct file *file, void *priv, v4l2_std_id std_id) | |||
1217 | } | 1217 | } |
1218 | 1218 | ||
1219 | ret = v4l2_device_call_until_err(&vpfe_dev->v4l2_dev, sdinfo->grp_id, | 1219 | ret = v4l2_device_call_until_err(&vpfe_dev->v4l2_dev, sdinfo->grp_id, |
1220 | core, s_std, std_id); | 1220 | video, s_std, std_id); |
1221 | if (ret < 0) { | 1221 | if (ret < 0) { |
1222 | v4l2_err(&vpfe_dev->v4l2_dev, "Failed to set standard\n"); | 1222 | v4l2_err(&vpfe_dev->v4l2_dev, "Failed to set standard\n"); |
1223 | goto unlock_out; | 1223 | goto unlock_out; |
diff --git a/drivers/media/platform/davinci/vpif_capture.c b/drivers/media/platform/davinci/vpif_capture.c index 0198a5a16ed4..f3d9d9cde98c 100644 --- a/drivers/media/platform/davinci/vpif_capture.c +++ b/drivers/media/platform/davinci/vpif_capture.c | |||
@@ -951,7 +951,7 @@ static int vpif_s_std(struct file *file, void *priv, v4l2_std_id std_id) | |||
951 | vpif_config_format(ch); | 951 | vpif_config_format(ch); |
952 | 952 | ||
953 | /* set standard in the sub device */ | 953 | /* set standard in the sub device */ |
954 | ret = v4l2_subdev_call(ch->sd, core, s_std, std_id); | 954 | ret = v4l2_subdev_call(ch->sd, video, s_std, std_id); |
955 | if (ret && ret != -ENOIOCTLCMD && ret != -ENODEV) { | 955 | if (ret && ret != -ENOIOCTLCMD && ret != -ENODEV) { |
956 | vpif_dbg(1, debug, "Failed to set standard for sub devices\n"); | 956 | vpif_dbg(1, debug, "Failed to set standard for sub devices\n"); |
957 | return ret; | 957 | return ret; |
diff --git a/drivers/media/platform/davinci/vpif_display.c b/drivers/media/platform/davinci/vpif_display.c index d6110459a203..6513f5188f65 100644 --- a/drivers/media/platform/davinci/vpif_display.c +++ b/drivers/media/platform/davinci/vpif_display.c | |||
@@ -718,7 +718,7 @@ static int vpif_s_std(struct file *file, void *priv, v4l2_std_id std_id) | |||
718 | return ret; | 718 | return ret; |
719 | } | 719 | } |
720 | 720 | ||
721 | ret = v4l2_device_call_until_err(&vpif_obj.v4l2_dev, 1, core, | 721 | ret = v4l2_device_call_until_err(&vpif_obj.v4l2_dev, 1, video, |
722 | s_std, std_id); | 722 | s_std, std_id); |
723 | if (ret < 0) | 723 | if (ret < 0) |
724 | vpif_err("Failed to set standard for sub devices\n"); | 724 | vpif_err("Failed to set standard for sub devices\n"); |
diff --git a/drivers/media/platform/fsl-viu.c b/drivers/media/platform/fsl-viu.c index dbf0ce38a8e7..d5dc198502ef 100644 --- a/drivers/media/platform/fsl-viu.c +++ b/drivers/media/platform/fsl-viu.c | |||
@@ -964,7 +964,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id id) | |||
964 | struct viu_fh *fh = priv; | 964 | struct viu_fh *fh = priv; |
965 | 965 | ||
966 | fh->dev->std = id; | 966 | fh->dev->std = id; |
967 | decoder_call(fh->dev, core, s_std, id); | 967 | decoder_call(fh->dev, video, s_std, id); |
968 | return 0; | 968 | return 0; |
969 | } | 969 | } |
970 | 970 | ||
diff --git a/drivers/media/platform/soc_camera/soc_camera.c b/drivers/media/platform/soc_camera/soc_camera.c index c8549bf3213b..7fec8cdaf095 100644 --- a/drivers/media/platform/soc_camera/soc_camera.c +++ b/drivers/media/platform/soc_camera/soc_camera.c | |||
@@ -314,7 +314,7 @@ static int soc_camera_s_std(struct file *file, void *priv, v4l2_std_id a) | |||
314 | struct soc_camera_device *icd = file->private_data; | 314 | struct soc_camera_device *icd = file->private_data; |
315 | struct v4l2_subdev *sd = soc_camera_to_subdev(icd); | 315 | struct v4l2_subdev *sd = soc_camera_to_subdev(icd); |
316 | 316 | ||
317 | return v4l2_subdev_call(sd, core, s_std, a); | 317 | return v4l2_subdev_call(sd, video, s_std, a); |
318 | } | 318 | } |
319 | 319 | ||
320 | static int soc_camera_g_std(struct file *file, void *priv, v4l2_std_id *a) | 320 | static int soc_camera_g_std(struct file *file, void *priv, v4l2_std_id *a) |
@@ -322,7 +322,7 @@ static int soc_camera_g_std(struct file *file, void *priv, v4l2_std_id *a) | |||
322 | struct soc_camera_device *icd = file->private_data; | 322 | struct soc_camera_device *icd = file->private_data; |
323 | struct v4l2_subdev *sd = soc_camera_to_subdev(icd); | 323 | struct v4l2_subdev *sd = soc_camera_to_subdev(icd); |
324 | 324 | ||
325 | return v4l2_subdev_call(sd, core, g_std, a); | 325 | return v4l2_subdev_call(sd, video, g_std, a); |
326 | } | 326 | } |
327 | 327 | ||
328 | static int soc_camera_enum_framesizes(struct file *file, void *fh, | 328 | static int soc_camera_enum_framesizes(struct file *file, void *fh, |
diff --git a/drivers/media/platform/timblogiw.c b/drivers/media/platform/timblogiw.c index fbfdadaa0803..3cb2f3564873 100644 --- a/drivers/media/platform/timblogiw.c +++ b/drivers/media/platform/timblogiw.c | |||
@@ -347,7 +347,7 @@ static int timblogiw_s_std(struct file *file, void *priv, v4l2_std_id std) | |||
347 | mutex_lock(&lw->lock); | 347 | mutex_lock(&lw->lock); |
348 | 348 | ||
349 | if (TIMBLOGIW_HAS_DECODER(lw)) | 349 | if (TIMBLOGIW_HAS_DECODER(lw)) |
350 | err = v4l2_subdev_call(lw->sd_enc, core, s_std, std); | 350 | err = v4l2_subdev_call(lw->sd_enc, video, s_std, std); |
351 | 351 | ||
352 | if (!err) | 352 | if (!err) |
353 | fh->cur_norm = timblogiw_get_norm(std); | 353 | fh->cur_norm = timblogiw_get_norm(std); |
diff --git a/drivers/media/platform/vino.c b/drivers/media/platform/vino.c index c6af974c5b45..470d35336119 100644 --- a/drivers/media/platform/vino.c +++ b/drivers/media/platform/vino.c | |||
@@ -2586,7 +2586,7 @@ static int vino_acquire_input(struct vino_channel_settings *vcs) | |||
2586 | } | 2586 | } |
2587 | if (data_norm == 3) | 2587 | if (data_norm == 3) |
2588 | data_norm = VINO_DATA_NORM_PAL; | 2588 | data_norm = VINO_DATA_NORM_PAL; |
2589 | ret = decoder_call(core, s_std, norm); | 2589 | ret = decoder_call(video, s_std, norm); |
2590 | } | 2590 | } |
2591 | 2591 | ||
2592 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); | 2592 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); |
@@ -2675,7 +2675,7 @@ static int vino_set_input(struct vino_channel_settings *vcs, int input) | |||
2675 | } | 2675 | } |
2676 | if (data_norm == 3) | 2676 | if (data_norm == 3) |
2677 | data_norm = VINO_DATA_NORM_PAL; | 2677 | data_norm = VINO_DATA_NORM_PAL; |
2678 | ret = decoder_call(core, s_std, norm); | 2678 | ret = decoder_call(video, s_std, norm); |
2679 | } | 2679 | } |
2680 | 2680 | ||
2681 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); | 2681 | spin_lock_irqsave(&vino_drvdata->input_lock, flags); |
@@ -2809,7 +2809,7 @@ static int vino_set_data_norm(struct vino_channel_settings *vcs, | |||
2809 | * as it may take a while... */ | 2809 | * as it may take a while... */ |
2810 | 2810 | ||
2811 | norm = vino_data_norms[data_norm].std; | 2811 | norm = vino_data_norms[data_norm].std; |
2812 | err = decoder_call(core, s_std, norm); | 2812 | err = decoder_call(video, s_std, norm); |
2813 | 2813 | ||
2814 | spin_lock_irqsave(&vino_drvdata->input_lock, *flags); | 2814 | spin_lock_irqsave(&vino_drvdata->input_lock, *flags); |
2815 | 2815 | ||
diff --git a/drivers/media/usb/au0828/au0828-video.c b/drivers/media/usb/au0828/au0828-video.c index f6154546b5c0..9038194513c5 100644 --- a/drivers/media/usb/au0828/au0828-video.c +++ b/drivers/media/usb/au0828/au0828-video.c | |||
@@ -1109,7 +1109,7 @@ static void au0828_init_tuner(struct au0828_dev *dev) | |||
1109 | /* If we've never sent the standard in tuner core, do so now. | 1109 | /* If we've never sent the standard in tuner core, do so now. |
1110 | We don't do this at device probe because we don't want to | 1110 | We don't do this at device probe because we don't want to |
1111 | incur the cost of a firmware load */ | 1111 | incur the cost of a firmware load */ |
1112 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, dev->std); | 1112 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, dev->std); |
1113 | v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_frequency, &f); | 1113 | v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_frequency, &f); |
1114 | i2c_gate_ctrl(dev, 0); | 1114 | i2c_gate_ctrl(dev, 0); |
1115 | } | 1115 | } |
@@ -1368,7 +1368,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) | |||
1368 | have to make the au0828 bridge adjust the size of its capture | 1368 | have to make the au0828 bridge adjust the size of its capture |
1369 | buffer, which is currently hardcoded at 720x480 */ | 1369 | buffer, which is currently hardcoded at 720x480 */ |
1370 | 1370 | ||
1371 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, norm); | 1371 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, norm); |
1372 | 1372 | ||
1373 | i2c_gate_ctrl(dev, 0); | 1373 | i2c_gate_ctrl(dev, 0); |
1374 | 1374 | ||
diff --git a/drivers/media/usb/cx231xx/cx231xx-417.c b/drivers/media/usb/cx231xx/cx231xx-417.c index 2f63029e7a36..30a0c69fb42f 100644 --- a/drivers/media/usb/cx231xx/cx231xx-417.c +++ b/drivers/media/usb/cx231xx/cx231xx-417.c | |||
@@ -1516,7 +1516,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id id) | |||
1516 | dev->ts1.height = 576; | 1516 | dev->ts1.height = 576; |
1517 | cx2341x_handler_set_50hz(&dev->mpeg_ctrl_handler, true); | 1517 | cx2341x_handler_set_50hz(&dev->mpeg_ctrl_handler, true); |
1518 | } | 1518 | } |
1519 | call_all(dev, core, s_std, dev->norm); | 1519 | call_all(dev, video, s_std, dev->norm); |
1520 | /* do mode control overrides */ | 1520 | /* do mode control overrides */ |
1521 | cx231xx_do_mode_ctrl_overrides(dev); | 1521 | cx231xx_do_mode_ctrl_overrides(dev); |
1522 | 1522 | ||
diff --git a/drivers/media/usb/cx231xx/cx231xx-video.c b/drivers/media/usb/cx231xx/cx231xx-video.c index 990626101718..1f8751379e24 100644 --- a/drivers/media/usb/cx231xx/cx231xx-video.c +++ b/drivers/media/usb/cx231xx/cx231xx-video.c | |||
@@ -1009,7 +1009,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) | |||
1009 | dev->width = 720; | 1009 | dev->width = 720; |
1010 | dev->height = (dev->norm & V4L2_STD_625_50) ? 576 : 480; | 1010 | dev->height = (dev->norm & V4L2_STD_625_50) ? 576 : 480; |
1011 | 1011 | ||
1012 | call_all(dev, core, s_std, dev->norm); | 1012 | call_all(dev, video, s_std, dev->norm); |
1013 | 1013 | ||
1014 | /* We need to reset basic properties in the decoder related to | 1014 | /* We need to reset basic properties in the decoder related to |
1015 | resolution (since a standard change effects things like the number | 1015 | resolution (since a standard change effects things like the number |
@@ -1108,7 +1108,7 @@ int cx231xx_s_input(struct file *file, void *priv, unsigned int i) | |||
1108 | /* There's a tuner, so reset the standard and put it on the | 1108 | /* There's a tuner, so reset the standard and put it on the |
1109 | last known frequency (since it was probably powered down | 1109 | last known frequency (since it was probably powered down |
1110 | until now */ | 1110 | until now */ |
1111 | call_all(dev, core, s_std, dev->norm); | 1111 | call_all(dev, video, s_std, dev->norm); |
1112 | } | 1112 | } |
1113 | 1113 | ||
1114 | return 0; | 1114 | return 0; |
@@ -2099,7 +2099,7 @@ int cx231xx_register_analog_devices(struct cx231xx *dev) | |||
2099 | /* Set the initial input */ | 2099 | /* Set the initial input */ |
2100 | video_mux(dev, dev->video_input); | 2100 | video_mux(dev, dev->video_input); |
2101 | 2101 | ||
2102 | call_all(dev, core, s_std, dev->norm); | 2102 | call_all(dev, video, s_std, dev->norm); |
2103 | 2103 | ||
2104 | v4l2_ctrl_handler_init(&dev->ctrl_handler, 10); | 2104 | v4l2_ctrl_handler_init(&dev->ctrl_handler, 10); |
2105 | v4l2_ctrl_handler_init(&dev->radio_ctrl_handler, 5); | 2105 | v4l2_ctrl_handler_init(&dev->radio_ctrl_handler, 5); |
diff --git a/drivers/media/usb/em28xx/em28xx-video.c b/drivers/media/usb/em28xx/em28xx-video.c index 0f8501f39fa7..f6b49c98e2c9 100644 --- a/drivers/media/usb/em28xx/em28xx-video.c +++ b/drivers/media/usb/em28xx/em28xx-video.c | |||
@@ -1400,7 +1400,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) | |||
1400 | &v4l2->hscale, &v4l2->vscale); | 1400 | &v4l2->hscale, &v4l2->vscale); |
1401 | 1401 | ||
1402 | em28xx_resolution_set(dev); | 1402 | em28xx_resolution_set(dev); |
1403 | v4l2_device_call_all(&v4l2->v4l2_dev, 0, core, s_std, v4l2->norm); | 1403 | v4l2_device_call_all(&v4l2->v4l2_dev, 0, video, s_std, v4l2->norm); |
1404 | 1404 | ||
1405 | return 0; | 1405 | return 0; |
1406 | } | 1406 | } |
@@ -2440,7 +2440,7 @@ static int em28xx_v4l2_init(struct em28xx *dev) | |||
2440 | 2440 | ||
2441 | /* set default norm */ | 2441 | /* set default norm */ |
2442 | v4l2->norm = V4L2_STD_PAL; | 2442 | v4l2->norm = V4L2_STD_PAL; |
2443 | v4l2_device_call_all(&v4l2->v4l2_dev, 0, core, s_std, v4l2->norm); | 2443 | v4l2_device_call_all(&v4l2->v4l2_dev, 0, video, s_std, v4l2->norm); |
2444 | v4l2->interlaced_fieldmode = EM28XX_INTERLACED_DEFAULT; | 2444 | v4l2->interlaced_fieldmode = EM28XX_INTERLACED_DEFAULT; |
2445 | 2445 | ||
2446 | /* Analog specific initialization */ | 2446 | /* Analog specific initialization */ |
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c index ea05f678b559..9623b6218214 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c | |||
@@ -2910,7 +2910,7 @@ static void pvr2_subdev_update(struct pvr2_hdw *hdw) | |||
2910 | v4l2_std_id vs; | 2910 | v4l2_std_id vs; |
2911 | vs = hdw->std_mask_cur; | 2911 | vs = hdw->std_mask_cur; |
2912 | v4l2_device_call_all(&hdw->v4l2_dev, 0, | 2912 | v4l2_device_call_all(&hdw->v4l2_dev, 0, |
2913 | core, s_std, vs); | 2913 | video, s_std, vs); |
2914 | pvr2_hdw_cx25840_vbi_hack(hdw); | 2914 | pvr2_hdw_cx25840_vbi_hack(hdw); |
2915 | } | 2915 | } |
2916 | hdw->tuner_signal_stale = !0; | 2916 | hdw->tuner_signal_stale = !0; |
diff --git a/drivers/media/usb/stk1160/stk1160-v4l.c b/drivers/media/usb/stk1160/stk1160-v4l.c index 46e8a5069b37..5461341a31cb 100644 --- a/drivers/media/usb/stk1160/stk1160-v4l.c +++ b/drivers/media/usb/stk1160/stk1160-v4l.c | |||
@@ -406,7 +406,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) | |||
406 | 406 | ||
407 | stk1160_set_std(dev); | 407 | stk1160_set_std(dev); |
408 | 408 | ||
409 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, | 409 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, |
410 | dev->norm); | 410 | dev->norm); |
411 | 411 | ||
412 | return 0; | 412 | return 0; |
@@ -682,7 +682,7 @@ int stk1160_video_register(struct stk1160 *dev) | |||
682 | dev->fmt = &format[0]; | 682 | dev->fmt = &format[0]; |
683 | stk1160_set_std(dev); | 683 | stk1160_set_std(dev); |
684 | 684 | ||
685 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, | 685 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, |
686 | dev->norm); | 686 | dev->norm); |
687 | 687 | ||
688 | video_set_drvdata(&dev->vdev, dev); | 688 | video_set_drvdata(&dev->vdev, dev); |
diff --git a/drivers/media/usb/tm6000/tm6000-cards.c b/drivers/media/usb/tm6000/tm6000-cards.c index 1ccaaddaa307..2e8c3afe4ec4 100644 --- a/drivers/media/usb/tm6000/tm6000-cards.c +++ b/drivers/media/usb/tm6000/tm6000-cards.c | |||
@@ -1120,7 +1120,7 @@ static int tm6000_init_dev(struct tm6000_core *dev) | |||
1120 | tm6000_config_tuner(dev); | 1120 | tm6000_config_tuner(dev); |
1121 | 1121 | ||
1122 | /* Set video standard */ | 1122 | /* Set video standard */ |
1123 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, dev->norm); | 1123 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, dev->norm); |
1124 | 1124 | ||
1125 | /* Set tuner frequency - also loads firmware on xc2028/xc3028 */ | 1125 | /* Set tuner frequency - also loads firmware on xc2028/xc3028 */ |
1126 | f.tuner = 0; | 1126 | f.tuner = 0; |
diff --git a/drivers/media/usb/tm6000/tm6000-video.c b/drivers/media/usb/tm6000/tm6000-video.c index cc1aa14996ff..e6b3d5d83d43 100644 --- a/drivers/media/usb/tm6000/tm6000-video.c +++ b/drivers/media/usb/tm6000/tm6000-video.c | |||
@@ -1071,7 +1071,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) | |||
1071 | if (rc < 0) | 1071 | if (rc < 0) |
1072 | return rc; | 1072 | return rc; |
1073 | 1073 | ||
1074 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, dev->norm); | 1074 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_std, dev->norm); |
1075 | 1075 | ||
1076 | return 0; | 1076 | return 0; |
1077 | } | 1077 | } |
diff --git a/drivers/media/usb/usbvision/usbvision-video.c b/drivers/media/usb/usbvision/usbvision-video.c index 5c9e3123ad2e..68bc9615660e 100644 --- a/drivers/media/usb/usbvision/usbvision-video.c +++ b/drivers/media/usb/usbvision/usbvision-video.c | |||
@@ -597,7 +597,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id id) | |||
597 | 597 | ||
598 | usbvision->tvnorm_id = id; | 598 | usbvision->tvnorm_id = id; |
599 | 599 | ||
600 | call_all(usbvision, core, s_std, usbvision->tvnorm_id); | 600 | call_all(usbvision, video, s_std, usbvision->tvnorm_id); |
601 | /* propagate the change to the decoder */ | 601 | /* propagate the change to the decoder */ |
602 | usbvision_muxsel(usbvision, usbvision->ctl_input); | 602 | usbvision_muxsel(usbvision, usbvision->ctl_input); |
603 | 603 | ||
diff --git a/drivers/media/v4l2-core/tuner-core.c b/drivers/media/v4l2-core/tuner-core.c index 20c09229a08e..06c18ba16fa0 100644 --- a/drivers/media/v4l2-core/tuner-core.c +++ b/drivers/media/v4l2-core/tuner-core.c | |||
@@ -1301,7 +1301,6 @@ static int tuner_command(struct i2c_client *client, unsigned cmd, void *arg) | |||
1301 | 1301 | ||
1302 | static const struct v4l2_subdev_core_ops tuner_core_ops = { | 1302 | static const struct v4l2_subdev_core_ops tuner_core_ops = { |
1303 | .log_status = tuner_log_status, | 1303 | .log_status = tuner_log_status, |
1304 | .s_std = tuner_s_std, | ||
1305 | .s_power = tuner_s_power, | 1304 | .s_power = tuner_s_power, |
1306 | }; | 1305 | }; |
1307 | 1306 | ||
@@ -1315,9 +1314,14 @@ static const struct v4l2_subdev_tuner_ops tuner_tuner_ops = { | |||
1315 | .s_config = tuner_s_config, | 1314 | .s_config = tuner_s_config, |
1316 | }; | 1315 | }; |
1317 | 1316 | ||
1317 | static const struct v4l2_subdev_video_ops tuner_video_ops = { | ||
1318 | .s_std = tuner_s_std, | ||
1319 | }; | ||
1320 | |||
1318 | static const struct v4l2_subdev_ops tuner_ops = { | 1321 | static const struct v4l2_subdev_ops tuner_ops = { |
1319 | .core = &tuner_core_ops, | 1322 | .core = &tuner_core_ops, |
1320 | .tuner = &tuner_tuner_ops, | 1323 | .tuner = &tuner_tuner_ops, |
1324 | .video = &tuner_video_ops, | ||
1321 | }; | 1325 | }; |
1322 | 1326 | ||
1323 | /* | 1327 | /* |
diff --git a/drivers/staging/media/davinci_vpfe/vpfe_video.c b/drivers/staging/media/davinci_vpfe/vpfe_video.c index 7b213a7f9623..425e2c849723 100644 --- a/drivers/staging/media/davinci_vpfe/vpfe_video.c +++ b/drivers/staging/media/davinci_vpfe/vpfe_video.c | |||
@@ -944,7 +944,7 @@ static int vpfe_s_std(struct file *file, void *priv, v4l2_std_id std_id) | |||
944 | goto unlock_out; | 944 | goto unlock_out; |
945 | } | 945 | } |
946 | ret = v4l2_device_call_until_err(&vpfe_dev->v4l2_dev, sdinfo->grp_id, | 946 | ret = v4l2_device_call_until_err(&vpfe_dev->v4l2_dev, sdinfo->grp_id, |
947 | core, s_std, std_id); | 947 | video, s_std, std_id); |
948 | if (ret < 0) { | 948 | if (ret < 0) { |
949 | v4l2_err(&vpfe_dev->v4l2_dev, "Failed to set standard\n"); | 949 | v4l2_err(&vpfe_dev->v4l2_dev, "Failed to set standard\n"); |
950 | video->stdid = V4L2_STD_UNKNOWN; | 950 | video->stdid = V4L2_STD_UNKNOWN; |
diff --git a/drivers/staging/media/go7007/go7007-v4l2.c b/drivers/staging/media/go7007/go7007-v4l2.c index 090b3e6e852a..da7b5493e13e 100644 --- a/drivers/staging/media/go7007/go7007-v4l2.c +++ b/drivers/staging/media/go7007/go7007-v4l2.c | |||
@@ -665,7 +665,7 @@ static int go7007_s_std(struct go7007 *go) | |||
665 | go->sensor_framerate = 30000; | 665 | go->sensor_framerate = 30000; |
666 | } | 666 | } |
667 | 667 | ||
668 | call_all(&go->v4l2_dev, core, s_std, go->std); | 668 | call_all(&go->v4l2_dev, video, s_std, go->std); |
669 | set_capture_size(go, NULL, 0); | 669 | set_capture_size(go, NULL, 0); |
670 | return 0; | 670 | return 0; |
671 | } | 671 | } |
diff --git a/drivers/staging/media/go7007/s2250-board.c b/drivers/staging/media/go7007/s2250-board.c index 696a80756691..eaa2b0990a1b 100644 --- a/drivers/staging/media/go7007/s2250-board.c +++ b/drivers/staging/media/go7007/s2250-board.c | |||
@@ -474,7 +474,6 @@ static const struct v4l2_ctrl_ops s2250_ctrl_ops = { | |||
474 | 474 | ||
475 | static const struct v4l2_subdev_core_ops s2250_core_ops = { | 475 | static const struct v4l2_subdev_core_ops s2250_core_ops = { |
476 | .log_status = s2250_log_status, | 476 | .log_status = s2250_log_status, |
477 | .s_std = s2250_s_std, | ||
478 | }; | 477 | }; |
479 | 478 | ||
480 | static const struct v4l2_subdev_audio_ops s2250_audio_ops = { | 479 | static const struct v4l2_subdev_audio_ops s2250_audio_ops = { |
@@ -482,6 +481,7 @@ static const struct v4l2_subdev_audio_ops s2250_audio_ops = { | |||
482 | }; | 481 | }; |
483 | 482 | ||
484 | static const struct v4l2_subdev_video_ops s2250_video_ops = { | 483 | static const struct v4l2_subdev_video_ops s2250_video_ops = { |
484 | .s_std = s2250_s_std, | ||
485 | .s_routing = s2250_s_video_routing, | 485 | .s_routing = s2250_s_video_routing, |
486 | .s_mbus_fmt = s2250_s_mbus_fmt, | 486 | .s_mbus_fmt = s2250_s_mbus_fmt, |
487 | }; | 487 | }; |
diff --git a/drivers/staging/media/go7007/saa7134-go7007.c b/drivers/staging/media/go7007/saa7134-go7007.c index 6e2ca338cdd9..e40f7fbfc0a5 100644 --- a/drivers/staging/media/go7007/saa7134-go7007.c +++ b/drivers/staging/media/go7007/saa7134-go7007.c | |||
@@ -434,11 +434,15 @@ static const struct v4l2_subdev_core_ops saa7134_go7007_core_ops = { | |||
434 | .g_ctrl = saa7134_go7007_g_ctrl, | 434 | .g_ctrl = saa7134_go7007_g_ctrl, |
435 | .s_ctrl = saa7134_go7007_s_ctrl, | 435 | .s_ctrl = saa7134_go7007_s_ctrl, |
436 | .queryctrl = saa7134_go7007_queryctrl, | 436 | .queryctrl = saa7134_go7007_queryctrl, |
437 | }; | ||
438 | |||
439 | static const struct v4l2_subdev_video_ops saa7134_go7007_video_ops = { | ||
437 | .s_std = saa7134_go7007_s_std, | 440 | .s_std = saa7134_go7007_s_std, |
438 | }; | 441 | }; |
439 | 442 | ||
440 | static const struct v4l2_subdev_ops saa7134_go7007_sd_ops = { | 443 | static const struct v4l2_subdev_ops saa7134_go7007_sd_ops = { |
441 | .core = &saa7134_go7007_core_ops, | 444 | .core = &saa7134_go7007_core_ops, |
445 | .video = &saa7134_go7007_video_ops, | ||
442 | }; | 446 | }; |
443 | 447 | ||
444 | /* --------------------------------------------------------------------------*/ | 448 | /* --------------------------------------------------------------------------*/ |
diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h index 9205df13f3a5..dd5bbbe2d56a 100644 --- a/include/media/v4l2-subdev.h +++ b/include/media/v4l2-subdev.h | |||
@@ -159,8 +159,6 @@ struct v4l2_subdev_core_ops { | |||
159 | int (*s_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); | 159 | int (*s_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); |
160 | int (*try_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); | 160 | int (*try_ext_ctrls)(struct v4l2_subdev *sd, struct v4l2_ext_controls *ctrls); |
161 | int (*querymenu)(struct v4l2_subdev *sd, struct v4l2_querymenu *qm); | 161 | int (*querymenu)(struct v4l2_subdev *sd, struct v4l2_querymenu *qm); |
162 | int (*g_std)(struct v4l2_subdev *sd, v4l2_std_id *norm); | ||
163 | int (*s_std)(struct v4l2_subdev *sd, v4l2_std_id norm); | ||
164 | long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg); | 162 | long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg); |
165 | #ifdef CONFIG_COMPAT | 163 | #ifdef CONFIG_COMPAT |
166 | long (*compat_ioctl32)(struct v4l2_subdev *sd, unsigned int cmd, | 164 | long (*compat_ioctl32)(struct v4l2_subdev *sd, unsigned int cmd, |
@@ -316,6 +314,8 @@ struct v4l2_mbus_frame_desc { | |||
316 | struct v4l2_subdev_video_ops { | 314 | struct v4l2_subdev_video_ops { |
317 | int (*s_routing)(struct v4l2_subdev *sd, u32 input, u32 output, u32 config); | 315 | int (*s_routing)(struct v4l2_subdev *sd, u32 input, u32 output, u32 config); |
318 | int (*s_crystal_freq)(struct v4l2_subdev *sd, u32 freq, u32 flags); | 316 | int (*s_crystal_freq)(struct v4l2_subdev *sd, u32 freq, u32 flags); |
317 | int (*g_std)(struct v4l2_subdev *sd, v4l2_std_id *norm); | ||
318 | int (*s_std)(struct v4l2_subdev *sd, v4l2_std_id norm); | ||
319 | int (*s_std_output)(struct v4l2_subdev *sd, v4l2_std_id std); | 319 | int (*s_std_output)(struct v4l2_subdev *sd, v4l2_std_id std); |
320 | int (*g_std_output)(struct v4l2_subdev *sd, v4l2_std_id *std); | 320 | int (*g_std_output)(struct v4l2_subdev *sd, v4l2_std_id *std); |
321 | int (*querystd)(struct v4l2_subdev *sd, v4l2_std_id *std); | 321 | int (*querystd)(struct v4l2_subdev *sd, v4l2_std_id *std); |
@@ -693,7 +693,7 @@ void v4l2_subdev_init(struct v4l2_subdev *sd, | |||
693 | /* Call an ops of a v4l2_subdev, doing the right checks against | 693 | /* Call an ops of a v4l2_subdev, doing the right checks against |
694 | NULL pointers. | 694 | NULL pointers. |
695 | 695 | ||
696 | Example: err = v4l2_subdev_call(sd, core, s_std, norm); | 696 | Example: err = v4l2_subdev_call(sd, video, s_std, norm); |
697 | */ | 697 | */ |
698 | #define v4l2_subdev_call(sd, o, f, args...) \ | 698 | #define v4l2_subdev_call(sd, o, f, args...) \ |
699 | (!(sd) ? -ENODEV : (((sd)->ops->o && (sd)->ops->o->f) ? \ | 699 | (!(sd) ? -ENODEV : (((sd)->ops->o && (sd)->ops->o->f) ? \ |