Age | Commit message (Collapse) | Author |
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mike Isely <isely@pobox.com>
With the removal of the V4L1 API, we also lose the functionality
provided by the video_get_drvdata() and video_set_drvdata() functions.
These functions had made it possible for a driver to stuff a pointer
to its own context inside the V4L device handle context - a useful
ability. However now that's going away, so the driver is on its own
to find its context when called into from a more generic context
(e.g. the open() entrypoint). The changes in this patch implement a
global context mapping array, an array index back-reference per
instance, and a new global mutex to protect the entire thing. The
array is indexed by the minor device id of the V4L device inode. All
this fun is present to work around what used to be roughly 4 lines of
code. Sigh...
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Added necessary header file in order for kconfig build options to be
considered at compile time. Without this patch all options will always
be disabled, regardless of whether they are selected or not.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Mike Isely <isely@pobox.com>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
This patch removes the explicit definition of the cx23416 encoder
firmware image filename, in favor of CX2341X_FIRM_ENC_FILENAME
as defined in cx2341x.h
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Acked-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Remove logic which tries to infer additional video standards based on
what was reported by tveeprom.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Two modules had been added to pvrusb2. We need to compile them...
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Surround a 24xxx-specific data structure in pvrusb2 with the
appropriate CONFIG option so that it won't be used if 24xxx support is
not enabled.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
If the pvrusb2 driver detects a PAL-capable device, add PAL-N to the
list of supported standards.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Modify the I2C filter for cx25840 such that it stays around rather
than going away after the initial sanity check has passed.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Previously when the pvrusb2 driver loaded, it immediately did a
request_module() on all possible I2C support modules it might need.
But that is overkill, since the actual modules needed is a subset
depending on the model type. This change delays module request until
the hardware shows up, and then it only requests the modules that make
sense for the specific hardware.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Insert an I2C transaction filter for the cx25843 chip on new model
24xxx hardware. This filter attempts to stabilize the part by
limiting how the part can be accessed. The filter won't allow anyone
to touch the chip until an attempt is made to specifically read the
chip's revision registers. If that read fails (which can happen if
the chip wedges itself), a warning is logged and the driver is
rendered useless. If the read succeeds, then the filter deletes
itself and normal access to the part takes place. This filter should
keep msp3400 away from the chip (a failure scenario which otherwise
frequently ends badly for the kernel, due to suspected misbehaviors
within the msp3400 module).
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Fix minor problem where wrong I2C address was being used to execute
the second phase of an eeprom fetch.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Implement a rudimentary filter mechanism in the I2C adapter within the
pvrusb2 driver. It is possible now to interpose a filtering function
on a per-target basis. This function can intercept the requested
transaction and perform various manipulations on behalf of the
client. With this mechanism is also a filter inserted for wm8775 that
causes all probe attempts to the chip to always succeed (just return
success on probe attempts without touching the hardware). This neatly
solves the problem in the PVR USB2 hardware where we can't seem able
to probe the chip at all.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
The correct mutex header to grab is linux/mutex.h, and while
asm/mutex.h seems to work for x86 architecture, it has been reported
not to work for amd64 architecture. So let's just do this right.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Tweak cx23416 configuration to permit xawtv to work again. This
problem was introduced when the model 24xxx hardware support was
added. The fix here repairs the problem while and is valid for both
old and new hardware.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
PVR USB2 models that are NTSC capable are also able to handle the
Japanese variant (according to the model info on the device's white
sticker). However tveeprom doesn't report this. Work around this for
now (and consider getting tveeprom fixed later).
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Subsystem bits are defined as ordinal values now instead of bits in a
mask.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Clean up logic for handling video standards in the pvrusb2 driver.
New implementation should be able to handle all possible V4L defined
video standards now, and it should be far easier to maintain this
going forward.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Rework controls internal architecture. Rework video standard
handling. This is a major change.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
The pvrusb2 driver does not need 'drivers/media/video' in its include path.
This patch removes '$(src)/..' from the Makefile
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Add standard lines before/after the LOG_STATUS output: this allows easy
reading and parsing from the kernel log with e.g. ivtvctl (to be added
to v4l-dvb at a later date).
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
merge:
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mike Isely <isely@pobox.com>
Since there are lingering stability problems with support of the newer
PVR USB2 model 24xxx series hardware, I have isolate those changes
with a config option. This commit leaves that option off.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Renamed various msp3400 routing defines to be more consistent and less
confusing. Esp. the MSP_DSP_OUT defines were confusing since it is really
a DSP input.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Make permanent the removal of the call to pvr2_reset_ctl_endpoints().
It is known positively now that this step was both unneeded and caused
harm to communication with the hardware during driver initialization.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Arrange things in pvrusb2 so that the sysfs-using component doesn't
have to be compiled in. Control this with new
CONFIG_VIDEO_PVRUSB2_SYSFS variable. This will allow the driver to
still be used even if sysfs has not been compiled into the kernel.
Also arrange things similarly in pvrusb2 for the debug interface,
which is something that normally should not need to be built but is
valuable for bug chasing. This is controlled now with
CONFIG_VIDEO_PVRUSB2_DEBUGIFC.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
This header is used by multiple drivers, so keep it in include/media so all
drivers can access it.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Mike Isely <isely@pobox.com>
Initialization failures in the pvrusb2 driver seem to coincide with
attempts to reset parts of the USB core related to this device. This
really should not be needed and I suspect it may be doing more harm
than good.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Enhance I2C debugging in pvrusb2 such that I2C data is printed when
transactions are reported.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
This problem was introduced by the previous change. It appears that
if you try to create to sysfs entries of the same name in one
directory, then sysfs gets very angry and causes a kernel oops when
you later try to tear down those nodes. By not allocating enough
space to hold the name, we were inadvertently causing a sysfs control
file name collision...
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Rework entire internal controls interface to eliminate the need for
visibly defined control IDs which must otherwise be translated by the
V4L2 public interface. As part of this work, internal structures
which mimiced various V4L2 structures (video standards, audio modes)
have been reworked to actually use the native structures. This
triggered a _significant_ rework for how video standards are dealt
with (and what is in place now should be much more flexible and
forgiving for various handling less-common video standards).
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
When a V4L app queries a pvrusb2 control, make sure we also tell it
what the control's default value is.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Eliminate the need to track the number pvrusb2 CIDs at compile time
from within the pvrusb2 driver. This is part of a control structure
cleanup.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Some new sources have been added into pvrusb2 to deal with cx25840 and
wm8775 modules in V4L. Need to add them to the build.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Request new modules that pvrusb2 may need. This is a stop-gap; we
need to do a better job of this. Also reorder the requests in the
extremely feeble hope that we can avoid some initialization races in
the hardware.
Signed-off-by: Mike Isely <isely@pobox.com>
|
|
From: Mike Isely <isely@pobox.com>
Implement new logic in pvrusb2 to operate wm8775, which is needed for
new model 24xxx hardware which has a wm8775 inside it (which is used
to digitize audio from composite and s-video input).
Signed-off-by: Mike Isely <isely@pobox.com>
|