History log of /drivers/media/video/hdpvr/hdpvr-video.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
fda27874de91d5a8b9a018b3bc74b14578994908 21-Oct-2011 Taylor Ralph <taylor.ralph@gmail.com> [media] hdpvr: update picture controls to support firmware versions > 0.15

Correctly sets the max/min/default values for the hdpvr picture
controls. The reason the current values didn't cause a problem until now
is because any firmware <= 0.15 didn't support them. The latest firmware
releases properly support picture controls and the values in the patch
are derived from the windows driver using SniffUSB2.0.

Thanks to Devin Heitmueller for helping me.

Signed-off-by: Taylor Ralph <tralph@mythtv.org>
Thanks-to: Devin Heitmueller <dheitmueller@kernellabs.com>
Acked-by: Jarod Wilson <jarod@redhat.com>
Reviewed-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
afa159538af61f1a65d48927f4e949fe514fb4fc 02-Feb-2012 Janne Grunau <j@jannau.net> [media] hdpvr: fix race conditon during start of streaming

status has to be set to STREAMING before the streaming worker is
queued. hdpvr_transmit_buffers() will exit immediately otherwise.

Reported-by: Joerg Desch <vvd.joede@googlemail.com>
CC: stable@kernel.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
1990d50b58bef127a647005fdcada6d07081d3ef 24-Jun-2011 Mauro Carvalho Chehab <mchehab@redhat.com> [media] Stop using linux/version.h on most video drivers

All the modified drivers didn't have any version increment since
Jan, 1 2011. Several of them didn't have any version increment
for a long time, even having new features and important bug fixes
happening.

As we're now filling the QUERYCAP version with the current Kernel
Release, we don't need to maintain a per-driver version control
anymore. So, let's just use the default.

In order to preserve the Kernel module version history, a
KERNEL_VERSION() macro were added to all modified drivers, and
the extraver number were incremented.

I opted to preserve the per-driver version control to a few
pwc, pvrusb2, s2255, s5p-fimc and sh_vou.

A few drivers are still using the legacy way to handle ioctl's.
So, we can't do such change on them, otherwise, they'll break.
Those are: uvc, et61x251 and sn9c102.

The rationale is that the per-driver version control seems to be
actively maintained on those.

Yet, I think that the better for them would be to just use the
default version numbering, instead of doing that by themselves.

While here, removed a few uneeded include linux/version.h

Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
324b04ba5da7918a2409f8113e46843bfbd89e67 14-Jan-2011 Jarod Wilson <jarod@redhat.com> [media] hdpvr: enable IR part

A number of things going on here, but the end result is that the IR part
on the hdpvr gets enabled, and can be used with ir-kbd-i2c and/or
lirc_zilog.

First up, there are some conditional build fixes that come into play
whether i2c is built-in or modular. Second, we're swapping out
i2c_new_probed_device() for i2c_new_device(), as in my testing, probing
always fails, but we *know* that all hdpvr devices have a z8 chip at
0x70 and 0x71. Third, we're poking at an i2c address directly without a
client, and writing some magic bits to actually turn on this IR part
(this could use some improvement in the future). Fourth, some of the
i2c_adapter storage has been reworked, as the existing implementation
used to lead to an oops following i2c changes c. 2.6.31.

Earlier editions of this patch have been floating around the 'net for a
while, including being patched into Fedora kernels, and they *do* work.
This specific version isn't yet tested, beyond loading ir-kbd-i2c and
confirming that it does bind to the RX address of the hdpvr.

[mchehab@redhat.com: I2C_CLASS_TV_ANALOG is not defined. Fix compilation bug]
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Acked-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
39bcb3ae030b0b64262adf6c5243bf767d8b75dc 26-Jul-2010 Alan Young <ayoung@teleport.com> [media] hdpvr: decrease URB timeout to 90ms

Based on USB traces of the windows driver.

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
1f33d61b149f6672d7784023cb464cf7a09e0d72 26-Jul-2010 Alan Young <ayoung@teleport.com> [media] hdpvr: remove unecessary sleep in buffer drain loop

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
4f5c933abb34532dc962185c999509b97a97fa1b 04-Oct-2010 James M McLaren <mclaren@tulane.edu> [media] hdpvr: Add missing URB_NO_TRANSFER_DMA_MAP flag

Necessary on arm.

Signed-off-by: Janne Grunau <j@jannau.net>
Cc: stable@kernel.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
abf84383ecadc8ada1963f9976e887c6f0b1bad9 12-Jul-2010 Joe Perches <joe@perches.com> 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>
/drivers/media/video/hdpvr/hdpvr-video.c
4202066c6995200b2755a4501ea90f5d4e163e41 27-May-2010 Julia Lawall <julia@diku.dk> V4L/DVB: drivers/media: Eliminate a NULL pointer dereference

In each case, the print involves dereferencing a value that is NULL or is
near NULL.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
expression E,E1;
identifier f;
statement S1,S2,S3;
@@

if ((E == NULL && ...) || ...)
{
... when != if (...) S1 else S2
when != E = E1
* E->f
... when any
return ...;
}
else S3
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
7a9b149212f3716c598afe973b6261fd58453b7a 21-May-2010 Linus Torvalds <torvalds@linux-foundation.org> Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (229 commits)
USB: remove unused usb_buffer_alloc and usb_buffer_free macros
usb: musb: update gfp/slab.h includes
USB: ftdi_sio: fix legacy SIO-device header
USB: kl5usb105: reimplement using generic framework
USB: kl5usb105: minor clean ups
USB: kl5usb105: fix memory leak
USB: io_ti: use kfifo to implement write buffering
USB: io_ti: remove unsused private counter
USB: ti_usb: use kfifo to implement write buffering
USB: ir-usb: fix incorrect write-buffer length
USB: aircable: fix incorrect write-buffer length
USB: safe_serial: straighten out read processing
USB: safe_serial: reimplement read using generic framework
USB: safe_serial: reimplement write using generic framework
usb-storage: always print quirks
USB: usb-storage: trivial debug improvements
USB: oti6858: use port write fifo
USB: oti6858: use kfifo to implement write buffering
USB: cypress_m8: use kfifo to implement write buffering
USB: cypress_m8: remove unused drain define
...

Fix up conflicts (due to usb_buffer_alloc/free renaming) in
drivers/input/tablet/acecad.c
drivers/input/tablet/kbtab.c
drivers/input/tablet/wacom_sys.c
drivers/media/video/gspca/gspca.c
sound/usb/usbaudio.c
997ea58eb92f9970b8af7aae48800d0ef43b9423 12-Apr-2010 Daniel Mack <daniel@caiaq.de> USB: rename usb_buffer_alloc() and usb_buffer_free() users

For more clearance what the functions actually do,

usb_buffer_alloc() is renamed to usb_alloc_coherent()
usb_buffer_free() is renamed to usb_free_coherent()

They should only be used in code which really needs DMA coherency.

All call sites have been changed accordingly, except for staging
drivers.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Pedro Ribeiro <pedrib@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/media/video/hdpvr/hdpvr-video.c
f2b305cd6711b7b3ce30db93b50bc5d6312950c8 02-May-2010 Hans Verkuil <hverkuil@xs4all.nl> V4L/DVB: hdpvr: fix disconnect sequence

Disconnecting the HDPVR caused a kernel oops if lockdep was enabled.
In addition, if an app still had video0 open and attempted to call ioctl
when the device was already disconnected the system would crash.

Move the freeing and cleanup code to the release function: that is the
right place for it since you know when you get there that nobody is
using the device.

Also removed usb_set_intfdata: v4l2_device_register sets this already
to v4l2_dev.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
fdd70c3399fc448a87487b287f4f0dcfb2e9c52c 14-Feb-2010 Lars Hanisch <dvb@cinnamon-sage.de> V4L/DVB: add missing 'p' at card name 'Hauppauge HD PVR'

I don't know if there are applications which rely on this name,
but after all it's a spelling mistake.

Signed-off-by: Lars Hanisch <dvb@cinnamon-sage.de>
CC: Janne Granau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
85d682b9ee1a89a82c2a75182558e392749d81fc 23-Jan-2010 Márton Németh <nm127@freemail.hu> V4L/DVB: hdpvr-video: cleanup signedness

The fifth parameter of usb_bulk_msg() is a pointer to signed
(see <linux/usb.h>) so also call this function with pointer to signed.

This will remove the following sparse warning (see "make C=1"):
* warning: incorrect type in argument 5 (different signedness)
expected int *actual_length
got unsigned int *<noident>

Signed-off-by: Márton Németh <nm127@freemail.hu>
Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
957b4aa9f786cf04585a690a2e4c3dc867ce80e9 27-Nov-2009 Laurent Pinchart <laurent.pinchart@ideasonboard.com> V4L/DVB (13552): v4l: Replace video_is_unregistered with video_is_registered

Replace the video_is_unregistered function by a video_is_registered
function. The V4L2_FL_UNREGISTERED flag is replaced by a
V4L2_FL_REGISTERED flag.

This change makes the video_is_registered function return coherent
results when called on an initialize but not yet registered video_device
instance. The function can now be used instead of checking
video_device::minor.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
cd0e280f1bbecebcd20ed0ddd4dd8fb03a506b3c 21-Nov-2009 Julia Lawall <julia@diku.dk> V4L/DVB (13413): introduce missing kfree

Error handling code following a kzalloc should free the allocated data.
Similarly for usb-alloc urb.

The semantic match that finds the first problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
statement S;
expression E;
identifier f,f1,l;
position p1,p2;
expression *ptr != NULL;
@@

x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
...
if (x == NULL) S
<... when != x
when != if (...) { <+...x...+> }
(
x->f1 = E
|
(x->f1 == NULL || ...)
|
f(...,x->f1,...)
)
...>
(
return \(0\|<+...x...+>\|ptr\);
|
return@p2 ...;
)

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
00c1e2167e3163d2e193644b7d768f06d2a8c279 31-Jul-2009 Jiri Slaby <jirislaby@gmail.com> V4L/DVB (12373): hdpvr: fix lock imbalances

There are many lock imbalances in this driver. Fix all found.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
99362e1ece9f9651af1b849a01d91b9df1e0db2c 07-Aug-2009 Hans Verkuil <hverkuil@xs4all.nl> V4L/DVB (12428): hdpvr: add missing initialization of current_norm

Drivers should either set current_norm or supply a g_std callback.

The hdpvr driver does neither. Since it initializes to a 60 Hz format
I've initialized the current_norm to NTSC | PAL_M | PAL_60 which is the
60 Hz subset of tvnorms.

Cc: Janne Grunau <j@jannau.net>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
4b512d26f425be1c779c8319249b42ce3c3424d2 15-Apr-2009 Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com> trivial: typo (en|dis|avail|remove)bale -> (en|dis|avail|remove)able

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
/drivers/media/video/hdpvr/hdpvr-video.c
7d771ff0dc3371923db929d9f88932acec3fc8e8 28-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11247): hdpvr: empty internal device buffer after stopping streaming

Makes the next capturing starting faster and more reliable.

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
9ef77adfb9ac170bcaf449530cf129c48547fd55 28-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11246): hdpvr: convert printing macros to v4l2_* with struct v4l2_device

it gives us a nice and unique prefix per device

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
48f98f7557d35d360470bf6d9fd7b00d04fba828 27-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11231): hdpvr: locking fixes

unlock io_mutex in hdpvr_stop_streaming hdpvr_disconnect to allow the
streaming worker to stop before we flush the workqueue.
do not return to user space with mutex held in vidioc_encoder_cmd with
an unknown encoder command.

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
d2ff3ec81628cbf9470c496b3d0c0780165643f5 26-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11230): hdpvr: return immediately from hdpvr_poll if data is available

simplifies check for available data with hdpvr_get_next_buffer

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
a50ab29185a9ec31e5a6999e53add0508653e889 26-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11229): hdpvr: set usb interface dev as parent in struct video_device

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
d211bfcbd0f13f1234aaa6e565013dba051a408c 27-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11228): hdpvr: use debugging macro for buffer status

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
e86da6f07ed6deebc199368bd0a47b3671829b80 19-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11125): fix mispelled Hauppauge in HD PVR and PVR USB2 driver comments

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
76717b887cccc77d04357fc0d6ac98f894e3eb3c 19-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11097): use video_ioctl2 as ioctl handler directly

The encoder commands ioctls are available in v4l2_ioctl_ops. Use them
and get rid of the custom ioctl handler and use video_ioctl2.

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c
9aba42efe85bc7a55e3fed0747ce14abc9ee96e7 18-Mar-2009 Janne Grunau <j@jannau.net> V4L/DVB (11096): V4L2 Driver for the Hauppauge HD PVR usb capture device

The device encodes component video up to 1080i to a MPEG-TS stream with
H.264 video and stereo AAC audio. Newer firmwares accept also AC3
(up to 5.1) audio over optical SPDIF without reencoding.
Firmware upgrade is unimplemeted but rather unimportant since
the firmware sits on a flash chip.

The I2C adapter to drive the integrated infrared receiver/sender is
currently disabled due to a conflict with cx18-based devices.

Tested-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
/drivers/media/video/hdpvr/hdpvr-video.c