summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/pvrusb2
AgeCommit message (Collapse)Author
2006-04-20Change pvrusb2 module request behavior to be more conservativeMike Isely
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>
2006-04-20Implement I2C filter in pvrusb2 for cx25840Mike Isely
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>
2006-04-20Fix pvrusb2 eeprom retrieval bugMike Isely
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>
2006-04-20Implement I2C transaction filtering in pvrusb2Mike Isely
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>
2006-04-20Include linux/mutex.h not asm/mutex.h in pvrusb2Mike Isely
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>
2006-04-20cx23416 fix in pvrusb2 to allow xawtv to function againMike Isely
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>
2006-04-20Make NTSC-Mj available in pvrusb2 when hardware reports NTSC-M availabilityMike Isely
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>
2006-04-20Change pvrusb2 subsystem definition bits for easier handlingMike Isely
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>
2006-04-19Another rework of pvrusb2 video standard handlingMike Isely
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>
2006-04-19Rework pvrusb2 internal controls implementationMike Isely
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>
2006-04-19Get rid of redundant inclusion of videodev2.hMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-04-11Merge: from V4L1 treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-05kbuild: VIDEO_PVRUSB2_24XXX must select VIDEO_CX25840 and VIDEO_WM8775Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-04-05kbuild: drivers/media/video/pvrusb2: remove $(src) from include pathMichael Krufky
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>
2006-04-02Delimit LOG_STATUS output with standardized linesHans Verkuil
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>
2006-04-02Merge from http://linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> merge: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-01Split out PVR USB2 model 24xxx hardware support to a config optionMike Isely
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>
2006-04-01Make msp3400 routing defines more consistentHans Verkuil
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>
2006-03-31Kconfig: add menu options for pvrusb2 sysfs and debug interface supportMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2006-03-30Clean up comments in pvrusb2-eeprom.cMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-30pvrusb2 driver initialization tweakMike Isely
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>
2006-03-30Make parts of pvrusb2 compile-time options (sysfs and debugifc)Mike Isely
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>
2006-03-31Move cx2341x.h to media/cx2341x.hHans Verkuil
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>
2006-03-29Don't reset USB control state during pvrusb2 initializationMike Isely
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>
2006-03-29Enhance I2C debugging in pvrusb2Mike Isely
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>
2006-03-28Fix pvrusb2 kernel oopsMike Isely
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>
2006-03-28Major pvrusb2 rework to remove translationsMike Isely
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>
2006-03-26Propagate default control values out to V4L apps from within pvrusb2Mike Isely
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>
2006-03-26Get rid of static PVR2_CID_COUNT in pvrusb2Mike Isely
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>
2006-03-25Update pvrusb2's cx25840 module handling to use new routing APIMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Include additional pvrusb2 object files in buildMike Isely
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>
2006-03-25Merge from masterMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25pvrusb2 request_module() adjustmentsMike Isely
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>
2006-03-25Integrate pvrusb2 with wm8775Mike Isely
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>
2006-03-25Implement operation of cx2584x from within pvrusb2Mike Isely
From: Mike Isely <isely@pobox.com> This adds new logic to integrate the pvrusb2 driver with the V4L cx25840 module. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Adjust cx23416 operation in pvrusb2 to work with model 24xxx hardwareMike Isely
From: Mike Isely <isely@pobox.com> This applies some changes to the logic which controls the cx23416 in pvrusb2. This is required in order for newer model 24xxx hardware to operate correctly and is backwards compatible with older hardware. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Advertise I2C functionality in pvrusb2 that's friendly to wm8775Mike Isely
From: Mike Isely <isely@pobox.com> Adjust pvrusb2 functionality bits so that wm8775 will attach to the adapter. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Add more trace print for central I2C module commands in pvrusb2Mike Isely
From: Mike Isely <isely@pobox.com> This just adds some more trace print to make possible tracking of I2C commands being broadcast to support modules. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Adjust pvrusb2 stream on/off control handlingMike Isely
From: Mike Isely <isely@pobox.com> Code in pvrusb2 which issues stream on/off commands was previously in a place specific to the saa7115. This change moves that function to a place where it can be used for other things (like controlling a future cx25840). Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25pvrusb2 control commit handling fixMike Isely
From: Mike Isely <isely@pobox.com> When a control change is committed to the driver, certain other parts of the driver must be updated to track the change and deal with the effects of that change. Some controls in the driver use a function pointer to implement the commit, however we weren't doing the tracking there and we should have been. This is the fix. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Fix pvrusb2 bug which prevented proper operation of tda9887Mike Isely
From: Mike Isely <isely@pobox.com> The pvrusb2 driver was not correctly identifying and handling the tda9887 module. This is the bug fix (code had been ifdef'ed out which should not have been). Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25New debug code in pvrusb2 for tracking requestsMike Isely
From: Mike Isely <isely@pobox.com> Implement pvrusb2 code normally compiled-out which can print useful information about commands issued to the hardware. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Implement method in pvrusb2 to force the decoder to resetMike Isely
From: Mike Isely <isely@pobox.com> This change threads logic through the pvrusb2 to make it possible to command the decoder chip to reset itself. The method is decoder-agnostic; the part of the pvrusb2 which control's that chip's module has to provide the final hook. This just lays the foundation. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Fix pvrusb2 compilation warning when building for amd64Mike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Fix screwed up indentation in pvrusb2-sysfs.cMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Use hex for printing I2C addresses in pvrusb2Mike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Tweaks to pvrusb2 init sequenceMike Isely
From: Mike Isely <isely@pobox.com> Rename a pvrusb2 function to reflect its true meaning, and tweak the driver initialization sequence so that the I2C adapter isn't started until after the hardware has been given a powerup command. Signed-off-by: Mike Isely <isely@pobox.com>
2006-03-25Added video routing support to pvrusb2Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2006-03-23Merge from mkrufky pvrusb2 treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> merge: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-03-19Implement V4L2_TUNER_MODE_LANG1_LANG2 audio modeHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Add a new audio mode V4L2_TUNER_MODE_LANG1_LANG2 (used by VIDIOC_G/S_TUNER). This mode allows the user to select both languages of a bilingual transmission, one language on the left, one on the right audio channel. If there is no bilingual transmission, or it is not supported, then this mode should act like V4L2_TUNER_MODE_STEREO. This mode is introduced for PVR-like drivers where it is useful to be able to record both languages of a bilingual broadcast. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>