Age | Commit message (Collapse) | Author |
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Change the code so we only claim to support VBI if the underlying chipset
actually has the support.
This work was sponsored by EyeMagnet Limited.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Do not create the VBI device in cases where VBI is not supported on the target
em28xx chip.
This work was sponsored by EyeMagnet Limited.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
There are some extra parenthesis at the clauses, and some switch() tests
for boards that don't have i2c ir. Remove those extra code.
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Currently, the logic to load ir i2c ancillary module is broken. It is
associated to Hauppauge devices with IR flag on their eeprom, no matter
if the device uses i2c or em28xx direct IR support. That's wrong.
Instead, add a flag to the boards that use i2c IR chips and load the
module only for those devices and if ir is not disabled.
Priority: normal
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Douglas Schilling Landgraf <dougsland@redhat.com>
Added Kworld DVD Maker 2
Thanks to C Western <l@c-m-w.me.uk> for reporting this board.
Priority: normal
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Warn when the desired device node number is already in use, except when
the new video_register_device_no_warn function is called since in some
use-cases that warning is not relevant.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
There are some subtle differences in the way the devnode numbers are
handled depending on whether the FIXED_MINOR_RANGES config option is
set. Add some simple wrapper functions to handle that correctly.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Remove an unreferenced variable introduced during the VBI introduction.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
The current locking infrastructure didn't support having multiple fds accessing
the device (such as video and vbi). Rework the locking infrastructure,
borrowing the design from cx88.
This work was sponsored by EyeMagnet Limited.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
When adding support for both video and VBI, I missed the mmap ioctl. Add
the missing call.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Add support for raw VBI capture for the em28xx bridge, currently only for
NTSC. Support for PAL capture to follow shortly (including the removal of
numerous hard-coded NTSC-specific sizes for capture buffers, etc).
Note that the code currently changes the default current norm from PAL to
NTSC (so that zvbi-ntsc-cc works properly). The default norm really should
be moved into a board-level parameter.
This work was sponsored by EyeMagnet Limited.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Add code enabling the VBI registers for variants of the em28xx chip that
support VBI, and make sure the isoc streaming code continues to work for
the video component of the stream (note the video and vbi data arrive
intermixed on the same isoc pipe).
Note that this version just drops the actual VBI data onto the floor as
opposed to processing it. The "#ifdef 0" tags are for the videobuf code that
appears in the next patch in this series.
We created a separate version of the isoc_copy version for parsing the version
of the stream that includes VBI data. In theory, they might be able to be
merged at some point in the future, but the initial goal is to ensure that we
do not cause any regressions with devices that do not have VBI support.
This work was sponsored by EyeMagnet Limited.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Devin Heitmueller <dheitmueller@kernellabs.com>
Properly document the video input control register, in preparation for the
addition of VBI support. Note this patch makes no functional changes.
Priority: normal
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
|
|
From: Jean-Francois Moine <moinejf@free.fr>
- call a new subdriver function 'isoc_init' before chosing the first
alternate setting.
- call a new subdriver function 'isoc_nego' when submitting the URBs failed.
Priority: normal
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
|
|
From: Laurent Pinchart <laurent.pinchart@skynet.be>
As a first step towards multiple streaming interfaces support, reorganize the
driver's data structures to cleanly separate video control and video streaming
data.
Priority: normal
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Priority: normal
Signed-off-by: Steve Gotthardt <gotthardt@gmail.com>
[mchehab@redhat.com: fix merge conflict and a few CodingStyle issues]
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Jean-Francois Moine <moinejf@free.fr>
Only the back sensor (mi1320_soc) is usable.
Priority: normal
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
|
|
From: Michael Krufky <mkrufky@kernellabs.com>
Priority: normal
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
|
|
From: Laurent Pinchart <laurent.pinchart@skynet.be>
To make UVC constants accessible by a future UVC gadget driver, move them from
drivers/media/video/uvc/uvcvideo.h to include/linux/usb/video.h.
Priority: normal
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
|
|
From: Laurent Pinchart <laurent.pinchart@skynet.be>
Those constants are not used anymore, remove them.
Priority: normal
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
|
|
From: Laurent Pinchart <laurent.pinchart@skynet.be>
In preparation to moving UVC constants to a public location, prefix all
constants with UVC_ to avoid namespace clashes.
Priority: normal
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
|
|
From: Laurent Pinchart <laurent.pinchart@skynet.be>
uvcvideo.h redefines class-specific descriptor types already present in
usb/ch9.h. Remove the duplicated definitions and use the ones from usb/ch9.h.
Priority: normal
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Fix compiler warning for uninitialized variable when compiling for pre
2.6.26 kernels.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Steven Toth <stoth@kernellabs.com>
... improves readability and routes the calls through a specific single point.
Priority: normal
Signed-off-by: Steven Toth <stoth@kernellabs.com>
|
|
From: Steven Toth <stoth@kernellabs.com>
The encoder driver has hardcoded GPIO bits set for the HVR1800, regardless
of whether it's being used by a HVR1800 or not. I've implemented some generic
GPIO manipulation routines and I'm calling them only when appropriate.
Priority: normal
Signed-off-by: Steven Toth <stoth@kernellabs.com>
|
|
From: Michael Krufky <mkrufky@kernellabs.com>
When enabling debug with v4l_debug set to 2 or greater, the driver
OOPS's on startup. Checks dev pointer before dereferencing, in
order to prevent this OOPS.
Priority: high
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
|
|
From: Michael Krufky <mkrufky@kernellabs.com>
IOCTLS will never get handled if we dont connect
video_ioctl2 to mpeg_fops.ioctl
Priority: high
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
|
|
From: Erik Andrén <erik.andren@gmail.com>
All hdcs registers use bit 0 as a read/write flag and needs to be shifted one bit to the left. This wasn't accounted for when doing a sequence of writes.
Priority: high
Signed-off-by: Erik Andrén <erik.andren@gmail.com>
|
|
From: Erik Andrén <erik.andren@gmail.com>
Priority: high
Signed-off-by: Erik Andrén <erik.andren@gmail.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Chaithrika U S <chaithrika@ti.com>
mutex_lock_interruptible return value has to be handled properly to indicate
the status to the higher layers of the kernel.
Priority: normal
Signed-off-by: Chaithrika U S <chaithrika@ti.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Mike Isely <isely@pobox.com>
This change does not change any outward behavior; it merely chops down
some large if-conditions with embedded assignments into something a
little more maintainable for others (I of course never had a problem
with this...).
Priority: normal
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
The pvrusb2 driver has a concept of "routing scheme" which defines
which physical inputs should be connected based on application's
choice of logical input. The correct "routing scheme" depends on the
specific device since different devices might wire up their muxes
differently - it can't be coded into the sub-device driver and it
can't be just a single setting in the pvrusb2 driver since the driver
handles multiple different devices. This concept has been in place
for a while and works, however there are cases where a specific input
for a specific device has no route - previously due to an oversight
this was handled badly. With these changes the driver can now
specifically recognize cases where there is no defined route for a
given input.
Priority: normal
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Change default frequency to be US Broadcast channel 3 - with the
transition to d igital the previous value has now become useless.
This change is PURELY to help with my testing (I need to set some kind
of default so it might as well be some thing usable).
Priority: normal
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
The cx25840 module's VBI initialization logic uses the current video
standard as part of its internal algorithm. This therefore means that
we probably need to make sure that the correct video standard has been
set before initializing VBI. (Normally we would not care about VBI,
but as described in an earlier changeset, VBI must be initialized
correctly on the cx25840 in order for the chip's hardware scaler to
operate correctly.)
It's kind of messy to force the video standard to be set before
initializing VBI (mainly because we can't know what the app really
wants that early in the initialization process). So this patch does
the next best thing: VBI is re-initialized after any point where the
video standard has been set.
Priority: high
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
The cx25840 module requires that its VBI initialization entry point be
called in order for hardware-scaled video capture to work properly -
even if we don't care about VBI. Making this behavior even more
subtle is that if the capture resolution is set to 720x480 - which is
the default that the pvrusb2 driver sets up - then the cx25840
bypasses the hardware scaler. Therefore this problem does not
manifest itself until some other resolution, e.g. 640x480, is tried.
MythTV typically defaults to 640x480 or 480x480, which means that
things break whenever the driver is used with MythTV.
This all has been known for a while (since at least Nov 2006), but
recent changes in the pvrusb2 driver (specifically in regards to
sub-device support) caused this to break again. VBI initialization
must happen *after* the chip's firmware is loaded, not before. With
this fix, 24xxx devices work correctly again.
A related fix that is part of this changeset is that now we
re-initialize VBI any time after we issue a reset to the cx25840
driver. Issuing a chip reset erases the state that the VBI setup
previously did. Until the HVR-1950 came along this subtlety went
unnoticed, because the pvrusb2 driver previously never issued such a
reset. But with the HVR-1950 we have to do that reset in order to
correctly transition from digital back to analog mode - and since the
HVR-1950 always starts in digital mode (required for the DVB side to
initialize correctly) then this device has never had a chance to work
correctly in analog mode! Analog capture on the HVR-1950 has been
broken this *ENTIRE* time. I had missed it until now because I've
usually been testing at the default 720x480 resolution which does not
require scaling... What fun. By re-initializing VBI after a cx25840
chip reset, correct behavior is restored.
Priority: high
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
The variable 'rc' could be used uninitialized in the cx231xx_capture_start
function. Sri informed me that it should be initialized to -1.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
tcm825x_remove is not necessarily called on module exit, it can also be
called when the i2c_adapter is removed. While the i2c adapter might never
be removed on an embedded system, in practice this sensor driver can also
be used in e.g. a USB webcam where this is a perfectly acceptable thing
to do.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Jean-Francois Moine <moinejf@free.fr>
Priority: normal
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
|
|
From: Jean Delvare <khali@linux-fr.org>
There is no point in defining I2C adapter IDs when no code is using
them. As this field might go away in the future, stop using it when
we don't need to.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
The term 'kernel number' is very vague, so replace it with the somewhat more
descriptive term 'device node number'.
In one place the local variable 'nr' was used to create the device node number
of the new device name. This has been replaced with the vdev->num field to
more clearly mark this as being the device node number and not the minor
number.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
video_register_device_index is never actually called, instead the
stream index number is always calculated automatically.
This patch removes this function and simplifies the internal get_index
function since that can now always just return the first free index.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|