openwrt/staging/blogic.git
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>
14 years agoV4L/DVB: tm6000-input: Make checkpatch.pl happy
Mauro Carvalho Chehab [Mon, 5 Jul 2010 20:09:11 +0000 (17:09 -0300)]
V4L/DVB: tm6000-input: Make checkpatch.pl happy

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tm6000: add ir support
Stefan Ringel [Sun, 20 Jun 2010 20:16:52 +0000 (17:16 -0300)]
V4L/DVB: tm6000: add ir support

Signed-off-by: Stefan Ringel <stefan.ringel@arcor.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/dvb/frontends: remove duplicate structure field initialization
Julia Lawall [Sun, 20 Jun 2010 13:40:37 +0000 (10:40 -0300)]
V4L/DVB: drivers/media/dvb/frontends: remove duplicate structure field  initialization

The read_status field is initialized twice to the same value.

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

// <smpl>
@r@
identifier I, s, fld;
position p0,p;
expression E;
@@

struct I s =@p0 { ... .fld@p = E, ...};

@s@
identifier I, s, r.fld;
position r.p0,p;
expression E;
@@

struct I s =@p0 { ... .fld@p = E, ...};

@script:python@
p0 << r.p0;
fld << r.fld;
ps << s.p;
pr << r.p;
@@

if int(ps[0].line)<int(pr[0].line) or int(ps[0].column)<int(pr[0].column):
  cocci.print_main(fld,p0)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: xc5000, rework xc_write_reg
Dmitri Belimov [Tue, 18 May 2010 07:30:11 +0000 (04:30 -0300)]
V4L/DVB: xc5000, rework xc_write_reg

Rework xc_write_reg function for correct read register of the xc5000.
It is very useful for tm6000.

Tested for tm6000 and for saa7134 works well.

Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com>
Acked-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb_ca_en50221: return -EFAULT on copy_to_user errors
Dan Carpenter [Fri, 4 Jun 2010 15:39:03 +0000 (12:39 -0300)]
V4L/DVB: dvb_ca_en50221: return -EFAULT on copy_to_user errors

copy_to_user() returns the number of bytes remaining to be copied which
isn't the right thing to return here.  The comments say that these
functions in dvb_ca_en50221.c should return the number of bytes copied or
an error return.  I've changed it to return -EFAULT.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: media/radio: fix copy_to_user to user handling
Dan Carpenter [Fri, 4 Jun 2010 10:34:40 +0000 (07:34 -0300)]
V4L/DVB: media/radio: fix copy_to_user to user handling

copy_to/from_user() returns the number of bytes remaining to be copied
but the code here was testing for negative returns.  I modified it to
return -EFAULT.  These functions are called from si4713_s_ext_ctrls() and
that only tests for negative error codes.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: mantis: Select correct frontends
Ben Hutchings [Thu, 3 Jun 2010 01:23:10 +0000 (22:23 -0300)]
V4L/DVB: mantis: Select correct frontends

Update the Kconfig selections to match the code.
Add the usual condition of !DVB_FE_CUSTOMISE.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: hdpvr: Fixes probing function
Perceval Anichini [Mon, 5 Jul 2010 18:11:51 +0000 (15:11 -0300)]
V4L/DVB: hdpvr: Fixes probing function

In the hdpvr_probe () function, when an error occurs while probing the device,
the workqueue created by the create_single_thread () call is not properly
destroyed.

Signed-off-by: Perceval Anichini <perceval@trilogic.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: s2255drv: cleanup of device structure
Dean Anderson [Tue, 1 Jun 2010 22:12:07 +0000 (19:12 -0300)]
V4L/DVB: s2255drv: cleanup of device structure

s2255drv: cleanup of device structure

cleanup of device structure.
single channel array instead of multiple arrays in device for
each channel property.
simplifies open callback by removing search for channel index.

Signed-off-by: Dean Anderson <linux-dev@sensoray.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cpia_usb: remove unneeded variable
Dan Carpenter [Tue, 1 Jun 2010 08:17:27 +0000 (05:17 -0300)]
V4L/DVB: cpia_usb: remove unneeded variable

This is just a cleanup patch.  We never use the "udev" variable so I
have removed it.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: remove unneeded null check in anysee_probe()
Dan Carpenter [Mon, 31 May 2010 19:27:39 +0000 (16:27 -0300)]
V4L/DVB: remove unneeded null check in anysee_probe()

Smatch complained because "d" is dereferenced first and then checked for
null later .  The only code path where "d" could be a invalid pointer is
if this is a cold device in dvb_usb_device_init().  I consulted Antti
Palosaari and he explained that anysee is always a warm device.

I have added a comment and removed the unneeded null check.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: TechnoTrend TT-budget T-3000
Vadim Catana [Sat, 29 May 2010 15:49:16 +0000 (12:49 -0300)]
V4L/DVB: TechnoTrend TT-budget T-3000

This patch adds support for TechnoTrend TT-budget T-3000 DVB-T card.

Signed-off-by: Vadim Catana <vadim.catana@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove obsolete zc0301 v4l driver
Amerigo Wang [Mon, 31 May 2010 06:16:17 +0000 (03:16 -0300)]
V4L/DVB: Remove obsolete zc0301 v4l driver

On 05/29/10 01:30, Jean-Francois Moine wrote:
> On Fri, 28 May 2010 13:03:28 -0400
> Amerigo Wang<amwang@redhat.com>  wrote:
>
>> Subject: [PATCH 6/6] Remove obsolete zc0301 v4l driver
>>
>> Duplicate functionality with the gspca_zc3xx driver, zc0301 only
>> supports 2 USB-ID's (because it only supports a limited set of
>> sensors) wich are also supported by the gspca_zc3xx driver
>> (which supports 53 USB-ID's in total).
>
> You forgot to remove the conditionnal compilation in the gspca_zc3xx
> driver (USB_DEVICE(0x046d, 0x08ae) in gspca/zc3xx.c)
>

Right, thanks for pointing this out!

Attached is the updated patch, please use this one instead.

Thanks!

Duplicate functionality with the gspca_zc3xx driver, zc0301 only
supports 2 USB-ID's (because it only supports a limited set of
sensors) wich are also supported by the gspca_zc3xx driver
(which supports 53 USB-ID's in total).

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove obsolete stv680 v4l1 driver
Amerigo Wang [Fri, 28 May 2010 09:49:57 +0000 (06:49 -0300)]
V4L/DVB: Remove obsolete stv680 v4l1 driver

obsolete v4l1 driver replaced by gspca_stv0680

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove obsolete ovcamchip sensor framework
Amerigo Wang [Fri, 28 May 2010 09:45:38 +0000 (06:45 -0300)]
V4L/DVB: Remove obsolete ovcamchip sensor framework

Only used by obsoleted v4l1 driver

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove obsolete w9968cf v4l1 driver
Amerigo Wang [Fri, 28 May 2010 09:41:07 +0000 (06:41 -0300)]
V4L/DVB: Remove obsolete w9968cf v4l1 driver

>From a97df96226e89d3539be93ddb5a8df3a2f7edcb6 Mon Sep 17 00:00:00 2001

obsolete v4l1 driver replaced by gspca_ov519

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove obsolete ov511 driver
Amerigo Wang [Fri, 28 May 2010 09:31:39 +0000 (06:31 -0300)]
V4L/DVB: Remove obsolete ov511 driver

obsolete v4l1 driver replaced by gspca_ov519

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove usbvideo quickcam_messenger driver
Amerigo Wang [Fri, 28 May 2010 09:26:32 +0000 (06:26 -0300)]
V4L/DVB: Remove usbvideo quickcam_messenger driver

obsolete v4l1 driver replaced by gspca_stv06xx

Signed-off-by: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: Rename vmalloc fields to vaddr
Laurent Pinchart [Tue, 11 May 2010 13:36:34 +0000 (10:36 -0300)]
V4L/DVB: videobuf: Rename vmalloc fields to vaddr

The videobuf_dmabuf and videobuf_vmalloc_memory fields have a vmalloc
field to store the kernel virtual address of vmalloc'ed buffers. Rename
the field to vaddr.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: Remove videobuf_mapping start and end fields
Laurent Pinchart [Tue, 11 May 2010 13:36:33 +0000 (10:36 -0300)]
V4L/DVB: videobuf: Remove videobuf_mapping start and end fields

The fields are assigned but never used, remove them.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: Don't export videobuf_(vmalloc|pages)_to_sg
Laurent Pinchart [Tue, 11 May 2010 13:36:32 +0000 (10:36 -0300)]
V4L/DVB: videobuf: Don't export videobuf_(vmalloc|pages)_to_sg

Those functions are only called inside videobuf-dma-sg.c, make them
static.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Remove videobuf_sg_alloc abuse
Laurent Pinchart [Tue, 11 May 2010 13:36:31 +0000 (10:36 -0300)]
V4L/DVB: Remove videobuf_sg_alloc abuse

The cx88 and cx25821 drivers abuse videobuf_buffer to handle audio data.
Remove the abuse by creating private audio buffer structures with a
videobuf_dmabuf field.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: Remove the videobuf_sg_dma_map/unmap functions
Laurent Pinchart [Tue, 11 May 2010 13:36:30 +0000 (10:36 -0300)]
V4L/DVB: videobuf: Remove the videobuf_sg_dma_map/unmap functions

Instead of creating dirty wrappers around videobuf_dma_map/unmap that
create a dummy videobuf_queue structure, modify videobuf_dma_map/unmap
to take a device pointer argument and use it directly. The
videobuf_sg_dma_map/unmap then become unused and can be removed.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: rename videobuf_mmap_free and add sanity checks
Pawel Osciak [Tue, 11 May 2010 13:36:29 +0000 (10:36 -0300)]
V4L/DVB: videobuf: rename videobuf_mmap_free and add sanity checks

This function is not specific to mmap, hence the rename.
Add a check whether we are not streaming or reading (for read mode that
uses the stream queue) before freeing anything.

Signed-off-by: Pawel Osciak <p.osciak@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: videobuf: rename videobuf_alloc to videobuf_alloc_vb
Pawel Osciak [Tue, 11 May 2010 13:36:28 +0000 (10:36 -0300)]
V4L/DVB: videobuf: rename videobuf_alloc to videobuf_alloc_vb

These functions allocate videobuf_buffer structures only. Renaming in order
to prevent confusion with functions allocating actual video buffer memory.

Rename the functions in videobuf-core.h videobuf-dma-sg.c as well.

Signed-off-by: Pawel Osciak <p.osciak@samsung.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media: Use memdup_user
Julia Lawall [Sat, 22 May 2010 08:21:02 +0000 (05:21 -0300)]
V4L/DVB: drivers/media: Use memdup_user

Use memdup_user when user data is immediately copied into the
allocated region.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
position p;
identifier l1,l2;
@@

-  to = \(kmalloc@p\|kzalloc@p\)(size,flag);
+  to = memdup_user(from,size);
   if (
-      to==NULL
+      IS_ERR(to)
                 || ...) {
   <+... when != goto l1;
-  -ENOMEM
+  PTR_ERR(to)
   ...+>
   }
-  if (copy_from_user(to, from, size) != 0) {
-    <+... when != goto l2;
-    -EFAULT
-    ...+>
-  }
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx25821: Fix bad whitespacing
Mauro Carvalho Chehab [Sun, 4 Jul 2010 18:37:05 +0000 (15:37 -0300)]
V4L/DVB: cx25821: Fix bad whitespacing

Should use tabs for identation, and not whitespace

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx25821: Add a kernel level at printk's
Mauro Carvalho Chehab [Sun, 4 Jul 2010 18:28:09 +0000 (15:28 -0300)]
V4L/DVB: cx25821: Add a kernel level at printk's

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx25821: Make comments C99 compliant
Mauro Carvalho Chehab [Sun, 4 Jul 2010 18:21:40 +0000 (15:21 -0300)]
V4L/DVB: cx25821: Make comments C99 compliant

Replace all // comments by /* */

Patch generated with this small script:

for i in drivers/staging/cx25821/*.[ch]; do cat $i|perl -ne 's,//\s*(.*)\s*\n,/* $1 */\n,g; print $_;' >a && mv a $i; done

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: cx25821: Removed duplicate code and cleaned up
Palash Bandyopadhyay [Sun, 4 Jul 2010 17:15:38 +0000 (14:15 -0300)]
V4L/DVB: cx25821: Removed duplicate code and cleaned up

Signed-off-by: Palash Bandyopadhyay <Palash.Bandyopadhyay@conexant.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: DocBook/media: Add LIRC DocBook to media.html
Mauro Carvalho Chehab [Sun, 4 Jul 2010 15:23:19 +0000 (12:23 -0300)]
V4L/DVB: DocBook/media: Add LIRC DocBook to media.html

Add LIRC interface into the media.html DocBook, fixing several
small XML errors at the original spec.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/lirc: add docbook info covering lirc device interface
Jarod Wilson [Sat, 3 Jul 2010 04:10:09 +0000 (01:10 -0300)]
V4L/DVB: IR/lirc: add docbook info covering lirc device interface

First ever crack at creating docbook documentation... Contains a bevy of
information on the various lirc device interface ioctls, as well as a
bit about the read and write interfaces.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR: add empty lirc pseudo-keymap
Jarod Wilson [Sat, 3 Jul 2010 04:08:52 +0000 (01:08 -0300)]
V4L/DVB: IR: add empty lirc pseudo-keymap

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR TX: incoming IR buffer now an int pointer
Jarod Wilson [Fri, 2 Jul 2010 03:38:09 +0000 (00:38 -0300)]
V4L/DVB: IR TX: incoming IR buffer now an int pointer

incoming IR buffer now an int pointer, and not fed from userspace

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR: add ir-core to lirc userspace decoder bridge driver
Jarod Wilson [Sat, 3 Jul 2010 04:07:53 +0000 (01:07 -0300)]
V4L/DVB: IR: add ir-core to lirc userspace decoder bridge driver

v2: copy of buffer data from userspace done inside this plugin/driver,
keeping the actual drivers minimal, and more flexible in what we can
deliver to them later on (they may be fed from within kernelspace later
on, by an in-kernel IR encoder).

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR: add lirc device interface
Jarod Wilson [Sat, 3 Jul 2010 04:06:57 +0000 (01:06 -0300)]
V4L/DVB: IR: add lirc device interface

v2: currently unused ioctls are included, but #if 0'd out

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video/zoran: Use kmemdup
Julia Lawall [Thu, 1 Jul 2010 04:52:33 +0000 (01:52 -0300)]
V4L/DVB: drivers/media/video/zoran: Use kmemdup

Use kmemdup when some other buffer is immediately copied into the
allocated region.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb-usb-init.c: white space changes in dvb-usb-init
Dan Carpenter [Thu, 1 Jul 2010 04:50:04 +0000 (01:50 -0300)]
V4L/DVB: dvb-usb-init.c: white space changes in dvb-usb-init

I started fixing one or two lines, but after a while I got into a groove
and started changing everything.  I left the lines longer than 80
characters because that seemed to be the style in this file.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video/tlg2300: Use kmemdup
Julia Lawall [Thu, 1 Jul 2010 04:41:44 +0000 (01:41 -0300)]
V4L/DVB: drivers/media/video/tlg2300: Use kmemdup

Use kmemdup when some other buffer is immediately copied into the
allocated region.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Increment DVB API version
Mauro Carvalho Chehab [Sat, 3 Jul 2010 21:06:13 +0000 (18:06 -0300)]
V4L/DVB: Increment DVB API version

A new flag were added at the Frontend capabilities. Increment
API minor revision.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: DocBook/dvb: Update spec to reflect the current FE capabilities
Mauro Carvalho Chehab [Sat, 3 Jul 2010 20:39:17 +0000 (17:39 -0300)]
V4L/DVB: DocBook/dvb: Update spec to reflect the current FE capabilities

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Add FE_CAN_TURBO_FEC
Klaus Schmidinger [Thu, 1 Jul 2010 04:37:34 +0000 (01:37 -0300)]
V4L/DVB: Add FE_CAN_TURBO_FEC

Some (North American) providers use a non-standard mode called
"8psk turbo fec". Since there is no flag in the driver that
would allow an application to determine whether a particular
device can handle "turbo fec", the attached patch introduces
FE_CAN_TURBO_FEC.

Since there is no flag in the SI data that would indicate
that a transponder uses "turbo fec", VDR will assume that
all 8psk transponders on DVB-S use "turbo fec".

Tested-by: Derek Kelly <user.vdr@gmail.com>
Signed-off-by: Klaus Schmidinger <Klaus.Schmidinger@tvdr.de>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video/uvc: Use kmemdup
Julia Lawall [Thu, 1 Jul 2010 04:33:15 +0000 (01:33 -0300)]
V4L/DVB: drivers/media/video/uvc: Use kmemdup

Use kmemdup when some other buffer is immediately copied into the
allocated region.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video/gspca: Use kmemdup
Julia Lawall [Thu, 1 Jul 2010 04:30:11 +0000 (01:30 -0300)]
V4L/DVB: drivers/media/video/gspca: Use kmemdup

Use kmemdup when some other buffer is immediately copied into the
allocated region.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/dvb/dvb-usb/dib0700: CodingStyle fixes
Daniel Mack [Thu, 1 Jul 2010 04:19:31 +0000 (01:19 -0300)]
V4L/DVB: drivers/media/dvb/dvb-usb/dib0700: CodingStyle fixes

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/dvb/dvb-usb/dib0700: fix return values
Daniel Mack [Thu, 1 Jul 2010 04:08:58 +0000 (01:08 -0300)]
V4L/DVB: drivers/media/dvb/dvb-usb/dib0700: fix return values

Propagte correct error values instead of returning -1 which just means
-EPERM ("Permission denied")

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: drivers/media/video/pvrusb2: Add missing mutex_unlock
Julia Lawall [Tue, 29 Jun 2010 04:42:53 +0000 (01:42 -0300)]
V4L/DVB: drivers/media/video/pvrusb2: Add missing mutex_unlock

Add a mutex_unlock missing on the error path.  In the other functions in
the same file the locks and unlocks of this mutex appear to be balanced,
so it would seem that the same should hold in this case.

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>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: vivi: fix depends again
Randy Dunlap [Tue, 29 Jun 2010 04:31:40 +0000 (01:31 -0300)]
V4L/DVB: vivi: fix depends again

My previous patch to depend on FONTS was not sufficient since
FONTS is boolean.  VIDEO_VIVI needs to depend on a tristate so that
it won't be enabled as =y when framebuffer is built as modular, so
modify it to depend on the same symbols that FONTS depends on, which
are FRAMEBUFFER_CONSOLE || STI_CONSOLE.

Fixes this build error when VIDEO_VIVI=y and FRAMEBUFFER_CONSOLE=m:
vivi.c:(.init.text+0x7205): undefined reference to `find_font'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: smscoreapi/w9968cf: drivers/media: Remove unnecesary kmalloc casts
Joe Perches [Tue, 29 Jun 2010 04:29:29 +0000 (01:29 -0300)]
V4L/DVB: smscoreapi/w9968cf: drivers/media: Remove unnecesary kmalloc casts

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: add tx callback functions and wire up
Jarod Wilson [Wed, 16 Jun 2010 20:55:52 +0000 (17:55 -0300)]
V4L/DVB: IR/mceusb: add tx callback functions and wire up

mchehab: merged with IR/mceusb: userspace buffer copy moved out of driver

    Userspace buffer copy moved out of driver and into lirc bridge driver

[mchehab@redhat.com: merged the patch to avoid compilation errors with allyesconfig ]
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR: add tx callbacks to ir-core
Jarod Wilson [Wed, 16 Jun 2010 20:55:25 +0000 (17:55 -0300)]
V4L/DVB: IR: add tx callbacks to ir-core

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: kill pinnacle-device-specific nonsense
Jarod Wilson [Wed, 16 Jun 2010 20:10:46 +0000 (17:10 -0300)]
V4L/DVB: IR/mceusb: kill pinnacle-device-specific nonsense

I have pinnacle hardware now. None of this pinnacle-specific crap is at
all necessary (in fact, some of it needed to be removed to actually make
it work). The only thing unique about this device is that it often
transfers inbound data w/a header of 0x90, meaning 16 bytes of IR data
following it, so I had to make adjustments for that, and now its working
perfectly fine.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: misc cleanups and init fixes
Jarod Wilson [Wed, 16 Jun 2010 20:10:05 +0000 (17:10 -0300)]
V4L/DVB: IR/mceusb: misc cleanups and init fixes

The first-gen mceusb device init code, while mostly functional, had a few
issues in it. This patch does the following:

1) removes use of magic numbers
2) eliminates mapping of memory from stack
3) makes debug spew translator functional

Additionally, this clean-up revealed that we cannot read the proper default
tx blaster bitmask from the device, we do actually have to initialize it
ourselves, which requires use of a somewhat gross list-based mask inversion
check.

This patch also removes the entirely unnecessary use of struct ir_input_state.

Also supersedes two earlier patches that also touched on first-gen
cleanup, but were partially botched. This one actually compiles, works,
etc., I swear. ;)

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/mceusb: use the proper ir-core device unregister function
Jarod Wilson [Wed, 16 Jun 2010 20:08:32 +0000 (17:08 -0300)]
V4L/DVB: IR/mceusb: use the proper ir-core device unregister function

Was using input_unregister_device directly, instead of using
ir_input_unregister, which tears down a bunch of other things in
addition to eventually calling input_unregister_device.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: IR/imon: use the proper ir-core device unregister function
Jarod Wilson [Wed, 16 Jun 2010 20:07:39 +0000 (17:07 -0300)]
V4L/DVB: IR/imon: use the proper ir-core device unregister function

Was using input_unregister_device directly, instead of using
ir_input_unregister, which tears down a bunch of other things in
addition to eventually calling input_unregister_device.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: media/IR: nec-decoder needs to select BITREV
Randy Dunlap [Wed, 26 May 2010 17:08:51 +0000 (14:08 -0300)]
V4L/DVB: media/IR: nec-decoder needs to select BITREV

Fix ir-nec-decoder build: it uses bitrev library code, so
select BITREVERSE in its Kconfig.

ir-nec-decoder.c:(.text+0x1a2517): undefined reference to `byte_rev_table'
ir-nec-decoder.c:(.text+0x1a2526): undefined reference to `byte_rev_table'
ir-nec-decoder.c:(.text+0x1a2530): undefined reference to `byte_rev_table'
ir-nec-decoder.c:(.text+0x1a2539): 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-core: move decoding state to ir_raw_event_ctrl
David Härdeman [Sun, 13 Jun 2010 20:29:36 +0000 (17:29 -0300)]
V4L/DVB: ir-core: move decoding state to ir_raw_event_ctrl

This patch moves the state from each raw decoder into the
ir_raw_event_ctrl struct.

This allows the removal of code like this:

        spin_lock(&decoder_lock);
        list_for_each_entry(data, &decoder_list, list) {
                if (data->ir_dev == ir_dev)
                        break;
        }
        spin_unlock(&decoder_lock);
        return data;

which is currently run for each decoder on each event in order
to get the client-specific decoding state data.

In addition, ir decoding modules and ir driver module load
order is now independent. Centralizing the data also allows
for a nice code reduction of about 30% per raw decoder as
client lists and client registration callbacks are no longer
necessary (but still kept around for the benefit of the lirc
decoder).

Out-of-tree modules can still use a similar trick to what
the raw decoders did before this patch until they are merged.

Signed-off-by: David Härdeman <david@hardeman.nu>
Acked-by: Jarod Wilson <jarod@redhat.com>
Tested-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: allow specifying multiple protocols at one open/write
Mauro Carvalho Chehab [Mon, 28 Jun 2010 16:52:07 +0000 (13:52 -0300)]
V4L/DVB: ir-core: allow specifying multiple protocols at one open/write

With this change, it is now possible to do something like:
        su -c 'echo "none +rc-5 +nec" > /sys/class/rc/rc1/protocols'

This prevents the need of multiple opens, one for each protocol change,
and makes userspace application easier.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: Add support for disabling all protocols
Mauro Carvalho Chehab [Mon, 28 Jun 2010 15:58:48 +0000 (12:58 -0300)]
V4L/DVB: ir-core: Add support for disabling all protocols

Writing "none" to /dev/class/rc/rc*/protocols will disable all protocols.
This allows an easier setup, from userspace, as userspace applications don't
need to disable protocol per protocol, before enabling a different set of
protocols.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: Rename sysfs protocols nomenclature to rc-5 and rc-6
Mauro Carvalho Chehab [Mon, 28 Jun 2010 15:43:25 +0000 (12:43 -0300)]
V4L/DVB: ir-core: Rename sysfs protocols nomenclature to rc-5 and rc-6

While rc-5 and rc-6 protocols are generally abreviated as "rc5" and "rc6",
previous sysfs nodes uses rc-5 and rc-6 for the Philips protocols. This is
consistent with the protocol nomenclature given by the original Philips
spec: "Remote control system RC-5" (doc. Nr. 9398 706 23011).
Also, rc5 is the name of a widely known cryptography protocol.

So, the better is to keep referring to those protocols as "rc-5" and "rc-6".

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: Remove magic numbers at the sysfs logic
Mauro Carvalho Chehab [Mon, 28 Jun 2010 15:37:13 +0000 (12:37 -0300)]
V4L/DVB: ir-core: Remove magic numbers at the sysfs logic

Instead of using "magic" sizes for protocol names, replace them by an
array, and use strlen().

No functional changes.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: centralize sysfs raw decoder enabling/disabling
David Härdeman [Sun, 13 Jun 2010 20:29:31 +0000 (17:29 -0300)]
V4L/DVB: ir-core: centralize sysfs raw decoder enabling/disabling

With the current logic, each raw decoder needs to add a copy of the exact
same sysfs code. This is both unnecessary and also means that (re)loading
an IR driver after raw decoder modules have been loaded won't work as
expected.

This patch moves that logic into ir-raw-event and adds a single sysfs
file per device.

Reading that file returns something like:

"rc5 [rc6] nec jvc [sony]"

(with enabled protocols in [] brackets)

Writing either "+protocol" or "-protocol" to that file will
enable or disable the according protocol decoder.

An additional benefit is that the disabling of a decoder will be
remembered across module removal/insertion so a previously
disabled decoder won't suddenly be activated again. The default
setting is to enable all decoders.

This is also necessary for the next patch which moves even more decoder
state into the central raw decoding structs.

Signed-off-by: David Härdeman <david@hardeman.nu>
Acked-by: Jarod Wilson <jarod@redhat.com>
Tested-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: partially convert ir-kbd-i2c.c to not use ir-functions.c
David Härdeman [Mon, 7 Jun 2010 19:32:33 +0000 (16:32 -0300)]
V4L/DVB: ir-core: partially convert ir-kbd-i2c.c to not use ir-functions.c

Partially convert drivers/media/video/ir-kbd-i2c.c to
not use ir-functions.c

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: partially convert cx88 to not use ir-functions.c
David Härdeman [Mon, 7 Jun 2010 19:32:28 +0000 (16:32 -0300)]
V4L/DVB: ir-core: partially convert cx88 to not use ir-functions.c

Partially convert drivers/media/video/cx88/cx88-input.c to not use
ir-functions.c

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: em28xx-input: Don't generate one debug message for every get_key read
Mauro Carvalho Chehab [Sun, 27 Jun 2010 11:32:11 +0000 (08:32 -0300)]
V4L/DVB: em28xx-input: Don't generate one debug message for every get_key read

Instead of generating one printk for every IR read, prints it only when
count is different from the last count.

While here, as this code is called on every 100ms during the runtime
lifetime, do some performance optimization, assuming that, under normal
circumstances, it is unlikely that the driver would get a new key/key
repeat on every poll.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: convert em28xx to not use ir-functions.c
David Härdeman [Mon, 7 Jun 2010 19:32:23 +0000 (16:32 -0300)]
V4L/DVB: ir-core: convert em28xx to not use ir-functions.c

Convert drivers/media/video/em28xx/em28xx-input.c to not use ir-functions.c

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ir-core: convert mantis to not use ir-functions.c
David Härdeman [Mon, 7 Jun 2010 19:32:18 +0000 (16:32 -0300)]
V4L/DVB: ir-core: convert mantis to not use ir-functions.c

Convert drivers/media/dvb/mantis/mantis_input.c to not use ir-functions.c

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Fix kernel Oops when number of NetUP Dual DVB-S2-CI cards more than DVB_MAX_...
Abylay Ospan [Fri, 25 Jun 2010 11:01:28 +0000 (08:01 -0300)]
V4L/DVB: Fix kernel Oops when number of NetUP Dual DVB-S2-CI cards more than DVB_MAX_ADAPTERS limit

Signed-off-by: Abylay Ospan <aospan@netup.ru>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - main: Remove V4L1 compatibility
Jean-François Moine [Thu, 24 Jun 2010 08:19:58 +0000 (05:19 -0300)]
V4L/DVB: gspca - main: Remove V4L1 compatibility

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 PG_Reserved flag for mmapped buffers
Jean-François Moine [Thu, 24 Jun 2010 08:14:22 +0000 (05:14 -0300)]
V4L/DVB: gspca - main: Don't use the PG_Reserved flag for mmapped buffers

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - sq930x: New sensor mt9v111
Jean-François Moine [Thu, 24 Jun 2010 08:02:57 +0000 (05:02 -0300)]
V4L/DVB: gspca - sq930x: New 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 - sq930x: Check the USB read errors
Jean-François Moine [Thu, 24 Jun 2010 07:57:12 +0000 (04:57 -0300)]
V4L/DVB: gspca - sq930x: Check the USB read errors

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - pac7302/11: Bad request value in USB write
Jean-François Moine [Thu, 24 Jun 2010 07:50:26 +0000 (04:50 -0300)]
V4L/DVB: gspca - pac7302/11: Bad request value in USB write

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca - pac7302: add Genius iSlim 310
Márton Németh [Mon, 14 Jun 2010 20:21:37 +0000 (17:21 -0300)]
V4L/DVB: gspca - pac7302: add Genius iSlim 310

Add Genius iSlim 310 webcam to the supported list of the PAC7302 driver.
For more information see http://linuxtv.org/wiki/index.php/PixArt_PAC7301/PAC7302 .

Signed-off-by: Márton Németh <nm127@freemail.hu>
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: text alignment
Olivier Lorin [Thu, 24 Jun 2010 07:33:53 +0000 (04:33 -0300)]
V4L/DVB: gspca - gl860: text alignment

- Extra spaces to align some variable names and a defined value

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
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 for wrong 0V9655 resolution identifier name
Olivier Lorin [Thu, 24 Jun 2010 07:31:43 +0000 (04:31 -0300)]
V4L/DVB: gspca - gl860: fix for wrong 0V9655 resolution identifier name

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
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: use of real resolutions for MI2020 sensor
Olivier Lorin [Thu, 24 Jun 2010 07:30:05 +0000 (04:30 -0300)]
V4L/DVB: gspca - gl860: use of real resolutions for MI2020 sensor

- Change of rounded image resolutions to the real ones for MI2020 sensor
  in order to discard 2 random lines in the bottom of images

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
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: setting changes applied after an EOI
Olivier Lorin [Thu, 24 Jun 2010 07:28:24 +0000 (04:28 -0300)]
V4L/DVB: gspca - gl860: setting changes applied after an EOI

- Setting changes applied after an end of image marker reception
  This is the way MI2020 sensor works.
  It seems to be logical to wait for a complete image before
  to change a setting.

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
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: USB control message delay unification
Olivier Lorin [Thu, 24 Jun 2010 07:26:20 +0000 (04:26 -0300)]
V4L/DVB: gspca - gl860: USB control message delay unification

- 1 ms "msleep" applied to each sensor after USB control data exchange
  This was done for two sensors because these exchanges were known to
  be too quick depending on laptop model.
  It is fairly logical to apply this delay to each sensor
  in order to prevent from having errors with untested hardwares.

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
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: new driver for MI2020 sensor
Olivier Lorin [Thu, 24 Jun 2010 07:22:37 +0000 (04:22 -0300)]
V4L/DVB: gspca - gl860: new driver for MI2020 sensor

- new MI2020 driver version made from a webcam gift
- all previous flavors of this driver removed

Signed-off-by: Olivier Lorin <o.lorin@laposte.net>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: gspca: Remove/move useless inclusions of slab.h
Jean-François Moine [Fri, 4 Jun 2010 09:42:32 +0000 (06:42 -0300)]
V4L/DVB: gspca: Remove/move useless inclusions of slab.h

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Fix case where fields were not at the correct start location
Devin Heitmueller [Sun, 13 Jun 2010 20:00:23 +0000 (17:00 -0300)]
V4L/DVB: Fix case where fields were not at the correct start location

This patch address an arithmetic error for the case where the only remaining
content in the USB packet was the "225Axxxx" start of active video.  In cases
where that happened to be at the end of the frame, we would inject it into the
videobuf (which is incorrect).  This caused fields to be intermittently
rendered off by two pixels.

Thanks to Eugeniy Meshcheryakov for bringing this issue to my attention

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: Add closed captioning support for the HVR-950q
Devin Heitmueller [Sat, 29 May 2010 20:18:45 +0000 (17:18 -0300)]
V4L/DVB: Add closed captioning support for the HVR-950q

Add NTSC closed captioning support for au0828 based products.  Note that this
also required reworking the locking to support streaming on both the video and
VBI devices (the logic for which I copied from my changes made to the em28xx
several months ago).

This work was sponsored by GetWellNetwork Inc.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: tda18271: fix error detection during initialization of first instance
Michael Krufky [Mon, 3 May 2010 05:10:15 +0000 (02:10 -0300)]
V4L/DVB: tda18271: fix error detection during initialization of first instance

Fix error detection of failures during initialization of first instance:
Dont pass a function into the tda_fail macro. Instead, save the function
return value and pass that into the tda_fail macro.

This prevents the function from being called twice in cases of failure,
for example:

[19026.074070] tuner 4-0060: chip found @ 0xc0 (device #0)
[19026.087755] tda18271 4-0060: creating new instance
[19026.089965] Unknown device detected @ 4-0060, device not supported.
[19026.092233] Unknown device detected @ 4-0060, device not supported.
[19026.092241] tda18271_attach: [4-0060|M] error -22 on line 1275
[19026.092327] tda18271 4-0060: destroying instance

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ivtv: Increment driver version due to firmware loading changes
Andy Walls [Sat, 12 Jun 2010 16:55:33 +0000 (13:55 -0300)]
V4L/DVB: ivtv: Increment driver version due to firmware loading changes

Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ivtv: Automatic firmware reload
Ian Armstrong [Sat, 12 Jun 2010 16:41:57 +0000 (13:41 -0300)]
V4L/DVB: ivtv: Automatic firmware reload

If the firmware has failed, this patch will automatically reload &
restart the card. The previous card state will be restored on a
successful restart.  Firmware reload will only happen if neither the
encoder or decoder is active.  If the card is busy then behaviour is as
before, returning -EIO on device access until the reload can occur. On
cards that support video output, coloured bars will be displayed during
the reload.

Andy Walls (ivtv maintainer and patch committer) made minor tweaks to
comments and the logged messages, but nothing substantial otherwise.

Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: ivtv: Add firmare monitoring and debug mode to ignore firmware problems
Ian Armstrong [Sat, 12 Jun 2010 16:33:21 +0000 (13:33 -0300)]
V4L/DVB: ivtv: Add firmare monitoring and debug mode to ignore firmware problems

>From Ian's e-mail:
When a device is opened the firmware state will be checked. If it isn't
responding then the open will fail with -EIO.  Due to the nature of the
hardware, a single failed check will block everything since we don't know
exactly what has failed. A side effect of this is the blocking of debug
access, so an additional debug level has been created which allows the block
to be bypassed.

Andy Walls' modifications:
I modified Ian's patch to add a separate fw_debug module parameter to change
the driver's behavior, as opposed to using the normal debug module parameter.
The fw_debug module parameter is only available when CONFIG_VIDEO_ADV_DEBUG
is set.
I also made some minor whitespace adjustments and changed some warning
messages to be a bit more specific.  s/happy/glad/g

Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: enable FE_HAS_SIGNAL hack for the lgdt3304 in QAM mode
Michael Krufky [Sat, 13 Mar 2010 18:22:32 +0000 (15:22 -0300)]
V4L/DVB: lgdt3305: enable FE_HAS_SIGNAL hack for the lgdt3304 in QAM mode

The signal bit is unreliable on the DT3304 in QAM mode, so
set FE_HAS_SIGNAL based on 'cr_lock'

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: update copyright date and MODULE_VERSION
Michael Krufky [Fri, 12 Mar 2010 03:58:12 +0000 (00:58 -0300)]
V4L/DVB: lgdt3305: update copyright date and MODULE_VERSION

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: Jarod Wilson gets the credit for LGDT3304 support
Michael Krufky [Fri, 12 Mar 2010 03:56:32 +0000 (00:56 -0300)]
V4L/DVB: lgdt3305: Jarod Wilson gets the credit for LGDT3304 support

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: FIXME: verify & document the LGDT3304 registers
Michael Krufky [Fri, 12 Mar 2010 03:54:17 +0000 (00:54 -0300)]
V4L/DVB: lgdt3305: FIXME: verify & document the LGDT3304 registers

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: consolidate init functions
Michael Krufky [Fri, 12 Mar 2010 03:32:27 +0000 (00:32 -0300)]
V4L/DVB: lgdt3305: consolidate init functions

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: re-write lgdt3304 ifbw hack in lgdt3305_rfagc_loop with FIXME
Michael Krufky [Fri, 12 Mar 2010 03:00:55 +0000 (00:00 -0300)]
V4L/DVB: lgdt3305: re-write lgdt3304 ifbw hack in lgdt3305_rfagc_loop with FIXME

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: update lgdt3305.h header to match the header in lgdt3305.c
Michael Krufky [Fri, 12 Mar 2010 02:50:51 +0000 (23:50 -0300)]
V4L/DVB: lgdt3305: update lgdt3305.h header to match the header in lgdt3305.c

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: lgdt3305: remove pointless function, lgdt3304_sleep
Michael Krufky [Fri, 12 Mar 2010 02:33:20 +0000 (23:33 -0300)]
V4L/DVB: lgdt3305: remove pointless function, lgdt3304_sleep

Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
14 years agoV4L/DVB: dvb: add lgdt3304 support to lgdt3305 driver
Jarod Wilson [Sun, 7 Mar 2010 20:20:03 +0000 (17:20 -0300)]
V4L/DVB: dvb: add lgdt3304 support to lgdt3305 driver

There's a currently-unused lgdt3304 demod driver, which leaves a lot to
be desired as far as functionality. The 3304 is unsurprisingly quite
similar to the 3305, and empirical testing yeilds far better results
and more complete functionality by merging 3304 support into the 3305
driver. (For example, the current lgdt3304 driver lacks support for
signal strength, snr, ucblocks, etc., which we get w/the lgdt3305).

For the moment, not dropping the lgdt3304 driver, and its still up to
a given device's config setup to choose which demod driver to use, but
I'd suggest dropping the 3304 driver entirely.

As a follow-up to this patch, I've got another patch that adds support
for the KWorld PlusTV 340U (ATSC) em2870-based tuner stick, driving
its lgdt3304 demod via this lgdt3305 driver, which is what I used to
successfully test this patch with both VSB_8 and QAM_256 signals.

A few pieces are still a touch crude, but I think its a solid start,
as well as much cleaner and more feature-complete than the existing
lgdt3304 driver.

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: gspca - spca1528: New subdriver
Jean-François Moine [Sat, 5 Jun 2010 10:57:56 +0000 (07:57 -0300)]
V4L/DVB: gspca - spca1528: New subdriver

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: Function gspca_dev_probe2 added
Jean-François Moine [Sat, 5 Jun 2010 10:47:36 +0000 (07:47 -0300)]
V4L/DVB: gspca - main: Function gspca_dev_probe2 added

This function is used when the USB video interface is checked by
the subdriver.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>