summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/em28xx
AgeCommit message (Collapse)Author
2009-06-30merge: http://www.kernellabs.com/hg/~dheitmueller/em28xx-terratec-zl10353/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-30merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-miscMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-30Remove a bogus codeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-30em28xx: add other video formatsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Add suppport for the teste RGB565 format (16 bits/pixel). Currently, webcam support works only at RGB565, at 640x480. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-29em28xx: add support for Silvercrest WebcamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> This webcam uses a em2710 chipset, that identifies itself as em2820, plus a mt9v011 sensor, and a DY-301P lens. It needs a few different initializations than a normal em28xx device. Thanks to Hans de Goede <hdegoede@redhat.com> and Douglas Landgraf <dougsland@redhat.com> for providing the acces for the webcam during this weekend, I could make a patch for it while returning back from FISL/Fudcom LATAM 2009. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-26em28xx: enable new-style i2c API for kernels >= 2.6.26, not 2.6.22.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-06-22em28xx: Fix tuning for Terratec Cinergy T XS USB (zl10353 version)Devin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Fix the code so that the zl10353 version of the Terratec Cinergy T XS USB starts working again. This includes fixing what must have been a typo in the GPIO definition for the digital side of the board, and setting of the disable_i2c_gate_ctrl property for the zl10353 config, so that the i2c bus doesn't get wedged the first time something tries to close the gate. Also, add a printk() making clear that the mt352 version still isn't supported. This issue is still being actively debugged, but in the meantime at least the dmesg output will show a very clear error... Thanks to Jelle de Jong for providing sample hardware to test with. Thanks to Simon Kenyon for testing various patches and providing SSH access to his environment so I could debug with access to a valid signal source. Priority: high Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Cc: Jelle de Jong <jelledejong@powercraft.nl> Cc: Simon Kenyon <simon@koala.ie>
2009-06-20em28xx: add Remote control support for EVGA inDtubeDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add an IR profile for the EVGA inDtube remote control (which is an NEC type remote) Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-06-18em28xx: add support for EVGA inDtubeDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add support for the EVGA inDtube. Both ATSC and analog side validated as fully functional. Thanks to Jake Crimmins from EVGA for providing the correct GPIO info. Thanks to Alan Hagge for doing all the device testing. Thanks to Greg Williamson for providing hardware for testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Cc: Jake Crimmins <jcrimmins@evga.com> Cc: Alan Hagge <ahagge@gmail.com> Cc: Greg Williamson <cheeseboy16@gmail.com>
2009-06-18em28xx: make sure the analog GPIOs are set if we used a card hintDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> In cases where the board had a default USB ID, we would not indentify the board until after the call to em28xx_set_mode(). As a result, for those boards the analog GPIOs were not being set before probing the i2c bus for devices (the probe would occur with the GPIOs being all high). Make a call to em28xx_set_mode() so that the GPIOs are set properly before probing the i2c bus for devices. This problem was detected with the EVGA inDtube, where the tvp5150 is not powered on unless GPIO1 is pulled low. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-06-16merge: http://kernellabs.com/hg/~dheitmueller/em28xx-no-audioMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-09em28xx: don't create audio device if not supportedDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> In cases where the device does not actually provide a USB audio class *or* vendor audio, do not load the driver that provides vendor audio support (such as the KWorld 2800d). Otherwise, the /dev/audio1 device file gets created and users get confused. Also, reworks the logic a bit so that we don't try to inspect the register content if the register read failed entirely. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-06-06em28xx: Add Kworld 315 entryDouglas Schilling Landgraf
From: Franklin Meng <fmeng2002@yahoo.com> Added an entry for Kworld 315 (for while, dvb only) Priority: normal Signed-off-by: Franklin Meng <fmeng2002@yahoo.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-06-06em28xx: set up tda9887_conf in em28xx_card_setup()Douglas Schilling Landgraf
From: Franklin Meng <fmeng2002@yahoo.com> Added tda9887_conf set up into em28xx_card_setup() Priority: normal Signed-off-by: Franklin Meng <fmeng2002@yahoo.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-06-06merge: http://kernellabs.com/hg/~dheitmueller/misc-fixes-2Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-06-01merge: http://linuxtv.org/hg/~tap/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-30em28xx: Use v4l bounding/alignment functionTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The v4l function has a better algorithm for aligning image size. It appears that the em2800 can only scale by 50% or 100%, i.e. the only heights supported might be 240 and 480. In that case the old code would set any height other than 240 to 480. Request 240 get 240, but request 239 and then you get 480. Change it to round to the nearest supported value. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-05-28em28xx: Fix for Slow Memory LeakDouglas Schilling Landgraf
From: Robert Krakora <rob.krakora@messagenetsystems.com> Test Code: (Provided by Douglas) v4l-dvb/v4l2-apps/test/stress-buffer.c The audio DMA area was never being freed and would slowly leak over time as the v4l device was opened and closed by an application. Thanks again to Douglas for generating the test code to help locate memory leaks!!! Priority: normal Signed-off-by: Robert Krakora <rob.krakora@messagenetsystems.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-05-27em28xx: provide module option to disable USB speed checkDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add an em28xx module option that allows a user to override the USB speed check. Intended for advanced users who understand the consequences of trying to use the device with a 12Mbps bus. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-05-27em28xx: Add support for the K-World 2800dDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Make the KWorld 2800d work properly. In this case, that means making the profile more generic so that it works for both the Pointnix Intra-Oral USB camera and the KWorld device. The device provides the audio through a pass-thru cable, so we don't need an actual audio capture profile (neither the K-World device nor the Pointnix have an onboard audio decoder). Thanks to Paul Thomas for providing sample hardware. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Cc: Paul Thomas <pthomas8589@gmail.com>
2009-05-27em28xx: Don't let device work unless connected to a high speed USB portDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> The em28xx basically just doesn't work at 12 Mbps. The isoc pipe needs nearly 200 Mbps for analog support, so users would see garbage video, and on the DVB/ATSC side scanning is likely to work but if the user tried to tune it would certainly appear to have failed. It's better to fail explicity up front and tell the user to plug into a USB 2.0 port, than to let the driver load and the user have weird problems with tuning and garbage video. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-05-27Building system: Restore compilation with kernels older than 2.6.29Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Mostly due to ir-kdb-i2c, but also due to two new drivers, compilation with kernels older than 2.6.29 were broken. This quick and dirty changeset, generated semi-automatically, restaures backport to the subsystem by adding lots of #ifs. It is possible to write a much more small changeset that would restore backport without adding so many ifs, but, due to the lack of time, this will also solve it. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-13ir-kbd-i2c: Use initialization dataMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> For specific boards, pass initialization data to ir-kbd-i2c instead of modifying the settings after the device is initialized. This is more efficient and easier to read. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-13ir-kbd-i2c: Switch to the new-style device binding modelMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> Let card drivers probe for IR receiver devices and instantiate them if found. Ultimately it would be better if we could stop probing completely, but I suspect this won't be possible for all card types. There's certainly room for cleanups. For example, some drivers are sharing I2C adapter IDs, so they also had to share the list of I2C addresses being probed for an IR receiver. Now that each driver explicitly says which addresses should be probed, maybe some addresses can be dropped from some drivers. Also, the special cases in saa7134-i2c should probably be handled on a per-board basis. This would be more efficient and less risky than always probing extra addresses on all boards. I'll give it a try later. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-13ir-kbd-i2c: Don't use i2c_client.name for our own needsMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> In the standard device driver binding model, the name field of struct i2c_client is used to match devices to their drivers, so we must stop using it for internal purposes. Define a separate field in struct IR_i2c as a replacement, and use it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-24Add support for Terratec Grabster AV350Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-23em28xx: add Terratec GrabbyMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-16em28xx: properly set packet size based on the device's eeprom configuration.Devin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> The em28xx actually has a register that tells the driver what the maximum packet size is (based on a value programmed into the eeprom). Make use of that register instead of assuming a hardcoded value of 564 (since 564 is not correct for devices that do QAM such as the KWorld 340u). Note that for now the em2874 code isn't there, falling back to the 564 value, however this is not a problem since there are not any em2874 based devices in the current v4l-dvb tree). Thanks to Jarod Wilson for detecting the initial problem and figuring out that the isoc configuration was wrong for his device. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Cc: Jarod Wilson <jarod@wilsonet.com>
2009-04-14backport commit 758021bfa9ea25c58e62d2f68512628b19502ce7Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Author: Takashi Iwai <tiwai@suse.de> Date: Mon Jan 12 15:17:09 2009 +0100 drivers/media: Convert to snd_card_create() Convert from snd_card_new() to the new snd_card_create() function. While here, backport also cx231xx-audio upstream changes for using snd_card_create(). kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-04-09em28xx: fix typo em28xx_errdev messageDouglas Schilling Landgraf
From: Filipe Rosset <rosset.filipe@gmail.com> Fix typo usbtransfer->usb transfer on em28xx_errdev message. Priority: normal Signed-off-by: Filipe Rosset <rosset.filipe@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-04-09em28xx: Add EmpireTV board supportDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added EmpireTV entry. Thanks to Xwang <xwang1976@email.it> to provide data for this board. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-04-05merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-04-05em28xx: use usb_interface.dev for v4l2_device_registerMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-04-02v4l2-subdev: change s_routing prototypeHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> It is no longer needed to use a struct pointer as argument, since v4l2_subdev doesn't require that ioctl-like approach anymore. Instead just pass the input, output and config (new!) arguments directly. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-31em28xx: convert to v4l2_subdevDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Converted em28xx driver to v4l2_subdev. Thanks to Hans Verkuil <hverkuil@xs4all.nl> for helping this conversion. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-04-01v4l2-common: add explicit v4l2_device pointer as first arg to ↵Hans Verkuil
new_(probed)_subdev From: Hans Verkuil <hverkuil@xs4all.nl> The functions v4l2_i2c_new_subdev and v4l2_i2c_new_probed_subdev relied on i2c_get_adapdata to return the v4l2_device. However, this is not always possible on embedded platforms. So modify the API to pass the v4l2_device pointer explicitly. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-04-01v4l2-subdev: move s_std from tuner to core.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> s_std didn't belong in the tuner ops. Stricly speaking it should be part of the video ops, but it is used by audio and tuner devices as well, so it is more efficient to make it part of the core ops. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-04-01v4l2-subdev: move s_standby from core to tuner.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> s_standby is only used to put the tuner in powersaving mode, so move it from core to tuner. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-22em28xx: fix oops on ARM platform when allocating transfer buffersDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add missing URB_NO_TRANSFER_DMA_MAP flag, since the use of consistent memory is not permitted for DMA on the ARM platform. Thanks to Paul Thomas <pthomas8589@gmail.com> for providing sample ARM hardware that was experiencing the oops (tested on the at91rm9200 based LinuxStamp). Thanks to David Brownell <david-b@pacbell.net> for providing insight into the ARM memory architecture. Priority: high Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-22em28xx: add remote control definition for HVR-900 (both versions)Devin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> The HVR-900 did not have a remote control defined, so it would not work. Add the line for both versions of the product. Thanks to Jens-Michael Hoffmann (#linuxtv user "jmho") for pointing out the issue and testing the patch. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-07em28xx: Prevent general protection fault on rmmodMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> The removal of the timer which polls the infrared input is racy. Replacing the timer with a delayed work solves the problem. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-11Revert the last changeset, since there are a rev 2 of those changesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-05Fix race in infrared polling on rmmodMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> The race on rmmod I just fixed in cx88-input affects 3 other drivers. Fix these the same way. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-08em28xx-dvb: Remove an unused headerMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-04em28xx: enable Compro VideoMate ForYou soundMauro Carvalho Chehab
From: Vitaly Wool <vital@embeddedalley.com> Compro VideoMate uses an external audio DSP chip, controlled via tvaudio module (tda9874a). This patch improves em28xx infrastructure to support an external audio processor and fixes the Compro VideoMate entry to work with it. Signed-off-by: Vitaly Wool <vital@embeddedalley.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-03compat: rename struct delayed_work to work_struct on pre-2.6.20Trent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> In v2.6.19-rc6-118-g52bad64 struct work_struct was changed to be only for non-delayed work and struct delayed_work was created for delayed work. Instead of putting ifdefs in the drivers, we use compat.h to rename delayed_work to work_struct on pre-2.6.20 kernels. This will only be a problem if some driver decides to create identifiers named both work_struct and delayed_work in the same scope. There is one driver that has something named work_struct and none with anything named delayed_work, so I don't think will be a problem for as long as this compat code sticks around. Priority: normal Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2009-02-25em28xx: Add Kaiser Baas Video to DVD maker supportDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added usb vendor/product id for Kaiser Baas Video to DVD maker. Thanks to Trevor Campbell <tca42186@bigpond.net.au> for providing all data and tests needed to add this card to em28xx driver. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-25em28xx-cards: Add SIIG AVTuner-PVR boardDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added SIIG AVTuner-PVR to the right entry. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-25em28xx-cards: remove incorrect entryDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Removed EM2821_BOARD_PROLINK_PLAYTV_USB2 entry. This entry has a incorrect tuner set. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-02-19em28xx: register device to soundcard for sysfsMauro Carvalho Chehab
From: Nicola Soranzo <nsoranzo@tiscali.it> As explained in "Writing an ALSA driver" (T. Iwai), audio drivers should set the struct device for the card before registering the card instance. This will add the correct /sys/class/sound/cardN/device symlink, so HAL can see the device and ConsoleKit sets its ACL permissions for the logged-in user. For em28xx audio capture cards found e.g. in Hauppauge WinTV-HVR-900 (R2), this patch fixes errors like: ALSA lib pcm_hw.c:1429:(_snd_pcm_hw_open) Invalid value for card Error opening audio: Permission denied when running mplayer as a normal user. Priority: normal Signed-off-by: Nicola Soranzo <nsoranzo@tiscali.it> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>