diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2009-04-02 10:26:22 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-04-06 20:44:27 -0400 |
commit | 5325b4272a53b43f55b82cc369c310c2fcacdca1 (patch) | |
tree | f2a1491de3d05901152e0e271c0cb5ce381884c2 /drivers/media/video/em28xx | |
parent | c0ff29150d37615ac703802ab3edc775fd402491 (diff) |
V4L/DVB (11380): v4l2-subdev: change s_routing prototype
It is no longer needed to use a struct pointer as argument, since v4l2_subdev
doesn't require that ioctl-like approach anymore. Instead just pass the input,
output and config (new!) arguments directly.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/em28xx')
-rw-r--r-- | drivers/media/video/em28xx/em28xx-core.c | 11 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx-video.c | 19 |
2 files changed, 9 insertions, 21 deletions
diff --git a/drivers/media/video/em28xx/em28xx-core.c b/drivers/media/video/em28xx/em28xx-core.c index 8f8f20e14713..192b76cdd5d7 100644 --- a/drivers/media/video/em28xx/em28xx-core.c +++ b/drivers/media/video/em28xx/em28xx-core.c | |||
@@ -1018,14 +1018,9 @@ EXPORT_SYMBOL_GPL(em28xx_init_isoc); | |||
1018 | */ | 1018 | */ |
1019 | void em28xx_wake_i2c(struct em28xx *dev) | 1019 | void em28xx_wake_i2c(struct em28xx *dev) |
1020 | { | 1020 | { |
1021 | struct v4l2_routing route; | 1021 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, reset, 0); |
1022 | int zero = 0; | 1022 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, |
1023 | 1023 | INPUT(dev->ctl_input)->vmux, 0, 0); | |
1024 | route.input = INPUT(dev->ctl_input)->vmux; | ||
1025 | route.output = 0; | ||
1026 | |||
1027 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, reset, zero); | ||
1028 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, &route); | ||
1029 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_stream, 0); | 1024 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_stream, 0); |
1030 | } | 1025 | } |
1031 | 1026 | ||
diff --git a/drivers/media/video/em28xx/em28xx-video.c b/drivers/media/video/em28xx/em28xx-video.c index 96487843a473..882796e84dbc 100644 --- a/drivers/media/video/em28xx/em28xx-video.c +++ b/drivers/media/video/em28xx/em28xx-video.c | |||
@@ -515,10 +515,6 @@ static struct videobuf_queue_ops em28xx_video_qops = { | |||
515 | 515 | ||
516 | static void video_mux(struct em28xx *dev, int index) | 516 | static void video_mux(struct em28xx *dev, int index) |
517 | { | 517 | { |
518 | struct v4l2_routing route; | ||
519 | |||
520 | route.input = INPUT(index)->vmux; | ||
521 | route.output = 0; | ||
522 | dev->ctl_input = index; | 518 | dev->ctl_input = index; |
523 | dev->ctl_ainput = INPUT(index)->amux; | 519 | dev->ctl_ainput = INPUT(index)->amux; |
524 | dev->ctl_aoutput = INPUT(index)->aout; | 520 | dev->ctl_aoutput = INPUT(index)->aout; |
@@ -526,25 +522,22 @@ static void video_mux(struct em28xx *dev, int index) | |||
526 | if (!dev->ctl_aoutput) | 522 | if (!dev->ctl_aoutput) |
527 | dev->ctl_aoutput = EM28XX_AOUT_MASTER; | 523 | dev->ctl_aoutput = EM28XX_AOUT_MASTER; |
528 | 524 | ||
529 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, &route); | 525 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, |
526 | INPUT(index)->vmux, 0, 0); | ||
530 | 527 | ||
531 | if (dev->board.has_msp34xx) { | 528 | if (dev->board.has_msp34xx) { |
532 | if (dev->i2s_speed) { | 529 | if (dev->i2s_speed) { |
533 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, | 530 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, |
534 | s_i2s_clock_freq, dev->i2s_speed); | 531 | s_i2s_clock_freq, dev->i2s_speed); |
535 | } | 532 | } |
536 | route.input = dev->ctl_ainput; | ||
537 | route.output = MSP_OUTPUT(MSP_SC_IN_DSP_SCART1); | ||
538 | |||
539 | /* Note: this is msp3400 specific */ | 533 | /* Note: this is msp3400 specific */ |
540 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, s_routing, &route); | 534 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, s_routing, |
535 | dev->ctl_ainput, MSP_OUTPUT(MSP_SC_IN_DSP_SCART1), 0); | ||
541 | } | 536 | } |
542 | 537 | ||
543 | if (dev->board.adecoder != EM28XX_NOADECODER) { | 538 | if (dev->board.adecoder != EM28XX_NOADECODER) { |
544 | route.input = dev->ctl_ainput; | 539 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, s_routing, |
545 | route.output = dev->ctl_aoutput; | 540 | dev->ctl_ainput, dev->ctl_aoutput, 0); |
546 | |||
547 | v4l2_device_call_all(&dev->v4l2_dev, 0, audio, s_routing, &route); | ||
548 | } | 541 | } |
549 | 542 | ||
550 | em28xx_audio_analog_set(dev); | 543 | em28xx_audio_analog_set(dev); |