kernel-ark/include/media
Guennadi Liakhovetski 40f075330a [media] V4L2: soc-camera: work around unbalanced calls to .s_power()
Some non soc-camera drivers, e.g. em28xx, use subdevice drivers, originally
written for soc-camera, which use soc_camera_power_on() and
soc_camera_power_off() helpers to implement their .s_power() methods. Those
helpers in turn can enable and disable a clock, if it is supplied to them
as a parameter. This works well when camera host drivers balance their
calls to subdevices' .s_power() methods. However, some such drivers fail to
do that, which leads to unbalanced calls to v4l2_clk_enable() /
v4l2_clk_disable(), which then in turn produce kernel warnings. Such
behaviour is wrong and should be fixed, however, sometimes it is difficult,
because some of those drivers are rather old and use lots of subdevices,
which all should be tested after such a fix. To support such drivers this
patch adds a work-around, allowing host drivers or platforms to set a flag,
in which case soc-camera helpers will only enable the clock, if it is
disabled, and disable it only once on the first call to .s_power(0).

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
2013-10-31 04:38:40 -02:00
..
blackfin [media] blackfin: add error frame support 2013-02-06 09:16:58 -02:00
davinci [media] media: davinci: vpif: display: add V4L2-async support 2013-07-26 13:17:15 -03:00
ad9389b.h [media] ad9389b: driver for the Analog Devices AD9389B video encoder 2012-09-13 16:15:36 -03:00
adp1653.h [media] v4l, smiapp, smiapp-pll, adp1653: Update contact information 2012-11-21 13:34:50 -02:00
adv7183.h [media] adv7183: add adv7183 decoder driver 2012-03-19 15:04:10 -03:00
adv7343.h [media] media: i2c: adv7343: make the platform data members as array 2013-07-26 13:20:36 -03:00
adv7393.h [PATCH] media: add Analog Devices ADV7393 video encoder driver 2012-07-06 15:46:17 -03:00
adv7511.h [media] adv7511: add new video encoder 2013-08-26 07:53:43 -03:00
adv7604.h [media] adv7604: Replace prim_mode by mode 2012-11-21 17:43:49 -02:00
adv7842.h [media] adv7842: add new video decoder driver 2013-08-26 07:51:44 -03:00
ak881x.h V4L/DVB: V4L: v4l2-subdev driver for AK8813 and AK8814 TV-encoders from AKM 2010-05-19 12:58:02 -03:00
as3645a.h [media] as3645a: Add driver for LED flash controller 2011-12-20 09:36:18 -02:00
atmel-isi.h [media] atmel-isi: add code to enable/disable ISI_MCK clock 2012-01-06 11:01:11 -02:00
bt819.h [media] bt819: the ioctls in the header are internal to the kernel 2010-12-29 08:17:19 -02:00
cs53l32a.h
cs5345.h
cx2341x.h [media] v4l2-ctrls: use const char * const * for the menu arrays 2010-12-30 08:02:14 -02:00
cx25840.h [media] cx25840: Add a flag to enable the CX23888 DIF to be enabled or not 2012-01-05 06:49:38 -02:00
gpio-ir-recv.h [media] media: gpio-ir-recv: add allowed_protos for platform data 2012-07-06 18:21:53 -03:00
i2c-addr.h
ir-kbd-i2c.h [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-rx51.h [media] media: rc: Introduce RX51 IR transmitter driver 2012-08-13 16:53:45 -03:00
lirc_dev.h [media] media: lirc: Allow lirc dev to talk to rc device 2013-07-31 16:30:27 -03:00
lirc.h Fix common misspellings 2011-03-31 11:26:23 -03:00
m5mols.h [media] m5mols: Remove superfluous irq field from the platform data struct 2011-09-24 00:23:03 -03:00
m52790.h
media-device.h [media] media: Change media device link_notify behaviour 2013-06-12 22:16:27 -03:00
media-devnode.h [media] media: Add 64--32 bit compat ioctl handler 2013-03-18 20:44:36 -03:00
media-entity.h [media] media: Add support for circular graph traversal 2013-08-18 07:16:48 -03:00
mmp-camera.h [media] marvell-cam: Basic working MMP camera driver 2011-07-27 17:53:01 -03:00
msp3400.h V4L/DVB (11380): v4l2-subdev: change s_routing prototype 2009-04-06 21:44:27 -03:00
mt9m032.h [media] v4l: Add driver for Micron MT9M032 camera sensor 2012-03-19 18:56:33 -03:00
mt9p031.h [media] mt9p031: Use the common clock framework 2013-04-14 16:03:22 -03:00
mt9t001.h [media] mt9t001: Implement V4L2_CID_PIXEL_RATE control 2012-05-24 09:25:15 -03:00
mt9t112.h V4L/DVB (13670): soc-camera: Add mt9t112 camera driver 2009-12-16 09:27:41 -02:00
mt9v011.h [media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg() 2011-01-19 11:45:30 -02:00
mt9v022.h [media] mt9v022: set y_skip_top field to zero as default 2012-11-22 11:36:50 -02:00
mt9v032.h [media] mt9v032: Use the common clock framework 2013-08-22 11:37:46 -03:00
noon010pc30.h [media] Add v4l2 subdev driver for NOON010PC30L image sensor 2011-03-21 20:31:40 -03:00
omap1_camera.h [media] SoC Camera: add driver for OMAP1 camera interface 2010-10-21 07:55:37 -02:00
omap3isp.h [media] omap3isp: Use the common clock framework 2013-04-14 20:21:12 -03:00
ov772x.h [media] V4L: ov772x: remove superfluous soc-camera client operations 2011-11-03 18:28:05 -02:00
ov7670.h [media] media: ov7670: Add possibility to disable pixclk during hblank 2013-02-08 14:35:06 -02:00
ov9650.h [media] V4L: Add driver for OV9650/52 image sensors 2013-02-05 15:21:15 -02: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
rc-core.h [media] media: rc: Add rc_open/close and use count to rc_dev 2013-07-31 16:28:01 -03:00
rc-map.h [media] rc: Add rc-delock-61959 2013-05-21 08:18:19 -03: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
s3c_camif.h [media] V4L: Add driver for S3C24XX/S3C64XX SoC series camera interface 2012-11-28 09:43:34 -02:00
s5c73m3.h [media] V4L: Add S5C73M3 camera driver 2013-02-05 17:39:04 -02:00
s5k4ecgx.h [media] Add v4l2 subdev driver for S5K4ECGX sensor 2012-09-26 17:32:54 -03:00
s5k6aa.h [media] v4l: Add v4l2 subdev driver for S5K6AAFX sensor 2011-11-03 18:29:11 -02:00
s5p_fimc.h [media] exynos4-is: Correct colorspace handling at FIMC-LITE 2013-06-28 15:33:27 -03:00
s5p_hdmi.h [media] media: s5p-hdmi: add HPD GPIO to platform data 2012-10-05 23:11:51 -03:00
saa6588.h [media] saa6588: rename rds.h to saa6588.h 2010-12-29 08:17:18 -02:00
saa6752hs.h
saa7115.h [media] saa7115: make multi-line comments compliant with CodingStyle 2013-08-18 08:39:24 -03:00
saa7127.h
saa7146_vv.h [media] saa7146: fix querycap, vbi/video separation and g/s_register 2012-05-14 15:00:49 -03:00
saa7146.h [media] saa7146: remove V4L2_FL_LOCK_ALL_FOPS 2012-08-09 19:43:28 -03:00
sh_mobile_ceu.h [media] V4L2: soc-camera: fix uninitialised use compiler warning 2013-06-28 14:57:18 -03:00
sh_mobile_csi2.h [media] sh_mobile_ceu_camera: add asynchronous subdevice probing support 2013-06-21 16:35:53 -03:00
sh_vou.h [media] sh_vou: Don't use module names to load I2C modules 2010-10-22 21:53:33 -02:00
si476x.h [media] v4l2: Add a V4L2 driver for SI476X MFD 2013-04-18 21:20:34 -03:00
si4713.h [media] radio-si4713: Add regulator framework support 2010-12-29 08:16:35 -02:00
sii9234.h [media] v4l: s5p-tv: add sii9234 driver 2012-02-28 18:25:46 -03:00
smiapp.h [media] smiapp: Call the clock "ext_clk" 2013-08-22 11:39:12 -03:00
soc_camera_platform.h [media] soc-camera: split struct soc_camera_link into host and subdevice parts 2013-01-05 01:38:02 -02:00
soc_camera.h [media] V4L2: soc-camera: work around unbalanced calls to .s_power() 2013-10-31 04:38:40 -02:00
soc_mediabus.h [media] soc_camera: Add RGB666 & RGB888 formats 2013-04-04 19:40:08 -03:00
sr030pc30.h [media] Add driver for Siliconfile SR030PC30 VGA camera 2010-10-21 07:55:49 -02:00
tea575x.h [media] tea575x: Move header from sound to media 2013-08-18 08:08:05 -03:00
ths7303.h [media] media: i2c: ths7303: remove init_enable option from pdata 2013-06-13 11:41:18 -03:00
timb_radio.h [media] radio-timb: Simplified platform data 2011-07-27 17:53:07 -03:00
timb_video.h [media] media: Add timberdale video-in driver 2010-12-29 08:16:46 -02:00
tuner-types.h
tuner.h [media] tuner-core: Change config from unsigned int to void * 2013-04-08 07:01:36 -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 include: Convert ethernet mac address declarations to use ETH_ALEN 2013-08-02 12:33:54 -07:00
tvp514x.h [media] media: tvp514x: remove field description 2013-02-06 08:18:49 -02:00
tvp5150.h
tvp7002.h [media] media: i2c: tvp7002: rearrange description of structure members 2013-05-27 09:29:56 -03:00
tw9910.h tw9910: use TABs for indentation 2010-02-26 15:10:59 -03:00
uda1342.h [media] uda1342: add new uda1342 audio codec driver 2013-03-24 12:24:11 -03:00
upd64031a.h
upd64083.h
v4l2-async.h [media] V4L: Merge struct v4l2_async_subdev_list with struct v4l2_subdev 2013-07-30 15:54:56 -03:00
v4l2-clk.h [media] V4L2: add a v4l2-clk helper macro to produce an I2C device ID 2013-10-31 04:33:02 -02:00
v4l2-common.h [media] v4l2-ctrls: Correct v4l2_ctrl_get_int_menu() function's return type 2013-10-17 06:09:55 -03:00
v4l2-ctrls.h [media] v4l2-ctrls: fix typo in header file media/v4l2-ctrls.h 2013-10-17 05:52:25 -03:00
v4l2-dev.h [media] v4l2: always require v4l2_dev, rename parent to dev_parent 2013-06-21 11:07:12 -03:00
v4l2-device.h [media] v4l2-core: add code to check for specific ops 2013-03-24 11:59:02 -03:00
v4l2-dv-timings.h [media] v4l2-dv-timings: add callback to handle exceptions 2013-08-24 04:30:01 -03:00
v4l2-event.h [media] V4L: Add v4l2_event_subdev_unsubscribe() helper function 2013-02-05 15:04:55 -02:00
v4l2-fh.h [media] v4l2-fh: Include linux/videodev2.h for enum v4l2_priority definition 2013-10-17 06:10:29 -03:00
v4l2-image-sizes.h [media] V4L: Add header file defining standard image sizes 2013-02-05 14:59:41 -02:00
v4l2-int-device.h [media] v4l2-int-device: remove unused chip_ident reference 2013-06-21 10:45:58 -03:00
v4l2-ioctl.h [media] v4l2-core: remove support for obsolete VIDIOC_DBG_G_CHIP_IDENT 2013-06-21 10:46:44 -03:00
v4l2-mediabus.h [media] media: OF: add "sync-on-green-active" property 2013-08-24 04:15:05 -03:00
v4l2-mem2mem.h [media] mem2mem: add support for hardware buffered queue 2013-07-26 10:00:33 -03:00
v4l2-of.h [media] V4L: Remove incorrect EXPORT_SYMBOL() usage at v4l2-of.c 2013-04-04 19:57:13 -03:00
v4l2-subdev.h [media] V4L2: add a common V4L2 subdevice platform data type 2013-10-31 04:30:12 -02:00
videobuf2-core.h [media] videobuf2: Fix vb2_write prototype 2013-09-26 07:31:06 -03:00
videobuf2-dma-contig.h [media] videobuf2: correct the #ifndef text mistake in videobuf2-dma-contig.h 2012-06-18 19:54:42 -03:00
videobuf2-dma-sg.h [media] videobuf2-dma-sg: Replace vb2_dma_sg_desc with sg_table 2013-09-26 07:33:59 -03:00
videobuf2-memops.h [media] v4l: vb2-dma-contig: let mmap method to use dma_mmap_coherent call 2012-11-25 17:20:25 -02:00
videobuf2-vmalloc.h [media] Update Pawel Osciak's e-mail address 2011-03-22 04:55:05 -03:00
videobuf-core.h [media] videobuf-core.h: remove input fields 2012-07-05 18:03:20 -03:00
videobuf-dma-contig.h [media] videobuf-dma-contig: remove support for cached mem 2013-04-25 09:50:19 -03:00
videobuf-dma-sg.h doc: fix broken references 2011-09-27 18:08:04 +02:00
videobuf-dvb.h [media] dvb: get rid of fe_ioctl_override callback 2012-08-13 16:34:03 -03:00
videobuf-vmalloc.h V4L/DVB: videobuf: add ext_lock argument to the queue init functions 2010-10-21 01:06:14 -02:00
wm8775.h [media] Add proper audio support for Nova-S Plus with wm8775 ADC 2011-03-21 20:32:19 -03:00