linux-sg2042/include/media
Andy Walls 3ccc646b56 V4L/DVB: cx25840, v4l2-subdev, ivtv, pvrusb2: Fix ivtv/cx25840 tinny audio
This change attempts to fix the ivtv tinny audio problem by keeping digitizer
to encoder audio clocks running, while disabling the video clocks as needed to
avoid unpredictable PCI bus hangs.

To accomplish this, for the cx25840 module enabling of audio streaming had
to be separated from enabling video streaming, requiring an additional
v4l2_subdev_audio_op and calls to this new op in the pvrusb2 and ivtv drivers.

The cx231xx and cx23885 driver use the cx25840 module for affecting only
video on s_stream calls, so those drivers needed no change.

The CX23418 hardware does not exhibit either the tinny audio problem nor the PCI
bus hang, so the cx18 driver did not need corresponding changes.

CX2341[56] based cards that are not using the CX2584x family of chips
do not seem to be affected by the tinny audio problem, and this change should
not affect how they are configured. It will delay their first capture by
starting by another 300 msec though.

Many thanks go to Argus <pthorn-ivtvd@styx2002.no-ip.org> and
Martin Dauskardt <martin.dauskardt@gmx.de> whose persistent testing and
investigation of this problem will hopefully fix this problem once and for all
for many ivtv users.

Reported-by: Martin Dauskardt <martin.dauskardt@gmx.de>
Reported-by: Argus <pthorn-ivtvd@styx2002.no-ip.org>
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-02-26 15:10:41 -03:00
..
davinci V4L/DVB (13464): Davinci VPFE Capture: add i2c adapter id in platform data 2009-12-05 18:42:01 -02:00
adv7343.h V4L/DVB (11743): Analog Devices ADV7343 video encoder driver 2009-06-16 18:20:59 -03:00
bt819.h V4L/DVB (11022): zoran/bt819: use new notify functionality. 2009-03-30 12:43:21 -03:00
cs53l32a.h V4L/DVB (3599): Implement new routing commands for wm8775 and cs53l32a. 2006-03-24 16:27:00 -03:00
cs5345.h V4L/DVB (6869): cs5345: new i2c driver 2008-01-25 19:04:08 -02:00
cx2341x.h V4L/DVB (10277): cx18, cx2341x: Fix bugs in cx18 AC3 control and comply with V4L2 spec 2009-03-30 12:42:25 -03:00
cx25840.h V4L/DVB (13206): cx25840: add component support 2009-12-05 18:40:52 -02:00
i2c-addr.h V4L/DVB (9940): bt832: remove this driver 2008-12-30 09:39:25 -02:00
ir-common.h V4L/DVB (13680): ir: use unsigned long instead of enum 2010-02-26 15:10:24 -03:00
ir-core.h V4L/DVB (13833): ir-core: some functions can be static 2010-02-26 15:10:25 -03:00
ir-kbd-i2c.h V4L/DVB (13680): ir: use unsigned long instead of enum 2010-02-26 15:10:24 -03:00
m52790.h V4L/DVB (6486): m52790: add new Mitsubishi A/V switch i2c driver 2008-01-25 19:01:46 -02:00
msp3400.h V4L/DVB (11380): v4l2-subdev: change s_routing prototype 2009-04-06 21:44:27 -03:00
mt9t112.h V4L/DVB (13670): soc-camera: Add mt9t112 camera driver 2009-12-16 09:27:41 -02:00
ov772x.h V4L/DVB (13650): soc-camera: switch drivers and platforms to use .priv in struct soc_camera_link 2009-12-16 09:27:19 -02:00
ovcamchip.h i2c: Cleanup the includes of <linux/i2c.h> 2007-05-01 23:26:29 +02:00
pwc-ioctl.h v4l-dvb: remove legacy checks to allow support for kernels < 2.6.10 2008-07-20 07:17:52 -03:00
radio-si4713.h V4L/DVB (12551): FM TX: si4713: Add files to add radio interface for si4713 2009-09-12 12:19:19 -03:00
rds.h include/media/: Spelling fixes 2008-02-03 17:19:47 +02:00
rj54n1cb0c.h V4L/DVB (13661): rj54n1cb0c: Add cropping, auto white balance, restrict sizes, add platform data 2009-12-16 09:27:30 -02:00
saa6752hs.h [PATCH] v4l: SAA7134 hybrid DVB 2005-07-12 16:01:05 -07:00
saa7115.h V4L/DVB (8940): saa7115: fix saa7111(a) support 2008-10-12 09:37:00 -02:00
saa7127.h V4L/DVB (3608): Implement new routing commands in saa7127.c 2006-04-02 04:54:56 -03:00
saa7146.h V4L/DVB (11377): v4l: increase version numbers of drivers converted to v4l2_subdev. 2009-04-06 21:44:26 -03:00
saa7146_vv.h V4L/DVB (13557): v4l: Remove unneeded video_device::minor usage in drivers 2009-12-16 00:17:58 -02:00
sh_mobile_ceu.h V4L/DVB (13665): sh_mobile_ceu_camera: Add support for sync polarity selection 2009-12-16 09:27:35 -02:00
si4713.h V4L/DVB (12552): FM TX: si4713: Add files to handle si4713 i2c device 2009-09-12 12:19:20 -03:00
soc_camera.h V4L/DVB (13659): soc-camera: convert to the new mediabus API 2009-12-16 09:27:29 -02:00
soc_camera_platform.h V4L/DVB (13659): soc-camera: convert to the new mediabus API 2009-12-16 09:27:29 -02:00
soc_mediabus.h V4L/DVB (13658): v4l: add a media-bus API for configuring v4l2 subdev pixel and frame formats 2009-12-16 09:27:27 -02:00
tuner-types.h V4L/DVB (7352): tuner-simple: enable digital tuning support for Philips FMD1216ME 2008-04-24 14:07:50 -03:00
tuner.h V4L/DVB (12964): tuner-core: add support for NXP TDA18271 without TDA829X demod 2009-09-19 00:16:01 -03:00
tvaudio.h V4L/DVB (11376): tvaudio.h: add static inline to retrieve the list of possible i2c addrs. 2009-04-06 21:44:25 -03:00
tveeprom.h V4L/DVB (8479): tveeprom/ivtv: fix usage of has_ir field 2008-07-26 12:54:42 -03:00
tvp514x.h V4L/DVB (12246): tvp514x: Migration to sub-device framework 2009-09-19 00:18:09 -03:00
tvp5150.h V4L/DVB (3712): Fix video input setting of em28xx, use _INT_S_VIDEO_ROUTING in tvp5150 2006-06-25 01:57:38 -03:00
tw9910.h V4L/DVB (13650): soc-camera: switch drivers and platforms to use .priv in struct soc_camera_link 2009-12-16 09:27:19 -02:00
upd64031a.h V4L/DVB (3666): Remove trailing newlines 2006-04-02 04:55:52 -03:00
upd64083.h V4L/DVB (3666): Remove trailing newlines 2006-04-02 04:55:52 -03:00
v4l2-chip-ident.h V4L/DVB (13670): soc-camera: Add mt9t112 camera driver 2009-12-16 09:27:41 -02:00
v4l2-common.h V4L/DVB (13618): v4l2: Adding helper function to get dv preset description 2009-12-16 00:18:47 -02:00
v4l2-dev.h V4L/DVB (13552): v4l: Replace video_is_unregistered with video_is_registered 2009-12-16 00:17:55 -02:00
v4l2-device.h V4L/DVB (11671): v4l2: add v4l2_device_set_name() 2009-06-16 18:20:50 -03:00
v4l2-i2c-drv.h V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this header. 2009-06-23 03:14:39 -03:00
v4l2-int-device.h V4L/DVB (10141): v4l2: debugging API changed to match against driver name instead of ID. 2009-01-02 17:11:52 -02:00
v4l2-ioctl.h V4L/DVB (13571): v4l: Adding Digital Video Timings APIs 2009-12-16 00:18:03 -02:00
v4l2-mediabus.h V4L/DVB (13658): v4l: add a media-bus API for configuring v4l2 subdev pixel and frame formats 2009-12-16 09:27:27 -02:00
v4l2-subdev.h V4L/DVB: cx25840, v4l2-subdev, ivtv, pvrusb2: Fix ivtv/cx25840 tinny audio 2010-02-26 15:10:41 -03:00
videobuf-core.h V4L/DVB (13377): make struct videobuf_queue_ops constant 2009-12-05 18:41:35 -02:00
videobuf-dma-contig.h V4L/DVB (13377): make struct videobuf_queue_ops constant 2009-12-05 18:41:35 -02:00
videobuf-dma-sg.h V4L/DVB (13377): make struct videobuf_queue_ops constant 2009-12-05 18:41:35 -02:00
videobuf-dvb.h V4L/DVB (13103): create a standard method for dvb adapter drivers to override frontend ioctls 2009-12-05 18:40:21 -02:00
videobuf-vmalloc.h V4L/DVB (13417): Fix videobuf_queue_vmalloc_init() prototype 2009-12-05 18:41:47 -02:00
wm8775.h V4L/DVB (3599): Implement new routing commands for wm8775 and cs53l32a. 2006-03-24 16:27:00 -03:00