summaryrefslogtreecommitdiff
path: root/drivers/media
AgeCommit message (Collapse)Author
2014-11-03[media] smipcie: SMI pcie bridge driver for DVBSky S950 V3 dvb-s/s2 cardsnibble.max
There is a new PCIe bridge chip(from SMI) used in DVBSky V3 seris cards, include S950 V3 and S952 V3 cards. SMI pcie bridge chip is PCIe 1.1 compliant, supports MSI feature. Main interface blocks: 1>Two DVB transport stream input ports(ts0,ts1). 2>Two I2C master bus(i2c0, i2c1). 3>IR controller. 4>reset pins and other GPIOs. DVBSky S950 V3 card has a single channel of dvb-s/s2. 1>Frontend: tuner: M88TS2022, demod: M88DS3103 2>PCIe bridge: SMI PCIe The current driver does not support SMI IR function. [mchehab@osg.samsung.com: fix Makefile to find m88ts2022.h] Signed-off-by: Max nibble <nibble.max@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] coda: Unregister v4l2 upon alloc_workqueue() errorFabio Estevam
If alloc_workqueue() fails, we should go to the 'err_v4l2_register' label, which will unregister the v4l2 device. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] coda: Call v4l2_device_unregister() from a single locationFabio Estevam
Instead of calling v4l2_device_unregister() in multiple locations within the error paths, let's call it from a single location to make the error handling simpler. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx23885-dvb: Fix some issues at the DVB error handlingMauro Carvalho Chehab
X-Patchwork-Delegate: m.chehab@samsung.com As pointed by smatch: drivers/media/pci/cx23885/cx23885-dvb.c:1066 dvb_register() error: we previously assumed 'fe0->dvb.frontend' could be null (see line 1060) drivers/media/pci/cx23885/cx23885-dvb.c:1990 cx23885_dvb_register() error: we previously assumed 'fe0' could be null (see line 1975) What happens is that the error handling logic when a frontend register fails sometimes keep doing the work, as if it didn't fail. This could potentially cause an OOPS. So, simplify the logic a little bit and return an error if frontend fails before trying to setup VB2 queue. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx23885: add support for TechnoTrend CT2-4500 CIOlli Salonen
TechnoTrend CT2-4500 CI is a PCIe device with DVB-T2/C tuner. It is similar to DVBSky T980C, just with different PCI ID and remote controller. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] tveeprom: Update list of chips and extend serial number to 32bitsMatthias Schwarzott
The update was supplied directly by PCTV. Add tuner ids 182-188. Add audproc ids 45-52. Add decoder chip ids 43-53. Use 32bits for the serial number. Signed-off-by: Matthias Schwarzott <zzam@gentoo.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: Improve the log messageMauro Carvalho Chehab
Unfortunately, on devices that have multiple interfaces, udev->dev points to the parent device (usb) instead of the cx231xx specific one. Due to that the logs don't look too nice, as they'll print messages as if they were produced by USB core: usb-1-2: New device Conexant Corporation Polaris AV Capturb @ 480 Mbps (1554:5010) with 7 interfaces Instead of using the name of the parent device, let's use the name of the first cx231xx interface for all cx231xx sub-modules. With this path, the logs will be nicer: cx231xx 1-2:1.1: New device Conexant Corporation Polaris AV Capturb @ 480 Mbps (1554:5010) with 7 interfaces Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: simplify I2C scan debug messagesMauro Carvalho Chehab
Don't need to show when it starts or stops. Just print lines when devices are found. After the changes, the output for i2c scan will be like: usb 1-2: i2c scan: found device @ port 0 addr 0x40 [???] usb 1-2: i2c scan: found device @ port 0 addr 0x60 [colibri] usb 1-2: i2c scan: found device @ port 0 addr 0x88 [hammerhead] usb 1-2: i2c scan: found device @ port 0 addr 0x98 [???] usb 1-2: i2c scan: found device @ port 3 addr 0xa0 [eeprom] usb 1-2: i2c scan: found device @ port 2 addr 0x60 [colibri] usb 1-2: i2c scan: found device @ port 2 addr 0xc0 [tuner] usb 1-2: i2c scan: found device @ port 4 addr 0x20 [demod] Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: too much changes. Bump version numberMauro Carvalho Chehab
The I2C mux changes are significant. Bump version number. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: use dev_info() for extension load/unloadMauro Carvalho Chehab
Now that we're using dev_foo, the logs become like: usb 1-2: DVB: registering adapter 0 frontend 0 (Fujitsu mb86A20s)... usb 1-2: Successfully loaded cx231xx-dvb cx231xx: Cx231xx dvb Extension initialized It is not clear, by the logs, that usb 1-2 name is an alias for cx231xx. So, we also need to use dvb_info() at extension load/unload. After the patch, it will print: usb 1-2: Cx231xx dvb Extension initialized With is coherent with the other logs. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: add addr for demod and make i2c_devs constMauro Carvalho Chehab
I2C address 0x10 is the demod. While here, make the array const. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: use dev_foo instead of printkMauro Carvalho Chehab
There are several places at cx231xx that uses printk without any special reason. Change all of them to use dev_foo(). Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: get rid of audio debug parameterMauro Carvalho Chehab
There's just one debug level on cx231xx-audio. So, converting it to dev_dbg() is easy. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: convert from pr_foo to dev_fooMauro Carvalho Chehab
Replace all pr_foo occurrences by dev_foo, as this is the recommended way for drivers. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: disable I2C errors during i2c_scanMauro Carvalho Chehab
Otherwise, it would produce lots of useless messages like: cx231xx: cx231xx_send_usb_command: failed with status --32 After this patch, I2C scan will produce an useful report: [ 9494.050807] cx231xx: i2c_scan: checking for I2C devices on port=0 .. [ 9494.074928] cx231xx: i2c scan: Completed Checking for I2C devices on port=0. [ 9494.074936] cx231xx: i2c_scan: checking for I2C devices on port=3 .. [ 9494.098934] cx231xx: i2c scan: Completed Checking for I2C devices on port=3. [ 9494.098942] cx231xx: i2c_scan: checking for I2C devices on port=2 .. [ 9494.118440] cx231xx: i2c scan: Completed Checking for I2C devices on port=2. [ 9494.118448] cx231xx: i2c_scan: checking for I2C devices on port=4 .. [ 9494.141889] cx231xx: i2c scan: Completed Checking for I2C devices on port=4. [ 9494.060182] cx231xx: i2c scan: found device @ 0x40 [???] [ 9494.062953] cx231xx: i2c scan: found device @ 0x60 [colibri] [ 9494.066071] cx231xx: i2c scan: found device @ 0x88 [hammerhead] [ 9494.067383] cx231xx: i2c scan: found device @ 0x98 [???] [ 9494.090113] cx231xx: i2c scan: found device @ 0xa0 [eeprom] [ 9494.106463] cx231xx: i2c scan: found device @ 0x60 [colibri] [ 9494.113762] cx231xx: i2c scan: found device @ 0xc0 [tuner] [ 9494.121882] cx231xx: i2c scan: found device @ 0x20 [???] Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: use 1 byte read for i2c scanMatthias Schwarzott
Now cx231xx_i2c_check_for_device works like i2c_check_for_device of em28xx driver. For me this fixes scanning of all ports but port 2. Signed-off-by: Matthias Schwarzott <zzam@gentoo.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx25840: convert max_buf_size var to lowercaseMauro Carvalho Chehab
CodingStyle fix: vars should be in lowercase. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx25840: Don't report an error if max size is adjustedMauro Carvalho Chehab
There's no reason to report: cx25840 7-0044: Firmware download size changed to 16 bytes max length If the driver needs to adjust the buffer's maximum size. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: Cleanup printk at the driverMauro Carvalho Chehab
There are lots of debug printks printed with pr_info. Also, the printk's data are not too coherent: - there are duplicated driver name at the print format; - function name format string differs from function to function; - long strings broken into multiple lines; - some printks just produce ugly reports, being almost useless as-is. Do a cleanup on that. Still, there are much to be done in order to do a better printk job on this driver, but, at least it will now be a way less verbose, if debug printks are disabled, and some logs might actually be useful. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: Fix identationMauro Carvalho Chehab
One of the identation blocks is wrong. Fix it. While here, replace pr_info by pr_debug inside such block and add the function name to the print messages, as otherwise they will not help much. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx231xx: get rid of driver-defined printk macrosMauro Carvalho Chehab
It currently does just like what pr_foo() macros do. So, replace them. A deeper cleanup is needed, as there are lots of debug macros printed with pr_info. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] fix a warning on avr32 archMauro Carvalho Chehab
X-Patchwork-Delegate: m.chehab@samsung.com on avr32 arch, those warnings happen: drivers/media/firewire/firedtv-fw.c: In function 'node_update': drivers/media/firewire/firedtv-fw.c:329: warning: comparison is always true due to limited range of data type In this particular case, the signal is desired, as the isochannel var can be initalized with -1 inside the driver. So, change the type to s8, to avoid issues on archs where char is unsigned. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Reviewed-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] V4L2: fix VIDIOC_CREATE_BUFS 32-bit compatibility mode data copy-backGuennadi Liakhovetski
Similar to an earlier patch, fixing reading user-space data for the VIDIOC_CREATE_BUFS ioctl() in 32-bit compatibility mode, this patch fixes writing back of the possibly modified struct to the user. However, unlike the former bug, this one is much less harmful, because it only results in the kernel failing to write the .type field back to the user, but in fact this is likely unneeded, because the kernel will hardly want to change that field. Therefore this bug is more of a theoretical nature. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] stv090x: remove indent levels in stv090x_get_coldlock()Dan Carpenter
This code is needlessly complicated and checkpatch.pl complains that we go over the 80 characters per line limit. If we flip the "if (!lock) {" test to "if (lock) return;" then we can remove an indent level from the rest of the function. We can add two returns in the "if (state->srate >= 10000000) {" condition and move the else statement back an additional indent level. There is another "if (!lock) {" check which can be removed since we have already checked "lock" and know it is zero at this point. This second check on "lock" is also a problem because it sets off a static checker warning. I have reviewed this code for some time to see if something else was intended, but have concluded that it was simply an oversight and should be removed. Removing this duplicative check gains us an third indent level. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] saa7146: turn bothersome error into a debug messageJohann Klammer
After updating the kernel to 3.14.15 I am seeing these messages: [273684.964081] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273690.020061] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273695.076082] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273700.132077] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273705.188070] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273710.244066] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273715.300187] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273720.356068] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273725.412188] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273730.468094] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273735.524070] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed [273740.580176] saa7146: saa7146 (0): saa7146_wait_for_debi_done_sleep timed out while waiting for registers getting programmed filling up the logs(one about every 5 seconds). Other posts suggests that it is not actually an error on cards without a CI interface. Here's a patch that turns it into a debug message, so it does not clobber the logs. Signed-off-by: Johann Klammer <klammerj@a1.net> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] media: dvb_core: replace a magic number by a macroDan Carpenter
It's better to use TS_SC instead of magic number 0xC0. [m.chehab@samsung.com: patch rebased and message rewritten, as this patch conflicted with an already applied patch] Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] media: Print information on failed link validationSakari Ailus
The Media controller doesn't tell much to the user in cases such as pipeline startup failure. The link validation is the most common media graph (or in V4L2's case, format) related reason for the failure. In more complex pipelines the reason may not always be obvious to the user, so point them to look at the right direction. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvb-net: Fix probable mask then right shift defectsJoe Perches
Precedence of & and >> is not the same and is not left to right. shift has higher precedence and should be done after the mask. Add parentheses around the mask. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cxusb: TS mode setting for TT CT2-4400Olli Salonen
There is a new version of the TechnoTrend CT2-4400 USB tuner. The difference is the demodulator that is used (Si2168-B40 instead of -A30). For TT CT2-4400v2 a TS stream related parameter needs to be set, otherwise the stream becomes corrupted. The Windows driver for both CT2-4400 and CT2-4400v2 sets this as well. After this patch the driver works for both versions. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] au8522: improve lock performance with ZeeVee modulatorsRichard Vollkommer
Improves lock performance with signals from the ZeeVee family of modulators. Signed-off-by: Richard Vollkommer <linux@hauppauge.com> Cc: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Michael Ira Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] xc5000: add IF output level controlRichard Vollkommer
Adds control of the IF output level to the xc5000 tuner configuration structure. Increases the IF level to the demodulator to fix failure to lock and picture breakup issues (with the au8522 demodulator, in the case of the Hauppauge HVR950Q). This patch works with all XC5000 firmware versions. Signed-off-by: Richard Vollkommer <linux@hauppauge.com> Signed-off-by: Michael Ira Krufky <mkrufky@linuxtv.org> Reviewed-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] rc: port IgorPlug-USB to rc-coreSean Young
This is a complete re-write inspired by the original lirc driver. Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] m88ts2022: return the err code in its probe function when error occursnibble.max
if "chip_id" is wrong or "dev->cfg.clock_out" is invalid, the i2c model is still loaded. It will cause "kernel NULL pointer dereference" oops when the i2c model remove. returning the err code will prevent the i2c model load. Signed-off-by: Nibble Max <nibble.max@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx23885: add DVBSky S950C and T980C RC supportnibble.max
DVBSky s950ci dvb-s/s2 ci PCIe card: 1>dvb frontend: M88TS2022(tuner),M88DS3103(demod) 2>ci controller: CIMAX SP2 or its clone. 3>PCIe bridge: CX23885 The patchs are based on the following patchs. Olli Salonen submit: https://patchwork.linuxtv.org/patch/26180/ https://patchwork.linuxtv.org/patch/26183/ https://patchwork.linuxtv.org/patch/26324/ Nibble Max submit: https://patchwork.linuxtv.org/patch/26207/ Signed-off-by: Nibble Max <nibble.max@gmail.com> Reviewed-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx23885: add DVBSky S950C dvb-s/s2 ci PCIe card support(no RC)nibble.max
DVBSky s950ci dvb-s/s2 ci PCIe card: 1>dvb frontend: M88TS2022(tuner),M88DS3103(demod) 2>ci controller: CIMAX SP2 or its clone. 3>PCIe bridge: CX23885 The patchs are based on the following patchs. Olli Salonen submit: https://patchwork.linuxtv.org/patch/26180/ https://patchwork.linuxtv.org/patch/26183/ https://patchwork.linuxtv.org/patch/26324/ Nibble Max submit: https://patchwork.linuxtv.org/patch/26207/ Signed-off-by: Nibble Max <nibble.max@gmail.com> Reviewed-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvb-usb-dvbsky: add s960ci dvb-s/s2 usb ci box supportnibble.max
DVBSky s960ci dvb-s/s2 usb ci box: 1>dvb frontend: M88TS2022(tuner),M88DS3103(demod) 2>usb controller: CY7C86013A 3>ci controller: CIMAX SP2 or its clone. Signed-off-by: Nibble Max <nibble.max@gmail.com> Reviewed-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] em28xx: add support for Leadtek VC100 USB capture deviceWitold Krecicki
Leadtek VC100 is a simple USB capture stick, similar to Yakumo Movie Mixer. Signed-off-by: Witold Krecicki <wpk+lkml@culm.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvbsky: add option to disable IR receiverOlli Salonen
Add an option to disable remote controller for DVBSky devices by specifying the disable_rc option at modprobe. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvbsky: clean loggingOlli Salonen
dev_err includes the function name in the log printout, so there is no need to include it manually. While here, fix a small grammatical error in the i2c error message. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvbsky: don't print MAC address from read_mac_addressOlli Salonen
The dvb-usb-v2 already prints out the MAC address, no need to print it out also here. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] media: earthsoft: logging neateningJoe Perches
Use dev_err instead of pt1_printk o reduce object code size o remove now unused pt1_printk macro Neaten dev_<level> uses in pt3 o add missing newlines o align arguments o remove unnecessary OOM messages as there's a generic one o typo fixes in messages Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] dvb-frontends/Kconfig: better describe Toshiba TC90522ほち
Toshiba TC90522 is wrongly categorized, fix it Signed-off-by: ほち, AreMa Inc <knightrider@are.ma> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: fix VBI supportHans Verkuil
Now works with both NTSC and PAL. Tested with CC/XDS for NTSC and teletext/WSS for PAL. The start lines were wrong, the WSS signal wasn't captured and there was no difference between NTSC and PAL w.r.t. the count[] values so NTSC returned way too many lines. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: pci_disable_device comes after free_irqHans Verkuil
Move pci_disable_device() down otherwise it will complain about an unfreed irq. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: consistently use UNSET for absent tunerHans Verkuil
Don't mix UNSET and TUNER_ABSENT: you have to pick one or the other. For this driver selecting UNSET to represent an absent tuner resulting in the fewest changes. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: don't allow changes while vb2_is_busyHans Verkuil
Make sure that changing the standard or format is not allowed while one or more of the video, vbi or mpeg vb2 queues are busy. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: drop mpeg_active fieldHans Verkuil
The vb2 framework knows if streaming is in progress, no need to use a separate field for that. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: move width, height and field to core structHans Verkuil
The width, height and field values are core fields since both vbi, video and blackbird use the same video input. Move those fields to the correct struct. Also fix the field checks in the try_fmt functions: add V4L2_FIELD_SEQ_BT/TB support and map incorrect field values to a correct field value instead of returning an error. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: don't pollute the kernel logHans Verkuil
There is no reason to dump the sram code to the kernel log when you stop streaming. Remove those calls to cx88_sram_channel_dump. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-03[media] cx88: increase API command timeoutHans Verkuil
The timeout is way too small. Especially complicated command like CX2341X_ENC_STOP_CAPTURE takes much more time than 10 ms. Increase the timeout to 1 second, just as ivtv does (the cx88-blackbird has the same IP core for MPEG compression as ivtv). This solves a nasty issue where STOP_CAPTURE would timeout and the mailbox is left in a busy state, making it impossible to start streaming a second time without reloading the driver first. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>