summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
AgeCommit message (Collapse)Author
2008-04-02videobuf-vmalloc.c: Fix hack of postponing mmap on remap failureBrandon Philips
In videobuf-vmalloc.c remap_vmalloc_range is failing when applications are trying to mmap buffers immediately after reqbuf. It fails because the vmalloc area isn't setup until the first QBUF when drivers call iolock. This patch introduces mmap_setup to the qtype_ops and it is called in __videobuf_mmap_setup if the buffer type is mmap. In the case of vmalloc buffers this calls iolock, and sets the state to idle. I don't think this is needed for dma-sg buffers and it defaults to a no-op for everything but vmalloc. Signed-off-by: Brandon Philips <bphilips@suse.de> --- linux/drivers/media/video/videobuf-core.c | 29 +++++++----------- linux/drivers/media/video/videobuf-vmalloc.c | 43 +++++++++++++-------------- linux/include/media/videobuf-core.h | 3 + 3 files changed, 35 insertions(+), 40 deletions(-)
2008-04-02videobuf-vmalloc.c: Remove buf_release from videobuf_vm_closeBrandon Philips
Remove the buf_release on vm_close because it will lead to a buffer being released multiple times since all buffers are already freed under the two possible cases: device close or STREAMOFF. Signed-off-by: Brandon Philips <bphilips@suse.de> --- linux/drivers/media/video/videobuf-vmalloc.c | 2 -- 1 file changed, 2 deletions(-)
2008-04-02videobuf: Simplify videobuf_waiton logic and possibly avoid missed wakeupBrandon Philips
Possible missed wakeup- use kernel helpers for wait queues http://www.mail-archive.com/linux-usb-devel@lists.sourceforge.net/msg27983.html Signed-off-by: Brandon Philips <bphilips@suse.de> --- linux/drivers/media/video/videobuf-core.c | 37 ++++++++++++------------------ 1 file changed, 15 insertions(+), 22 deletions(-)
2008-04-02videobuf: Wakeup queues after changing the state to ERRORBrandon Philips
The waitqueues must be woken up every time state changes. Signed-off-by: Brandon Philips <bphilips@suse.de> --- linux/drivers/media/video/videobuf-core.c | 1 + 1 file changed, 1 insertion(+)
2008-04-01Avoid an oops if the board is not fully defined.Steven Toth
From: Steven Toth <stoth@hauppauge.com> Avoid an oops if the board is not fully defined. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2008-03-31 2-int-device.c: add MODULE_LICENSEMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> Now that it's in an own module it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01merge: http://linuxtv.org/hg/~mkrufky/tunerMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-30 make sn9c102_i2c_try_write() staticMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> This patch makes the needlessly global sn9c102_i2c_try_write() static. Signed-off-by: Adrian Bunk <bunk@kernel.org> CC: Luca Risolia <luca.risolia@studio.unibo.it> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-30 proper prototype for zoran_device.c:zr36016_write()Mauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> This patch adds a proper prototype for zr36016_write() in drivers/media/video/zoran_card.h Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01Fix a small bug introduced on a previous changeset.Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01merge: http://www.linuxtv.org/hg/~stoth/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-30pvrusb2-dvb: Fix stuck thread on streaming abortMike Isely
From: Mike Isely <isely@pobox.com> If the device fails to stream, the feed thread will block forever waiting for buffers. But while in this state it was not looking for an exit condition from the driver DVB interface. This caused the thread to jam. Implement a new stop flag (which will be set appropriately) to tell the thread to stop. Signed-off-by: Mike Isely <isely@pobox.com>
2008-03-30tuner-simple: fix broken build dependencyMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> tuner-simple is the only module that uses tuner-types - these will be merged to a single module in the future. For now, build both of them if TUNER_SIMPLE is selected. This fixes the following build warning, if tuner-simple is selected without tuner-types: WARNING: "tuner_count" [tuner-simple.ko] undefined! WARNING: "tuners" [tuner-simple.ko] undefined! Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-03-29HVR950Q Hauppauge eeprom support.Steven Toth
From: Steven Toth <stoth@hauppauge.com> HVR950Q Hauppauge eeprom support. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2008-04-18Add support for Hauppauge HVR950Q/HVR850/FusioHDTV7-USBMauro Carvalho Chehab
From: Steven Toth <stoth@hauppauge.com> Including support for the AU0828 USB Bridge. Including support for the AU8522 ATSC/QAM Demodulator. Including support for the AU8522 ATSC/QAM Demodulator. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-18em28xx: adds proper demod IF for HVR-900Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Aidan Thornton <makosoft@googlemail.com> for helping to test this firmware Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-18em28xx: make some symbols staticMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17Removes a manual mode setupMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> The setup is already done at open(). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: Properly selects digital mode at the right placeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> The driver should be switched to digital mode, when tring to access the frontend or when streaming. This patch provides the correct code to support this feature. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Provide the proper support for switching between analog/digitalMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Before this patch, HVR900/HVR950 were incorreclty going back to analog. The result is that only digital were working. This patch provides the proper setup for analog/digital and tuner callback. It also properly resets analog into a sane state at open(). Thanks to Steven Toth <stoth@linuxtv.org> and Michael Krufky <mkrufky@linuxtv.org> for helping to set the proper parameters to GPO/GPIO em2883 ports. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-core: fix some debug printk's that wrongly received KERN_INFO.Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Those printk's were adding more info to a line that were already being printed. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: rename registersMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Now, all registers will follow the same convension: EM28XX_R<reg_number>_<reg_name> This allows to associate a register with its value, and also with a canonical name. Also, registers that are specific to a given chip were renamed accordingly, as EM2800_foo (for 2800 only registers) or EM2880_foo (for registers that started to appear on em2880). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-cards: use register names for GPIO/GPOMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Before this patch, registers 0x04 and 0x08 were referenced by its value. This is bad, since makes harder for someone to understand what this is doing. This patch renames those two registers into an appropriate name. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Move registers to a separate fileMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> em28xx.h contains lots of different stuff inside. The better is to break it on some files. This patch removes the register names, moving them to a separate file. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Select reg wait time based on chip IDMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This is more conservative than just removing the msleep() from em28xx_write_regs_req(), since some old hardware may still need it. So, it will remove the sleep time only for those chips where this removal were tested. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-core: speed-up firmware loadMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> em28xx-core.c: - Remove sleep in i2c message routine which slows down i2c by a factor 10x. Load time for BASE firmware went from 13s to .973s Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: Some cleanups and fixesMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> em28xx-dvb.c: - Remove unneeded xc3028_ctrl structure. The driver automatically preserves the previous value tuner-xc2028.c: - Make the return type for xc2028_get_reg signed, since all of the callers are looking for "< 0" to detect errors. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17CodingStyle fixesMauro Carvalho Chehab
From: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: Program GPO as wellMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17tuner-xc3028: Avoids too much firmware reloadsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> xc3028_sleep function is being used with a different meaning. This should be called only before doing S1/S3 sleep. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: Fix analog modeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> The analog entries are wrong. Fix it. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: don't use videobuf-dvbMauro Carvalho Chehab
From: Aidan Thornton <makosoft@googlemail.com> Modifies em28xx-dvb not to use videobuf-dvb, but instead to include the code for registering dvb devices locally and use the URB management code in the em28xx driver directly. DVB data streaming should now work. Signed-off-by: Aidan Thornton <makosoft@googlemail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: generalise URB setup code.Mauro Carvalho Chehab
From: Aidan Thornton <makosoft@googlemail.com> Move the URB setup and management code to em28xx-core.c and generalise it slighlty so that the DVB code can use it. Signed-off-by: Aidan Thornton <makosoft@googlemail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: add support for the HVR-900Mauro Carvalho Chehab
From: Aidan Thornton <makosoft@googlemail.com> Adds the correct GPIOs and demod attach code for the HVR-900 Signed-Off-By: Aidan Thornton <makosoft@googlemail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Sets frequency when changing to analog modeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This will make tuner-xc2028 to change to analog, if needed. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: videobuf callbacks are waiting for em28xx_fhMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Devin Heitmueller <devin.heitmueller@gmail.com> for pointing this issue. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: several fixes on gpio programmingMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> em28xx-cards.c: - Fix reversed val/rst values in both analog_gpio and digital_gpio vectors - Fix crash that would was occurring during every analog startup while looping over gpio_ctl - Remove what appears to be a redundant setting of gpio_ctl->val - Don't use OREN538 demodulation for the HVR-950 (prevents ATSC scanning from working) em28xx-dvb.c: - Tuner should be in digital mode when issuing the reset - Add copyright - Change struct definition (corresponds to fix in em28xx-cards.c for gpio_ctl looping) Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: share the same xc3028 setup for analog and digital modesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Devin Heitmueller <devin.heitmueller@gmail.com> and Aidan Thornton" <makosoft@googlemail.com> for pointing some errors with the previous scenario. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx-dvb: Add support for HVR950Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This patch adds DVB support for Hauppauge HVR950. Thanks to Michael Krufky <mkrufky@linuxtv.org> for getting those values. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17Improve generic support for setting gpio valuesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> em28xx based devices with xc3028 may require some specific gpio values. This patch adds a generic handling for such values. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Fix KconfigMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Some devices have msp3400 audio decoder chip. Selects it, if em28xx. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: add a module to handle dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This patch adds em28xx-dvb. This driver is highly based on cx88-dvb and saa7134-dvb. This code currently loads and unloads successfully. However, some changes are needed to properly support the mpeg streams and to setup em28xx to work on DVB mode. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-16drivers/media/video: use time_before, time_before_eq, etcMauro Carvalho Chehab
From: Julia Lawall <julia@diku.dk> The functions time_before, time_before_eq, time_after, and time_after_eq are more robust for comparing jiffies against other values. A simplified version of the semantic patch making this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @ change_compare_np @ expression E; @@ ( - jiffies <= E + time_before_eq(jiffies,E) | - jiffies >= E + time_after_eq(jiffies,E) | - jiffies < E + time_before(jiffies,E) | - jiffies > E + time_after(jiffies,E) ) @ include depends on change_compare_np @ @@ @ no_include depends on !include && change_compare_np @ @@ #include <linux/...> + #include <linux/jiffies.h> // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-16 ibmcam: improve support for the IBM PC Camera ProMauro Carvalho Chehab
From: David Hilvert <dhilvert@gmail.com> This patch modifies Dmitri's original ibmcam driver for Linux to improve support for the IBM PC Camera Pro. It may also offer improved support for other models classified by the driver as 'Model 3', such as the IBM PC Camera Pro Max. See http://auricle.dyndns.org/xvp610/ Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-16zoran: v4l2_jpegcompression is being redefined inside zoran.hMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-15soc-camera: re-sync with -git treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> The proper fix were applied at -git. Re-apply the missing parts with the new base. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-15Fix build that occurs when CONFIG_VIDEO_PMS=y and VIDEO_V4L2_COMMON=mMauro Carvalho Chehab
This patch removes zoran checks for VIDEO_V4L2, since this API is always present, when V4L is selected. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-15> Please, re-generate the affected V4L/DVB patches, without the PXA part. I'llMauro Carvalho Chehab
> keep those changes on hold, until I get a confirmation that the PXA side is > committed on mainstream. Reverted several changes on soc_camera From: Mauro Carvalho Chehab <mchehab@infradead.org> As asked by Guennadi: Mauro, please, drop commits 2f4a87873f13924871d7bb82e27d02d0e16fbe02 and 9b7d577c508e7765860e599c0e98d4ac3fbaa2aa from your tree and replace 5f1e5244ee6b9f139a262d5e7a930a41488afbbe with the version below. Due to that change, that happened on v4l-dvb -git tree, several patches broke. This patch reverts all broken stuff, keeping this tree in sync with v4l-dvb -git tree. I'm waiting for Guennadi to fix the broken patches and ask me to pull them again. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-15 soc-camera: Remove redundant returnMauro Carvalho Chehab
From: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> This obviously redundant return has been in the driver from the very first version. Remove it. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-13 Fix concurrent read from /proc/videocodecsMauro Carvalho Chehab
From: Alexey Dobriyan <adobriyan@gmail.com> Observation one: ->write_proc and ->data assignments aren't needed. Removed. Observation two: codecs lists are unprotected. Patch doesn't fix this. Observation three: /proc/videocodecs printout is done to temporary _global_ buffer which is freed in between. Consequently, two users hitting this file can screwup each other. Steps to reproduce: modprobe videocodec while true; do cat /proc/videocodecs &>/dev/null; done & while true; do cat /proc/videocodecs &>/dev/null; done & The fix is switching to seq_files, this removes code, especially some line-length "logic". Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Acked-by: Jan Kara <jack@suse.cz> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>