summaryrefslogtreecommitdiffstats
path: root/drivers/media (follow)
Commit message (Collapse)AuthorAgeFilesLines
* firewire: fix use of multiple AV/C devices, allow multiple FCP listenersClemens Ladisch2009-12-291-10/+2
| | | | | | | | | | | | | | | | | | | Control of more than one AV/C device at once --- e.g. camcorders, tape decks, audio devices, TV tuners --- failed or worked only unreliably, depending on driver implementation. This affected kernelspace and userspace drivers alike and was caused by firewire-core's inability to accept multiple registrations of FCP listeners. The fix allows multiple address handlers to be registered for the FCP command and response registers. When a request for these registers is received, all handlers are invoked, and the Firewire response is generated by the core and not by any handler. The cdev API does not change, i.e., userspace is still expected to send a response for FCP requests; this response is silently ignored. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (changelog, rebased, whitespace)
* media video cx23888 driver: ported to new kfifo APIStefani Seibold2009-12-221-25/+19
| | | | | | | | | | | | | Fix the cx23888 driver to use the new kfifo API. Using kfifo_reset() may result in a possible race conditions. This patch fixes it by using a spinlock around the kfifo_reset() function. Signed-off-by: Stefani Seibold <stefani@seibold.net> Cc: Mauro Carvalho Chehab <mchehab@infradead.org> Reviewed-by: Andy Walls <awalls@radix.net> Acked-by: Andy Walls <awalls@radix.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kfifo: fix warn_unused_resultStefani Seibold2009-12-221-2/+3
| | | | | | | | | | | | | | | | | | | Fix the "ignoring return value of '...', declared with attribute warn_unused_result" compiler warning in several users of the new kfifo API. It removes the __must_check attribute from kfifo_in() and kfifo_in_locked() which must not necessary performed. Fix the allocation bug in the nozomi driver file, by moving out the kfifo_alloc from the interrupt handler into the probe function. Fix the kfifo_out() and kfifo_out_locked() users to handle a unexpected end of fifo. Signed-off-by: Stefani Seibold <stefani@seibold.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kfifo: rename kfifo_put... into kfifo_in... and kfifo_get... into kfifo_out...Stefani Seibold2009-12-221-8/+8
| | | | | | | | | | | | | | | | | | | | rename kfifo_put... into kfifo_in... to prevent miss use of old non in kernel-tree drivers ditto for kfifo_get... -> kfifo_out... Improve the prototypes of kfifo_in and kfifo_out to make the kerneldoc annotations more readable. Add mini "howto porting to the new API" in kfifo.h Signed-off-by: Stefani Seibold <stefani@seibold.net> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Acked-by: Andi Kleen <ak@linux.intel.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kfifo: move out spinlockStefani Seibold2009-12-221-15/+20
| | | | | | | | | | | | | | | Move the pointer to the spinlock out of struct kfifo. Most users in tree do not actually use a spinlock, so the few exceptions now have to call kfifo_{get,put}_locked, which takes an extra argument to a spinlock. Signed-off-by: Stefani Seibold <stefani@seibold.net> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Acked-by: Andi Kleen <ak@linux.intel.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kfifo: move struct kfifo in placeStefani Seibold2009-12-222-27/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a new generic kernel FIFO implementation. The current kernel fifo API is not very widely used, because it has to many constrains. Only 17 files in the current 2.6.31-rc5 used it. FIFO's are like list's a very basic thing and a kfifo API which handles the most use case would save a lot of development time and memory resources. I think this are the reasons why kfifo is not in use: - The API is to simple, important functions are missing - A fifo can be only allocated dynamically - There is a requirement of a spinlock whether you need it or not - There is no support for data records inside a fifo So I decided to extend the kfifo in a more generic way without blowing up the API to much. The new API has the following benefits: - Generic usage: For kernel internal use and/or device driver. - Provide an API for the most use case. - Slim API: The whole API provides 25 functions. - Linux style habit. - DECLARE_KFIFO, DEFINE_KFIFO and INIT_KFIFO Macros - Direct copy_to_user from the fifo and copy_from_user into the fifo. - The kfifo itself is an in place member of the using data structure, this save an indirection access and does not waste the kernel allocator. - Lockless access: if only one reader and one writer is active on the fifo, which is the common use case, no additional locking is necessary. - Remove spinlock - give the user the freedom of choice what kind of locking to use if one is required. - Ability to handle records. Three type of records are supported: - Variable length records between 0-255 bytes, with a record size field of 1 bytes. - Variable length records between 0-65535 bytes, with a record size field of 2 bytes. - Fixed size records, which no record size field. - Preserve memory resource. - Performance! - Easy to use! This patch: Since most users want to have the kfifo as part of another object, reorganize the code to allow including struct kfifo in another data structure. This requires changing the kfifo_alloc and kfifo_init prototypes so that we pass an existing kfifo pointer into them. This patch changes the implementation and all existing users. [akpm@linux-foundation.org: fix warning] Signed-off-by: Stefani Seibold <stefani@seibold.net> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Acked-by: Andi Kleen <ak@linux.intel.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* V4L/DVB (13698): pms: replace asm/uaccess.h to linux/uaccess.hMauro Carvalho Chehab2009-12-161-1/+1
| | | | | | | | Fix a checkpatch.pl warning: WARNING: Use #include <linux/uaccess.h> instead of <asm/uaccess.h> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13690): radio/si470x: #include <sched.h>Randy Dunlap2009-12-161-0/+1
| | | | | | | | | | | Driver needs to #include <sched.h>: drivers/media/radio/si470x/radio-si470x-common.c:452: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function) drivers/media/radio/si470x/radio-si470x-common.c:452: error: implicit declaration of function 'signal_pending' drivers/media/radio/si470x/radio-si470x-common.c:452: error: implicit declaration of function 'schedule' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13688): au8522: modify the attributes of local filter coefficientsMárton Németh2009-12-161-2/+2
| | | | | | | | | | | Make the local filter coefficients static and const. This will eliminate the following sparse warnings (see "make C=1"): * au8522_decoder.c:71:31: warning: symbol 'filter_coef' was not declared. Should it be static? * au8522_decoder.c:113:31: warning: symbol 'lpfilter_coef' was not declared. Should it be static? Signed-off-by: Márton Németh <nm127@freemail.hu> Acked-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13687): cx231xx: use NULL when pointer is neededMárton Németh2009-12-161-9/+9
| | | | | | | | | | | | | | | | | The gpio field in the cx231xx_board.input structure is a pointer. Eliminate the following sparse warnings (see "make C=1"): * cx231xx-cards.c:72:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:77:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:84:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:111:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:116:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:123:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:151:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:156:13: warning: Using plain integer as NULL pointer * cx231xx-cards.c:163:13: warning: Using plain integer as NULL pointer Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: Davinci VPFE Capture: remove unused #include <linux/version.h>Huang Weiyi2009-12-161-1/+0
| | | | | | | | | Remove unused #include <linux/version.h>('s) in drivers/media/video/davinci/vpfe_capture.c Cc: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13685): Correct code taking the size of a pointerJulia Lawall2009-12-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | sizeof(print_buf) is just the size of the pointer. Change it to the size used in the allocation of print_buf earlier in the same function. A simplified version of the semantic patch that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression *x; expression f; type T; @@ *f(...,(T)x,...) // </smpl> Cc: Janne Grunau <j@jannau.net> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13684): Fix some cut-and-paste noise in dib0090.hDuncan Gibb2009-12-161-1/+0
| | | | | | | | | Remove duplicated line on driver [mchehab@redhat.com: second hunk of the original patch were already applied by another patch - remove it] Cc: Patrick Boettcher <pboettcher@kernellabs.com> Signed-off-by: Duncan Gibb <dg@duncangibb.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13683): sanio-ms: clean up init, exit and id_tableMárton Németh2009-12-163-10/+10
| | | | | | | | | | | | | | | | | | | | | | MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Make module_init static and mark it with __init. Make module_exit static and mark it with __exit. Mark probe functions with __devinit. Make id table static and mark with __devinitconst. This will eliminate the following sparse warnings (see "make C=1"): * smsdvb.c:668:5: warning: symbol 'smsdvb_module_init' was not declared. Should it be static? * smsdvb.c:682:6: warning: symbol 'smsdvb_module_exit' was not declared. Should it be static? * smsusb.c:491:22: warning: symbol 'smsusb_id_table' was not declared. Should it be static? * smsusb.c:567:5: warning: symbol 'smsusb_module_init' was not declared. Should it be static? * smsusb.c:578:6: warning: symbol 'smsusb_module_exit' was not declared. Should it be static? * smssdio.c:341:5: warning: symbol 'smssdio_module_init' was not declared. Should it be static? * smssdio.c:353:6: warning: symbol 'smssdio_module_exit' was not declared. Should it be static? Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13682): dib8000: make some constant staticMárton Németh2009-12-161-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminate the following sparse warnings (see "make C=1"): * dib8000.c:125:15: warning: symbol 'coeff_2k_sb_1seg_dqpsk' was not declared. Should it be static? * dib8000.c:130:15: warning: symbol 'coeff_2k_sb_1seg' was not declared. Should it be static? * dib8000.c:134:15: warning: symbol 'coeff_2k_sb_3seg_0dqpsk_1dqpsk' was not declared. Should it be static? * dib8000.c:139:15: warning: symbol 'coeff_2k_sb_3seg_0dqpsk' was not declared. Should it be static? * dib8000.c:144:15: warning: symbol 'coeff_2k_sb_3seg_1dqpsk' was not declared. Should it be static? * dib8000.c:149:15: warning: symbol 'coeff_2k_sb_3seg' was not declared. Should it be static? * dib8000.c:154:15: warning: symbol 'coeff_4k_sb_1seg_dqpsk' was not declared. Should it be static? * dib8000.c:159:15: warning: symbol 'coeff_4k_sb_1seg' was not declared. Should it be static? * dib8000.c:164:15: warning: symbol 'coeff_4k_sb_3seg_0dqpsk_1dqpsk' was not declared. Should it be static? * dib8000.c:169:15: warning: symbol 'coeff_4k_sb_3seg_0dqpsk' was not declared. Should it be static? * dib8000.c:174:15: warning: symbol 'coeff_4k_sb_3seg_1dqpsk' was not declared. Should it be static? * dib8000.c:179:15: warning: symbol 'coeff_4k_sb_3seg' was not declared. Should it be static? * dib8000.c:184:15: warning: symbol 'coeff_8k_sb_1seg_dqpsk' was not declared. Should it be static? * dib8000.c:189:15: warning: symbol 'coeff_8k_sb_1seg' was not declared. Should it be static? * dib8000.c:194:15: warning: symbol 'coeff_8k_sb_3seg_0dqpsk_1dqpsk' was not declared. Should it be static? * dib8000.c:199:15: warning: symbol 'coeff_8k_sb_3seg_0dqpsk' was not declared. Should it be static? * dib8000.c:204:15: warning: symbol 'coeff_8k_sb_3seg_1dqpsk' was not declared. Should it be static? * dib8000.c:209:15: warning: symbol 'coeff_8k_sb_3seg' was not declared. Should it be static? * dib8000.c:214:15: warning: symbol 'ana_fe_coeff_3seg' was not declared. Should it be static? * dib8000.c:218:15: warning: symbol 'ana_fe_coeff_1seg' was not declared. Should it be static? * dib8000.c:222:15: warning: symbol 'ana_fe_coeff_13seg' was not declared. Should it be static? Cc: Patrick Boettcher <pboettcher@kernellabs.com> Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: lgs8gxx: Use shifts rather than multiply/divide when possibleDavid Howells2009-12-161-2/+2
| | | | | | | | | | | | | | | | | | | | | If val is a u64, then following: val *= (u64)1 << 32; val /= (u64)1 << 32; should surely be better represented as: val <<= 32; val >>= 32; Especially as, for the division, the compiler might want to actually do a division: drivers/built-in.o: In function `lgs8gxx_get_afc_phase': drivers/media/dvb/frontends/lgs8gxx.c:250: undefined reference to `__udivdi3' Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13678): Add support for yet another DvbWorld, TeVii and Prof USB ↵Igor M. Liplianin2009-12-162-149/+315
| | | | | | | | | | | devices Patch to support DvbWorld DW2104 device modifications with STV0903 and DS3000 demods as well as TeVii S660 and Prof 1100 Also replace some magic numbers with meaningfull variables. Signed-off-by: Igor M. Liplianin <liplianin@me.by> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13676): configurable IRQ mode on NetUP Dual DVB-S2 CI; IRQ from CAM ↵Abylay Ospan2009-12-161-29/+78
| | | | | | | processing (CI interface works faster) Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13674): stv090x: Add DiSEqC envelope modeOliver Endriss2009-12-162-3/+6
| | | | | | | | | Support DiSEqC envelope mode. Feature is enabled by setting config->diseqc_envelope_mode = true (default: disabled). Signed-off-by: Oliver Endriss <o.endriss@gmx.de> Acked-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13673): lnbp21: Implement 22 kHz tone controlOliver Endriss2009-12-161-1/+27
| | | | | | | | | Support 22 kHz tone control for lnbp21 and lnbh24. (Overrides the 'set_tone' hook of the frontend driver.) Signed-off-by: Oliver Endriss <o.endriss@gmx.de> Acked-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13671): sh_mobile_ceu_camera: Remove frame size page alignmentMagnus Damm2009-12-161-2/+2
| | | | | | | | | | This patch updates the SuperH Mobile CEU driver to not page align the frame size. Useful in the case of USERPTR with non-page aligned frame sizes and offsets. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13670): soc-camera: Add mt9t112 camera driverKuninori Morimoto2009-12-163-0/+1184
| | | | | | | | | create mode 100644 drivers/media/video/mt9t112.c create mode 100644 include/media/mt9t112.h Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13669): tw9910: Add sync polarity supportKuninori Morimoto2009-12-161-2/+12
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13668): tw9910: remove croppingKuninori Morimoto2009-12-161-48/+0
| | | | | | | | Cropping is used for data input, and it is not needed now Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13667): tw9910: modify output formatKuninori Morimoto2009-12-161-4/+4
| | | | | | | | | Correct tw9910 output format is Cb - Y - Cr - Y which is defined in ITU-R BT.656. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13666): tw9910: modify V/H outpit pin setting to use VALIDKuninori Morimoto2009-12-161-30/+8
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13665): sh_mobile_ceu_camera: Add support for sync polarity selectionKuninori Morimoto2009-12-161-0/+17
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13664): tw9910: use V4L2_FIELD_INTERLACED_BTKuninori Morimoto2009-12-161-4/+4
| | | | | | | | tw9910 output is interlaced and its correct order is Bottom - Top Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13663): sh_mobile_ceu: Add V4L2_FIELD_INTERLACED_BT/TB supportKuninori Morimoto2009-12-161-24/+51
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13662): mt9t031: make the use of the soc-camera client API optionalGuennadi Liakhovetski2009-12-161-82/+85
| | | | | | | | | Now that we have moved most of the functions over to the v4l2-subdev API, only quering and setting bus parameters are still performed using the legacy soc-camera client API. Make the use of this API optional for mt9t031. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13661): rj54n1cb0c: Add cropping, auto white balance, restrict ↵Guennadi Liakhovetski2009-12-161-46/+231
| | | | | | | | | | | | | | | sizes, add platform data It has been experimentally found out, that the sensor only supports up to 512x384 video output and also has some restrictions on minimum scale. We disable non-working size ranges until, maybe, someone finds out how to properly set them up. Also add cropping support, an auto white balance control, platform data to specify master clock frequency and polarity of the IOCTL pin. create mode 100644 include/media/rj54n1cb0c.h Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13659): soc-camera: convert to the new mediabus APIGuennadi Liakhovetski2009-12-1614-959/+1374
| | | | | | | | | | Convert soc-camera core and all soc-camera drivers to the new mediabus API. This also takes soc-camera client drivers one step closer to also be usable with generic v4l2-subdev host drivers. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13658): v4l: add a media-bus API for configuring v4l2 subdev pixel ↵Guennadi Liakhovetski2009-12-162-1/+158
| | | | | | | | | | | | | | | | | | | | | | | and frame formats Video subdevices, like cameras, decoders, connect to video bridges over specialised busses. Data is being transferred over these busses in various formats, which only loosely correspond to fourcc codes, describing how video data is stored in RAM. This is not a one-to-one correspondence, therefore we cannot use fourcc codes to configure subdevice output data formats. This patch adds codes for several such on-the-bus formats and an API, similar to the familiar .s_fmt(), .g_fmt(), .try_fmt(), .enum_fmt() API for configuring those codes. After all users of the old API in struct v4l2_subdev_video_ops are converted, it will be removed. Also add helper routines to support generic pass-through mode for the soc-camera framework. create mode 100644 drivers/media/video/soc_mediabus.c create mode 100644 include/media/soc_mediabus.h create mode 100644 include/media/v4l2-mediabus.h Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13657): tw9910: Add revision control to tw9910_set_hsyncKuninori Morimoto2009-12-161-5/+8
| | | | | | | | | | Bits 10-3 of hsync control are the same for Rev0 and Rev1, but only Rev1 also has bits 2-0 for hsync. Account for this difference and also fix a register name. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13656): tw9910: tw9910_set_hsync clean upKuninori Morimoto2009-12-161-21/+16
| | | | | | | | tw9910_set_hsync should use tw9910_mask_set to set bits 2-0 Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13655): tw9910: Add power controlKuninori Morimoto2009-12-161-3/+36
| | | | | | | | Power down internal blocks when not streaming. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13654): tw9910: Tri-state pins when idleKuninori Morimoto2009-12-161-13/+30
| | | | | | | | Tri-state all pins when not streaming to save power. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13653): tw9910: simplify chip ID calculationKuninori Morimoto2009-12-161-6/+7
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13652): tw9910: Add revision controlKuninori Morimoto2009-12-161-5/+11
| | | | | | | | Also fix a badly chosen macro name. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13650): soc-camera: switch drivers and platforms to use .priv in ↵Guennadi Liakhovetski2009-12-162-5/+5
| | | | | | | | | | struct soc_camera_link After this change drivers can be further extended to not fail, if they don't get platform data, but to use defaults. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13646): sh_mobile_ceu_camera: do not mark host occupied, when ↵Guennadi Liakhovetski2009-12-161-2/+5
| | | | | | | | | | | adding a client fails Currently, if resetting the host interface, when adding a new client, fails, a negative error code is returned, but the host is still marked as occupied. Fix this bug. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13645): soc-camera: fix multi-line comment coding styleGuennadi Liakhovetski2009-12-169-90/+176
| | | | | Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13644): v4l: add new v4l2-subdev sensor operations, use ↵Guennadi Liakhovetski2009-12-166-24/+73
| | | | | | | | | | | | | | g_skip_top_lines in soc-camera Introduce new v4l2-subdev sensor operations, move .enum_framesizes() and .enum_frameintervals() methods to it, add a new .g_skip_top_lines() method and switch soc-camera to use it instead of .y_skip_top soc_camera_device member, which can now be removed. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Reviewed-by: Sergio Aguirre <saaguirre@ti.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13642): tw9910: The driver can also handle revision 1 of the chipKuninori Morimoto2009-12-161-1/+2
| | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13630): Print bitrate measured by stv0900 demod in stv0900_read_statusAbylay Ospan2009-12-161-0/+13
| | | | | Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13627): gspca - zc3xx: Set the quality for sensor tas5130c.Jean-Francois Moine2009-12-161-1/+0
| | | | | | | | - setting the quality gives a better brightness Reported-by: Benoit GIRARD <benoit.girard0@gmail.com> Signed-off-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13626): gspca - many subdrivers: Fix some warnings.Jean-Francois Moine2009-12-1610-26/+33
| | | | | | | | | | | | | | | | | | | | | | | | | - gl860.c:332:15: warning: cast to restricted __le16 - gl860.c:333:15: warning: cast to restricted __le16 - gl860-mi1320.c:348:5: warning: symbol 'mi1320_camera_settings' was not declared. Should it be static? - gl860-mi2020.c:772:5: warning: symbol 'mi2020_camera_settings' was not declared. Should it be static? - m5602_ov9650.c:444:7: warning: symbol 'data' shadows an earlier one - m5602_core.c:84:5: warning: symbol 'm5602_wait_for_i2c' was not declared. Should it be static? - m5602_core.c:391:6: warning: symbol 'm5602_disconnect' was not declared. Should it be static? - m5602_s5k4aa.c:530:23: warning: dubious: x | !y - m5602_s5k4aa.c:575:23: warning: dubious: x | !y - gspca.c:1196:13: warning: potentially expensive pointer subtraction - mr97310a.c:70:5: warning: symbol 'force_sensor_type' was not declared. Should it be static? - ov519.c:2025:4: warning: do-while statement is not a compound statement - ov519.c:2063:4: warning: do-while statement is not a compound statement - ov519.c:2089:4: warning: do-while statement is not a compound statement - ov519.c:1985:34: warning: incorrect type in assignment (different base types) - sn9c20x.c:1164:5: warning: symbol 'i2c_r1' was not declared. Should it be static? - sn9c20x.c:1189:5: warning: symbol 'i2c_r2' was not declared. Should it be static? - sn9c20x.c:2237:27: warning: right shift by bigger than source value - sn9c20x.c:2237:27: warning: right shift by bigger than source value Signed-off-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13621): gspca - some subdrivers: Make device_table[]s constant.Márton Németh2009-12-166-12/+12
| | | | | | Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13618): v4l2: Adding helper function to get dv preset descriptionMuralidharan Karicheri2009-12-161-0/+47
| | | | | | | | | | This patch adds a helper function to get description of a digital video preset added by the video timing API. This will be useful for drivers implementing the above API. Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB (13617): ir: move input_register_device() to happen inside ↵Mauro Carvalho Chehab2009-12-1611-90/+47
| | | | | | | | | | | | | | | ir_input_register() We'll need to register a sysfs class for the IR devices. As such, the better is to have the input_register_device()/input_unregister_device() inside the ir register/unregister functions. Also, solves a naming problem with V4L ir_input_init() function, that were, in fact, registering a device. While here, do a few cleanups at budget-ci IR logic. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>