openwrt/staging/blogic.git
14 years agoV4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5
Mauro Carvalho Chehab [Sun, 1 Aug 2010 13:35:49 +0000 (10:35 -0300)]
V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5

Simplifies the logic for handling firmware 1.20 RC messages, fixing the
logic.

While here, I tried to use a RC-6 remote controller from my TV set, but it
didn't work with dib0700. Not sure why, but maybe this never worked.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dib0700: properly implement IR change_protocol
Mauro Carvalho Chehab [Sun, 1 Aug 2010 12:37:23 +0000 (09:37 -0300)]
V4L/DVB: dib0700: properly implement IR change_protocol

This patch implements change_protocol callback. With this change,
there's no need for an extra modprobe parameter to specify the
protocol. When a table is loaded (either from in-kernel rc-map
tables or via ir-keytable program), the driver will automatically
change the protocol, in order to work with the given table.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dib0700: break keytable into NEC and RC-5 variants
Mauro Carvalho Chehab [Sun, 1 Aug 2010 11:02:35 +0000 (08:02 -0300)]
V4L/DVB: dib0700: break keytable into NEC and RC-5 variants

Instead of having one big keytable with 2 protocols inside, break it
into two separate tables, being one for NEC and another for RC-5 variants,
and properly identify what variant should be used at the boards entries.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dib0700: avoid bad repeat
Mauro Carvalho Chehab [Sun, 1 Aug 2010 02:37:19 +0000 (23:37 -0300)]
V4L/DVB: dib0700: avoid bad repeat

a 250ms delay is too low for this device. It ends by producing false
repeat events. Increase the delay time to 500 ms to avoid troubles.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Port dib0700 to rc-core
Mauro Carvalho Chehab [Sun, 1 Aug 2010 01:56:00 +0000 (22:56 -0300)]
V4L/DVB: Port dib0700 to rc-core

Use the new rc-core handler at dvb-usb-remote for dib0700 driver.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Add a keymap file with dib0700 table
Mauro Carvalho Chehab [Sat, 31 Jul 2010 22:24:49 +0000 (19:24 -0300)]
V4L/DVB: Add a keymap file with dib0700 table

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb-usb: add support for rc-core mode
Mauro Carvalho Chehab [Sat, 31 Jul 2010 22:07:55 +0000 (19:07 -0300)]
V4L/DVB: dvb-usb: add support for rc-core mode

Allows dvb-usb drivers to use rc-core, instead of the legacy
implementation.

No driver were ported yet to rc-core, so, some small adjustments
may be needed, when starting to migrate the drivers.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb-usb: prepare drivers for using rc-core
Mauro Carvalho Chehab [Sat, 31 Jul 2010 21:04:09 +0000 (18:04 -0300)]
V4L/DVB: dvb-usb: prepare drivers for using rc-core

This is a big patch, yet trivial. It just move the RC properties
to a separate struct, in order to prepare the dvb-usb drivers to
use rc-core. There's no change on the behavior of the drivers.

With this change, it is possible to have both legacy and rc-core
based code inside the dvb-usb-remote, allowing a gradual migration
to rc-core, driver per driver.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_key
Mauro Carvalho Chehab [Sat, 31 Jul 2010 14:24:57 +0000 (11:24 -0300)]
V4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_key

dvb-usb has its own IR handle code. Now that we have a Remote
Controller subsystem, we should start using it. So, remove this
struct, in favor of the similar struct defined at the RC subsystem.

This is a big, but trivial patch. It is a 3 line delect, plus
lots of rename on several dvb-usb files.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: rj54n1cb0c: fix a comment in the driver
Guennadi Liakhovetski [Tue, 20 Jul 2010 13:08:56 +0000 (10:08 -0300)]
V4L/DVB: rj54n1cb0c: fix a comment in the driver

RJ54N1CB0C is a Sharp camera sensor.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: V4L2: sh_vou: VOU does support the full PAL resolution too
Guennadi Liakhovetski [Thu, 29 Jul 2010 07:11:42 +0000 (04:11 -0300)]
V4L/DVB: V4L2: sh_vou: VOU does support the full PAL resolution too

SH7724 datasheet specifies 480 pixels as the VOU maximum vertical resolution.
This is a bug in the datasheet, VOU also supports the full PAL resolution: 576
lines. Adjust the driver accordingly.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2
Guennadi Liakhovetski [Mon, 26 Jul 2010 15:13:34 +0000 (12:13 -0300)]
V4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2

Using CEU with CSI2 on SH-Mobile requires some special configuration of the
former. We also have to switch from calling only one subdev .s_mbus_fmt and
.try_mbus_fmt to calling all subdevices. Take care to increment CSI2 driver
use count to prevent it from unloading, while in use.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms
Guennadi Liakhovetski [Mon, 26 Jul 2010 14:12:43 +0000 (11:12 -0300)]
V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms

Some SH-Mobile SoCs implement a MIPI CSI-2 controller, that can interface to
several video clients and send data to the CEU or to the Image Signal
Processor.  This patch implements a v4l2-subdevice driver for CSI-2 to be used
within the soc-camera framework, implementing the second subdevice in addition
to the actual video clients.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications
Guennadi Liakhovetski [Mon, 26 Jul 2010 14:37:13 +0000 (11:37 -0300)]
V4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: V4L2: mediabus: add 12-bit Bayer and YUV420 pixel formats
Guennadi Liakhovetski [Mon, 26 Jul 2010 13:41:55 +0000 (10:41 -0300)]
V4L/DVB: V4L2: mediabus: add 12-bit Bayer and YUV420 pixel formats

These formats belong to the standard format set, defined by the MIPI CSI-2
specification.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: mediabus: fix ambiguous pixel code names
Guennadi Liakhovetski [Thu, 22 Jul 2010 19:52:51 +0000 (16:52 -0300)]
V4L/DVB: mediabus: fix ambiguous pixel code names

Endianness notation is meaningless for 8 bit YUYV codes. Switch pixel code
names to explicitly state the order of colour components in the data
stream.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: CodingStyle cleanups
Mauro Carvalho Chehab [Tue, 27 Jul 2010 21:44:45 +0000 (18:44 -0300)]
V4L/DVB: staging/lirc: CodingStyle cleanups

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: wire up Kconfig and Makefile bits
Jarod Wilson [Mon, 26 Jul 2010 23:34:23 +0000 (20:34 -0300)]
V4L/DVB: staging/lirc: wire up Kconfig and Makefile bits

Make the bits under staging/lirc/ buildable, and add a TODO note.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_zilog driver
Jarod Wilson [Mon, 26 Jul 2010 23:34:04 +0000 (20:34 -0300)]
V4L/DVB: staging/lirc: add lirc_zilog driver

Commonly found on several Hauppauge video capture devices.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_ttusbir driver
Jarod Wilson [Mon, 26 Jul 2010 23:33:09 +0000 (20:33 -0300)]
V4L/DVB: staging/lirc: add lirc_ttusbir driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_streamzap driver
Jarod Wilson [Mon, 26 Jul 2010 23:32:49 +0000 (20:32 -0300)]
V4L/DVB: staging/lirc: add lirc_streamzap driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_sir driver
Jarod Wilson [Mon, 26 Jul 2010 23:32:03 +0000 (20:32 -0300)]
V4L/DVB: staging/lirc: add lirc_sir driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_serial driver
Jarod Wilson [Mon, 26 Jul 2010 23:31:45 +0000 (20:31 -0300)]
V4L/DVB: staging/lirc: add lirc_serial driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_sasem driver
Jarod Wilson [Mon, 26 Jul 2010 23:31:11 +0000 (20:31 -0300)]
V4L/DVB: staging/lirc: add lirc_sasem driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_parallel driver
Jarod Wilson [Mon, 26 Jul 2010 23:30:51 +0000 (20:30 -0300)]
V4L/DVB: staging/lirc: add lirc_parallel driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_it87 driver
Jarod Wilson [Mon, 26 Jul 2010 23:30:02 +0000 (20:30 -0300)]
V4L/DVB: staging/lirc: add lirc_it87 driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_ite8709 driver
Jarod Wilson [Mon, 26 Jul 2010 23:30:25 +0000 (20:30 -0300)]
V4L/DVB: staging/lirc: add lirc_ite8709 driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_imon driver
Jarod Wilson [Mon, 26 Jul 2010 23:29:43 +0000 (20:29 -0300)]
V4L/DVB: staging/lirc: add lirc_imon driver

Nb: this is a very trimmed-down lirc_imon, which only supports the
oldest generation of imon devices that don't do onboard signal decoding
like the most recent generation imon devices -- those are now supported
by the ir-core imon driver.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_igorplugusb driver
Jarod Wilson [Mon, 26 Jul 2010 23:29:00 +0000 (20:29 -0300)]
V4L/DVB: staging/lirc: add lirc_igorplugusb driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging: Add an specific TODO note for lirc_i2c
Mauro Carvalho Chehab [Tue, 27 Jul 2010 20:56:24 +0000 (17:56 -0300)]
V4L/DVB: staging: Add an specific TODO note for lirc_i2c

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_i2c driver
Jarod Wilson [Mon, 26 Jul 2010 23:28:37 +0000 (20:28 -0300)]
V4L/DVB: staging/lirc: add lirc_i2c driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_ene0100 driver
Jarod Wilson [Mon, 26 Jul 2010 23:27:55 +0000 (20:27 -0300)]
V4L/DVB: staging/lirc: add lirc_ene0100 driver

[mchehab@redhat.com: fixed a few WARNING: please, no space before tabs]
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: staging/lirc: add lirc_bt829 driver
Jarod Wilson [Mon, 26 Jul 2010 23:26:53 +0000 (20:26 -0300)]
V4L/DVB: staging/lirc: add lirc_bt829 driver

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9005: use generic_bulk_ctrl_endpoint_response
Michael Krufky [Mon, 21 Jun 2010 04:49:42 +0000 (01:49 -0300)]
V4L/DVB: af9005: use generic_bulk_ctrl_endpoint_response

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Acked-by: Luca Olivetti <luca@ventoso.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb: add support for kworld 340u and ub435-q to em28xx-dvb
Jarod Wilson [Sun, 7 Mar 2010 20:55:43 +0000 (17:55 -0300)]
V4L/DVB: dvb: add support for kworld 340u and ub435-q to em28xx-dvb

This adds support for the KWorld PlusTV 340U and KWorld UB345-Q ATSC
sticks, which are really the same device. The sticks have an eMPIA
em2870 usb bridge chipset, an LG Electronics LGDT3304 ATSC/QAM
demodulator and an NXP TDA18271HD tuner -- early versions of the 340U
have a a TDA18271HD/C1, later models and the UB435-Q have a C2.

The stick has been tested succesfully with both VSB_8 and QAM_256 signals.
Its using lgdt3304 support added to the lgdt3305 driver by a prior patch,
rather than the current lgdt3304 driver, as its severely lacking in
functionality by comparison (see said patch for details).

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: DVB: fix dvr node refcounting
Jiri Slaby [Sun, 18 Jul 2010 18:34:18 +0000 (15:34 -0300)]
V4L/DVB: DVB: fix dvr node refcounting

In dvb_dvr_release, there is a test dvbdev->users==-1, but users are
never negative. This error results in hung tasks:
  task                        PC stack   pid father
bash          D ffffffffa000c948     0  3264   3170 0x00000000
 ffff88003aec5ce8 0000000000000086 0000000000011f80 0000000000011f80
 ffff88003aec5fd8 ffff88003aec5fd8 ffff88003b848670 0000000000011f80
 ffff88003aec5fd8 0000000000011f80 ffff88003e02a030 ffff88003b848670
Call Trace:
 [<ffffffff813dd4a5>] dvb_dmxdev_release+0xc5/0x130
 [<ffffffff8107b750>] ? autoremove_wake_function+0x0/0x40
 [<ffffffffa00013a2>] dvb_usb_adapter_dvb_exit+0x42/0x70 [dvb_usb]
 [<ffffffffa0000525>] dvb_usb_exit+0x55/0xd0 [dvb_usb]
 [<ffffffffa00005ee>] dvb_usb_device_exit+0x4e/0x70 [dvb_usb]
 [<ffffffffa000a065>] af9015_usb_device_exit+0x55/0x60 [dvb_usb_af9015]
 [<ffffffff813a3f05>] usb_unbind_interface+0x55/0x1a0
 [<ffffffff81316000>] __device_release_driver+0x70/0xe0
...

So check against 1 there instead.

BTW why's the TODO there? Adding TODOs to the code without
descriptions is like adding nothing.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h
Laurent Pinchart [Sat, 10 Jul 2010 18:03:20 +0000 (15:03 -0300)]
V4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h

The UVC host and gadget drivers both define constants and structures in
private header files. Move all those definitions to linux/usb/video.h
where they can be shared by the two drivers (and be available for
userspace applications).

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9013: fix comments
Antti Palosaari [Fri, 18 Jun 2010 00:19:13 +0000 (21:19 -0300)]
V4L/DVB: af9013: fix comments

Fix comments. It is demodulator driver not DVB USB -bridge.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9013: output fw version as four digit long
Antti Palosaari [Fri, 18 Jun 2010 00:16:12 +0000 (21:16 -0300)]
V4L/DVB: af9013: output fw version as four digit long

Firmware version is four digit long. Print all four digits instead of
three digits used earlier.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9013: af9013_read_status() refactoring
Antti Palosaari [Thu, 17 Jun 2010 23:56:27 +0000 (20:56 -0300)]
V4L/DVB: af9013: af9013_read_status() refactoring

Function af9013_read_status() refactoring. Read lock bits in different
order to save count of register reads.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9013: program tuner before demodulator
Antti Palosaari [Wed, 16 Jun 2010 19:43:40 +0000 (16:43 -0300)]
V4L/DVB: af9013: program tuner before demodulator

Program tuner before demodulator in case of channel set. Earlier it was
programmed during demodulator programming. This seems to resolve weird
error where demodulator misses sometimes ability to gain lock.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9015: support for AverMedia AVerTV Volar M (A815Mac)
Antti Palosaari [Sun, 23 May 2010 21:26:37 +0000 (18:26 -0300)]
V4L/DVB: af9015: support for AverMedia AVerTV Volar M (A815Mac)

Add USB ID 07ca:815a for AverMedia AVerTV Volar M (A815Mac).

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: get_dvb_firmware: update af9015
Antti Palosaari [Fri, 14 May 2010 18:24:28 +0000 (15:24 -0300)]
V4L/DVB: get_dvb_firmware: update af9015

New driver contains new firmware 5.1.0.0. Fix script to get that.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: af9013: add support for firmware 5.1.0.0
Antti Palosaari [Fri, 14 May 2010 16:59:50 +0000 (13:59 -0300)]
V4L/DVB: af9013: add support for firmware 5.1.0.0

Add support for new firmware version 5.1.0.0.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - vc032x: Move the first VC0321 settings to sd_init()
Jean-François Moine [Wed, 14 Jul 2010 10:09:50 +0000 (07:09 -0300)]
V4L/DVB: gspca - vc032x: Move the first VC0321 settings to sd_init()

The first VC0321 settings were done at webcam connection only. They must also
be done on resume after suspend.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - sonixj: Do the audio input work for webcams with a microphone
Jean-François Moine [Wed, 14 Jul 2010 09:33:51 +0000 (06:33 -0300)]
V4L/DVB: gspca - sonixj: Do the audio input work for webcams with a microphone

The bit 0x04 of the bridge register 02 (GPIO) is used for audio connection
in webcams containing the bridge SN9C105. This patch sets it correctly,
according to the presence of an audio device.

Tested-by: Kyle Baker <kyleabaker@gmail.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Handle the audio device
Jean-François Moine [Wed, 14 Jul 2010 09:30:18 +0000 (06:30 -0300)]
V4L/DVB: gspca - main: Handle the audio device

When there is an audio device, use a lower alternate setting.
This patch does not fix correctly all audio and bandwidth problems.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Adjust and remove some debug messages
Jean-François Moine [Wed, 14 Jul 2010 09:26:54 +0000 (06:26 -0300)]
V4L/DVB: gspca - main: Adjust and remove some debug messages

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Remove useless audio ioctl's
Jean-François Moine [Wed, 14 Jul 2010 09:25:16 +0000 (06:25 -0300)]
V4L/DVB: gspca - main: Remove useless audio ioctl's

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Fix a compilation warning
Jean-François Moine [Wed, 14 Jul 2010 09:21:16 +0000 (06:21 -0300)]
V4L/DVB: gspca - main: Fix a compilation warning

Reported-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: au0828: move dereference below sanity checks
Dan Carpenter [Fri, 23 Jul 2010 10:09:20 +0000 (07:09 -0300)]
V4L/DVB: au0828: move dereference below sanity checks

This function has sanity checks to make sure that "dev" is non-null.  I
moved the dereference down below the checks.  In the current code "dev"
is never actually null.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Acked-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: media/IR: testing the wrong variable
Dan Carpenter [Fri, 23 Jul 2010 10:08:26 +0000 (07:08 -0300)]
V4L/DVB: media/IR: testing the wrong variable

There is a typo here.  We meant to test "rbuf" instead of "drv".  We
already tested "drv" earlier.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Acked-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/video/omap2/displays: add missing mutex_unlock
Julia Lawall [Tue, 20 Jul 2010 22:22:44 +0000 (19:22 -0300)]
V4L/DVB: drivers/video/omap2/displays: add missing mutex_unlock

Add a mutex_unlock missing on the error paths.  The use of the mutex is
balanced elsewhere in the file.

The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression E1;
@@

* mutex_lock(E1,...);
  <+... when != E1
  if (...) {
    ... when != E1
*   return ...;
  }
  ...+>
* mutex_unlock(E1,...);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Mike Isely <isely@pobox.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: "dib3000mc: reduce large stack usage" fix
Andrew Morton [Tue, 20 Jul 2010 22:22:42 +0000 (19:22 -0300)]
V4L/DVB: "dib3000mc: reduce large stack usage" fix

s/ENODEV/ENOMEM, per Andreas.

This fix got lost when someone merged "dib3000mc: reduce large stack
usage".  Please don't lose fixes.

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: VIDEO: ivtvfb, remove unneeded NULL test
Jiri Slaby [Mon, 19 Jul 2010 17:39:34 +0000 (14:39 -0300)]
V4L/DVB: VIDEO: ivtvfb, remove unneeded NULL test

Stanse found that in ivtvfb_callback_cleanup and ivtvfb_callback_init
there are unneeded tests for itv being NULL. But itv is initialized
as container_of with non-zero offset in those functions, so it is
never NULL (even if v4l2_dev is). This was found because itv is
dereferenced earlier than the test.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Reviewed-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/lirc: use memdup_user instead of copy_from_user
Jarod Wilson [Fri, 16 Jul 2010 21:29:54 +0000 (18:29 -0300)]
V4L/DVB: IR/lirc: use memdup_user instead of copy_from_user

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/lirc: make lirc userspace and staging modules buildable
Jarod Wilson [Fri, 16 Jul 2010 17:25:33 +0000 (14:25 -0300)]
V4L/DVB: IR/lirc: make lirc userspace and staging modules buildable

The lirc userspace needs all the current ioctls defined, and we need to
put the header files in places out-of-tree and/or staging lirc drivers
(which I plan to prep soon) can easily build with. I've actually tested this
in a tree w/all the lirc drivers queued up to be submitted for staging. I'm
also reasonably sure that Andy Walls is going to need most of the ioctls
anyway for his cx23888 IR driver work.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video: Remove dead CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE
Christian Dietrich [Wed, 14 Jul 2010 13:21:30 +0000 (10:21 -0300)]
V4L/DVB: drivers/media/video: Remove dead CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE

CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE doesn't exist in Kconfig and is never defined anywhere
else, therefore removing all references for it from the source code.

Signed-off-by: Christian Dietrich <qy03fugy@stud.informatik.uni-erlangen.de>
Acked-by: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media: Remove unnecessary casts of private_data
Joe Perches [Mon, 12 Jul 2010 20:50:03 +0000 (17:50 -0300)]
V4L/DVB: drivers/media: Remove unnecessary casts of private_data

Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Jarod Wilson <jarod@redhat.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - sq930x: Add some comments for sensor mt9v111
Jean-François Moine [Tue, 6 Jul 2010 08:14:57 +0000 (05:14 -0300)]
V4L/DVB: gspca - sq930x: Add some comments for sensor mt9v111

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - vc032x: Add trace of USB exchanges
Jean-François Moine [Tue, 6 Jul 2010 08:05:05 +0000 (05:05 -0300)]
V4L/DVB: gspca - vc032x: Add trace of USB exchanges

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - vc032x: Stop the USB exchanges on error
Jean-François Moine [Tue, 6 Jul 2010 08:00:07 +0000 (05:00 -0300)]
V4L/DVB: gspca - vc032x: Stop the USB exchanges on error

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - vc032x: Add some comments
Jean-François Moine [Tue, 6 Jul 2010 07:44:54 +0000 (04:44 -0300)]
V4L/DVB: gspca - vc032x: Add some comments

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Don't use the frame buffer flags
Jean-François Moine [Tue, 6 Jul 2010 07:32:27 +0000 (04:32 -0300)]
V4L/DVB: gspca - main: Don't use the frame buffer flags

This patch fixes possible race conditions in queue management with SMP:
when a frame was completed, the irq function tried to use the next frame
buffer. At this time, it was possible that the application on an other
processor updated the frame pointer, making the image to point to a bad
buffer.
The patch contains two main changes:
- the image transfer uses the queue indexes which are protected against
  simultaneous memory access,
- the image pointer which is used for image concatenation is only set at
  interrupt level.
Some subdrivers which used the image pointer have been updated.

Reported-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Possible race condition in queue management
Jean-François Moine [Tue, 6 Jul 2010 07:16:40 +0000 (04:16 -0300)]
V4L/DVB: gspca - main: Possible race condition in queue management

The problem may occur with SMP:
- a frame is completed at interrupt level (in gspca_frame_add with
  packet_type == LAST_PACKET,
- just after clearing the bit V4L2_BUF_FLAG_QUEUED and before setting
  the bit V4L2_BUF_FLAG_DONE, on the other processor, the application
  tries to requeue the same frame buffer,
- then, the qbuf function succeeds because ALL_FLAGS are not set.
The fix sets and resets the two flags in one instruction.

Reported-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: remove obsolete conditionalizing on DVB_DIBCOM_DEBUG
Christoph Egger [Fri, 15 Jan 2010 11:49:41 +0000 (08:49 -0300)]
V4L/DVB: remove obsolete conditionalizing on DVB_DIBCOM_DEBUG

As pointed by Christoph Egger <siccegge@stud.informatik.uni-erlangen.de>,

The config Option DVB_DIBCOM_DEBUG was dropped while removing the dibusb
driver in favor of dvb-usb in 2005. However it remaind existant at some
places of the kernel config.

Instead of just removing the debug capability, the better is to just remove
the bad dependency, making the modprobe function always visible.

Thanks-to: Christoph Egger <siccegge@stud.informatik.uni-erlangen.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgs8gxx: remove firmware for lgs8g75
Ben Hutchings [Sun, 1 Nov 2009 02:14:35 +0000 (23:14 -0300)]
V4L/DVB: lgs8gxx: remove firmware for lgs8g75

The recently added support for lgs8g75 included some 8051 machine code
without accompanying source code.  Replace this with use of the
firmware loader.

Compile-tested only.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: si470x: -EINVAL overwritten in si470x_vidioc_s_tuner()
Tobias Lorenz [Sat, 10 Jul 2010 16:01:33 +0000 (13:01 -0300)]
V4L/DVB:  si470x: -EINVAL overwritten in si470x_vidioc_s_tuner()

This patch to the si470x_vidioc_s_tuner function was developed in
cooperation with Roel Kluin <roel.kluin@gmail.com>. It sets the default
retval to 0 instead of -EINVAL, identical to what is done in all other
set/get functions of v4l2_ioctl_ops. This is just as cosmetic change, as
retval is directly overwritten by the si470x_disconnect_check() anyway.

Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: more streamlining of device init
Jarod Wilson [Thu, 8 Jul 2010 15:38:57 +0000 (12:38 -0300)]
V4L/DVB: IR/mceusb: more streamlining of device init

Spent a while last night getting device initialization packet captures
under Windows for all generations of devices. There are a few places
where we were doing things differently, and few things we were doing
that we don't need to do, particularly on gen3 hardware, and I *think*
one of those things is what was locking up my pinnacle hw from time to
time -- at least, its been perfectly well behaved every time its been
plugged in since making this change.

First up, we're adding a bit more to the gen1 init routine here. Its
not absolutely necessary, the hardware works the same both with and
without it, but I'd like to be consistent w/Windows here.

Second, DEVICE_RESET is never called when initializing either of my
gen3 devices, its only called for gen1 and gen2. The bits in the gen3
init after removing that, are safe (and interesting) to run on all
hardware, so there's no more gen3-specific init done, there's instead
a generic mceusb_get_parameters() that is run for all hardware.

Third, the gen3 flag isn't needed. We only care if hardware is gen3
during probe, so I've dropped that from the device flags struct.

Successfully tested on all three generations of mceusb hardware.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: remove unused vars from gen1 init
Mauro Carvalho Chehab [Sat, 10 Jul 2010 14:19:42 +0000 (11:19 -0300)]
V4L/DVB: IR/mceusb: remove unused vars from gen1 init

Prior init unification/simplification patch made these unused, forgot
to remove them, so this silences:

drivers/media/IR/mceusb.c: In function ‘mceusb_gen1_init’:
drivers/media/IR/mceusb.c:769: warning: unused variable ‘partial’
drivers/media/IR/mceusb.c:768: warning: unused variable ‘i’

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lirc: use unlocked_ioctl
Arnd Bergmann [Mon, 2 Aug 2010 18:43:35 +0000 (15:43 -0300)]
V4L/DVB: lirc: use unlocked_ioctl

New code should not rely on the big kernel lock,
so use the unlocked_ioctl file operation in lirc.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Tested-by: Jarod Wilson <jarod@redhat.com>
Acked-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR: jvc-decoder needs BITREVERSE
Randy Dunlap [Wed, 7 Jul 2010 23:41:15 +0000 (20:41 -0300)]
V4L/DVB: IR: jvc-decoder needs BITREVERSE

ir-jvc-decoder uses bitreverse interfaces, so it should select
BITREVERSE.

ir-jvc-decoder.c:(.text+0x550bc): undefined reference to `byte_rev_table'
ir-jvc-decoder.c:(.text+0x550c6): undefined reference to `byte_rev_table'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/lirc_dev: fix locking in lirc_dev_fop_read
Jarod Wilson [Wed, 7 Jul 2010 14:29:44 +0000 (11:29 -0300)]
V4L/DVB: IR/lirc_dev: fix locking in lirc_dev_fop_read

On Wed, Jul 07, 2010 at 02:52:58PM +0200, Jiri Slaby wrote:
> Hi,
>
> stanse found a locking error in lirc_dev_fop_read:
> if (mutex_lock_interruptible(&ir->irctl_lock))
>   return -ERESTARTSYS;
> ...
> while (written < length && ret == 0) {
>   if (mutex_lock_interruptible(&ir->irctl_lock)) {    #1
>     ret = -ERESTARTSYS;
>     break;
>   }
>   ...
> }
>
> remove_wait_queue(&ir->buf->wait_poll, &wait);
> set_current_state(TASK_RUNNING);
> mutex_unlock(&ir->irctl_lock);                        #2
>
> If lock at #1 fails, it beaks out of the loop, with the lock unlocked,
> but there is another "unlock" at #2.

This should do the trick. Completely untested beyond compiling, but its
not exactly a complicated fix, and in practice, I'm not aware of anyone
ever actually tripping that locking bug, so there's zero functional change
in typical use here.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Retrieve firmware for az6027
Renzo Dani [Tue, 6 Jul 2010 10:23:33 +0000 (07:23 -0300)]
V4L/DVB: Retrieve firmware for az6027

Signed-off-by: Renzo Dani <arons7@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: v4l2-dev: fix memory leak
Anatolij Gustschin [Thu, 1 Jul 2010 17:21:39 +0000 (14:21 -0300)]
V4L/DVB: v4l2-dev: fix memory leak

Since commit b4028437876866aba4747a655ede00f892089e14
the 'driver_data' field resides in device's struct device_private
which may be allocated by dev_set_drvdata() if device_private
struct was not allocated previously.

dev_set_drvdata() is used in video_set_drvdata() to set
the driver's private data pointer in v4l2 drivers. Setting
the private data _before_ registering the v4l2 device results
in a memory leak since __video_register_device() also calls
video_set_drvdata(), but after zeroing the device structure.
Thus, the reference to the previously allocated device_private
struct goes lost and a new device_private will be allocated.

All v4l drivers which call video_set_drvdata() _before_
calling video_register_device() are affected. The patch fixes
__video_register_device() to preserve previously allocated
device_private reference.

Caught by kmemleak.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb_frontend: fix typos in comments and one function
Guillaume Audirac [Thu, 6 May 2010 12:30:25 +0000 (09:30 -0300)]
V4L/DVB: dvb_frontend: fix typos in comments and one function

Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr>
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tda10048: clear the uncorrected packet registers when saturated
Guillaume Audirac [Thu, 6 May 2010 12:07:04 +0000 (09:07 -0300)]
V4L/DVB: tda10048: clear the uncorrected packet registers when saturated

Use the register CLUNC to reset the CPTU registers (LSB & MSB) when they
saturate at 0xFFFF. Fixes as well a few register typos.

Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr>
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tda10048: fix bitmask for the transmission mode
Guillaume Audirac [Thu, 6 May 2010 12:04:56 +0000 (09:04 -0300)]
V4L/DVB: tda10048: fix bitmask for the transmission mode

Add a missing bit for reading the transmission mode (2K/8K) in
tda10048_get_tps

Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr>
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tda10048: fix the uncomplete function tda10048_read_ber
Guillaume Audirac [Wed, 5 May 2010 11:34:57 +0000 (08:34 -0300)]
V4L/DVB: tda10048: fix the uncomplete function tda10048_read_ber

Completes the bit-error-rate read function with the CBER register (before
Viterbi decoder). The returned value is 1e8*actual_ber to be positive.
Also includes some typo mistakes.

Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr>
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)
Kusanagi Kouichi [Sat, 6 Feb 2010 05:45:33 +0000 (02:45 -0300)]
V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)

Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: unify and simplify different gen device init
Jarod Wilson [Sun, 4 Jul 2010 01:42:14 +0000 (22:42 -0300)]
V4L/DVB: IR/mceusb: unify and simplify different gen device init

Started out as an effort to try to tackle the last remaining issue I'm
having with this damned pinnacle device getting wedged the first time
its plugged in after an indeterminate length of not being plugged in.
Didn't get that solved yet, but did streamline the init code a bit more
and remove some superfluous gunk. Nukes a completely unneeded call to
usb_device_init() and several lines of overly complex crap in the gen1
device init path.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: v4l: Add MPC5121e VIU video capture driver
Anatolij Gustschin [Fri, 2 Jul 2010 13:10:09 +0000 (10:10 -0300)]
V4L/DVB: v4l: Add MPC5121e VIU video capture driver

Adds support for Video-In (VIU) unit of Freescale
MPC5121e. The driver supports RGB888/RGB565 formats,
capture and overlay on MPC5121e DIU frame buffer.

Signed-off-by: Hongjun Chen <hong-jun.chen@freescale.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Add support for Manta MM-353 Plako
Laurent Pinchart [Fri, 25 Jun 2010 07:58:43 +0000 (04:58 -0300)]
V4L/DVB: uvcvideo: Add support for Manta MM-353 Plako

The camera requires the PROBE_MINMAX quirk. Add a corresponding entry
in the device IDs list

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Don't use stack-based buffers for USB transfers
Laurent Pinchart [Fri, 18 Jun 2010 14:31:24 +0000 (11:31 -0300)]
V4L/DVB: uvcvideo: Don't use stack-based buffers for USB transfers

Data buffers on the stack are not allowed for USB I/O. Use dynamically
allocated buffers instead when querying control length and control
capabilities.

The control capabilities are now also stored in the uvc_control
structure.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Define control information bits using macros
Laurent Pinchart [Thu, 17 Jun 2010 14:11:51 +0000 (11:11 -0300)]
V4L/DVB: uvcvideo: Define control information bits using macros

Use the macros instead of hardcoding numerical constants for the
controls information bitfield.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Support menu controls in the control mapping API
Laurent Pinchart [Thu, 18 Feb 2010 19:38:52 +0000 (16:38 -0300)]
V4L/DVB: uvcvideo: Support menu controls in the control mapping API

The UVCIOC_CTRL_MAP ioctl doesn't support menu entries for menu
controls. As the uvc_xu_control_mapping structure has no reserved
fields, this can't be fixed while keeping ABI compatibility.

Modify the UVCIOC_CTRL_MAP ioctl to add menu entries support, and define
UVCIOC_CTRL_MAP_OLD that supports the old ABI without any ability to add
menu controls.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Make button controls work properly
Hans de Goede [Wed, 19 May 2010 23:15:00 +0000 (20:15 -0300)]
V4L/DVB: uvcvideo: Make button controls work properly

According to the v4l2 spec, writing any value to a button control should
result in the action belonging to the button control being triggered.
UVC cams however want to see a 1 written, this patch fixes this by
overriding whatever value user space passed in with -1 (0xffffffff) when
the control is a button control.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: uvcvideo: Add support for absolute pan/tilt controls
Martin Rubli [Wed, 19 May 2010 22:51:56 +0000 (19:51 -0300)]
V4L/DVB: uvcvideo: Add support for absolute pan/tilt controls

Signed-off-by: Martin Rubli <martin_rubli@logitech.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/imon: auto-configure another 0xffdc device variant
Jarod Wilson [Sun, 4 Jul 2010 01:48:04 +0000 (22:48 -0300)]
V4L/DVB: IR/imon: auto-configure another 0xffdc device variant

Per Pieter Hoekstra:

I have a Antec Fusion with a iMON Lcd and I get the following error:
imon 6-1:1.0: Unknown 0xffdc device, defaulting to VFD and iMON IR (id
0x9e)

The driver is functional if I load it like this: (I do not use a remote for it)
modprobe imon display_type=1 (On Mythbuntu 10.04/2.6.32)

This device is a lcd-type with support for a MCE remote. Looking at
the source code, this device (0x9e) is the same as id 0x9f.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx88: Let the user disable IR support
Jean Delvare [Mon, 28 Jun 2010 15:59:49 +0000 (12:59 -0300)]
V4L/DVB: cx88: Let the user disable IR support

It might be useful to be able to disable the IR support, either for
debugging purposes, or just for users who know they won't use the IR
remote control anyway. On many cards, IR support requires expensive
polling/sampling which is better avoided if never needed.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx88: Move I2C IR initialization
Jean Delvare [Mon, 28 Jun 2010 15:55:43 +0000 (12:55 -0300)]
V4L/DVB: cx88: Move I2C IR initialization

Move I2C IR initialization from just after I2C bus setup to right
before non-I2C IR initialization. This is the same as was done for
the bttv driver several months ago. Might solve bugs which have not yet
been reported for some cards. It makes both drivers consistent, and
makes it easier to disable IR support (coming soon.)

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx23885: add support for new model revisions of the HVR12xx board family
Michael Krufky [Wed, 30 Jun 2010 21:17:35 +0000 (18:17 -0300)]
V4L/DVB: cx23885: add support for new model revisions of the HVR12xx board family

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: xc5000: Fix a few warnings
Mauro Carvalho Chehab [Mon, 5 Jul 2010 21:38:46 +0000 (18:38 -0300)]
V4L/DVB: xc5000: Fix a few warnings

drivers/media/common/tuners/xc5000.c: In function ‘xc_write_reg’:
drivers/media/common/tuners/xc5000.c:298: warning: passing argument 3 of ‘xc5000_readreg’ from incompatible pointer type
drivers/media/common/tuners/xc5000.c:235: note: expected ‘u16 *’ but argument is of type ‘u8 *’
drivers/media/common/tuners/xc5000.c: At top level:
drivers/media/common/tuners/xc5000.c:223: warning: ‘xc_read_i2c_data’ defined but not used

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx23885: Convert cx23885-input to use new in kernel IR pulse decoders
Andy Walls [Mon, 28 Jun 2010 02:15:35 +0000 (23:15 -0300)]
V4L/DVB: cx23885: Convert cx23885-input to use new in kernel IR pulse decoders

Convert the cx23885 driver to use the new in kernel IR pulse
decoders for the integrated CX2388[578] IR controllers.  Rip out a lot
of RC-5 decoding related code in the process and rename some variables
for clarity or to more accurately describe their usage.

Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx23885: Convert from struct card_ir to struct cx23885_ir_input for IR Rx
Andy Walls [Sun, 27 Jun 2010 20:17:06 +0000 (17:17 -0300)]
V4L/DVB: cx23885: Convert from struct card_ir to struct cx23885_ir_input for IR Rx

Move from the generic, shared card_ir state structure to a cx23885 driver
specific IR state structure in anticipation of moving to the new IR pulse
decoders in the IR core.

Fix up the card name truncation in the dmesg log while we're at it,
by avoiding using fixed length string storage in our new IR state
structure.

Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Simplify image building
Jean-François Moine [Sun, 27 Jun 2010 06:08:19 +0000 (03:08 -0300)]
V4L/DVB: gspca - main: Simplify image building

The image pointer and its length are now in the main structure instead
of in the frame buffer. They are updated on application vidioc_qbuf and
in the URB interrupt function when ending an image.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - gl860: Fix a compilation warning
Jean-François Moine [Sat, 26 Jun 2010 18:35:32 +0000 (15:35 -0300)]
V4L/DVB: gspca - gl860: Fix a compilation warning

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: vpif: removing VPIF config variables
Murali Karicheri [Sat, 12 Jun 2010 12:16:02 +0000 (09:16 -0300)]
V4L/DVB: vpif: removing VPIF config variables

The Kconfig variables are moved to video/davinci/Kconfig through another
patch and these are to be therefore removed

Signed-off-by: Muralidharan Karicheri <mkaricheri@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: vpfe_capture: Create separate Kconfig file for davinci devices
Vaibhav Hiremath [Sat, 12 Jun 2010 12:09:56 +0000 (09:09 -0300)]
V4L/DVB: vpfe_capture: Create separate Kconfig file for davinci devices

Currently VPFE Capture driver and DM6446 CCDC driver is being
reused for AM3517. So this patch is preparing the Kconfig/makefile
for re-use of such IP's.

Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Muralidharan Karicheri <mkaricheri@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tuners:tuner-simple Fix warning: variable 'tun' set but not used
Justin P. Mattock [Mon, 21 Jun 2010 16:15:47 +0000 (13:15 -0300)]
V4L/DVB: tuners:tuner-simple Fix warning: variable 'tun' set but not used

Resend due to a whitespace issue I created by mistake.
The below patch fixes a warning message create by gcc 4.6.0

 CC [M]  drivers/media/common/tuners/tuner-simple.o
drivers/media/common/tuners/tuner-simple.c: In function 'simple_set_tv_freq':
drivers/media/common/tuners/tuner-simple.c:548:20: warning: variable 'tun' set but not used

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>