aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-07-27[media] drxk: Fix the logic that selects between DVB-C annex A and CMauro Carvalho Chehab1-30/+26
Fix the DRX-K logic that selects between DVB-C annex A and C Fix a typo where DVB-C annex type is set via setEnvParameters, but the driver, uses, instead, setParamParameters[2]. While here, cleans up the code, fixing a bad identation at the fallback code for other types of firmware, and put the multiple-line comments into the Linux CodingStyle. Acked-by: Oliver Endriss <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drxk: Fix read debug messageMauro Carvalho Chehab1-9/+6
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drxk: Fix error return code during drxk initMauro Carvalho Chehab1-1/+1
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drxk: Remove goto/break after returnMauro Carvalho Chehab1-2/+0
After return, we don't need any other statement to change the function flux ;) Reported-by: Oliver Endriss <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drxk: Fix a bug at some switches that broke DVB-TMauro Carvalho Chehab1-8/+8
The error propagation changeset c23bf4402 broke the DVB-T code. The legacy way for propagate errors was: do { status = foo_func() if (status < 0) break; } while (0); return status; However, on a few places, it was doing: do { switch(foo) { case bar: status = foo_func() if (status < 0) break; break; } switch(foo2) { case bar: status = foo_func() if (status < 0) break; break; } ... } while (0); return (status) The inner error break were not working, as it were breaking only the switch, instead of the do. The solution used were to do a s/break/goto error/ at the inner breaks, but preserving the last break. Onfortunately, on a few switches, the replacement were applied also to the final break for the case statements. Fix the broken logic, by reverting them to break, where pertinent, in order to fix DVB-T support. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] Remove the double symbol increment hack from drxk_hardMauro Carvalho Chehab2-25/+18
Both ngene and ddbrige calls dvb_attach once for drxk_attach. The logic used there, and by tda18271c2dd driver is different from similar logic on other frontends. The right fix is to change them to use the same logic, but, while we don't do that, we need to patch em28xx-dvb in order to do cope with ngene/ddbridge magic. While here, document why drxk_t_release should do nothing. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] em28xx: Add other Terratec H5 USB ID'sMauro Carvalho Chehab1-3/+3
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27Revert "[media] DVB: dvb_frontend: off by one in dtv_property_dump()"Mauro Carvalho Chehab1-1/+1
This reverts commit a3e4adf274f86b2363fedaa964297cb38526cef0. As pointed by Andread Oberritter <[email protected]>: That's wrong, because the array size is DTV_MAX_COMMAND + 1. Using the ARRAY_SIZE macro instead might reduce the confusion. Also, changeset 3995223038 already fixed this issue. Reported-by: Andread Oberritter <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] cx88: implemented luma notch filter control[email protected]2-2/+20
The following patch adds a new control that makes it possible to set the luma notch filter type to finetune picture quality. Signed-off-by: Istvan Varga <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] cx88: implemented sharpness control[email protected]2-3/+30
This patch implements support for a sharpness control, using the luma peaking filter feature of cx2388x. [[email protected]: use cx_andor instead of cx_write] Signed-off-by: Istvan Varga <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: s5p-tv: add TV Mixer driver for Samsung S5P platformTomasz Stanislawski10-0/+3011
Add driver for TV Mixer on Samsung platforms from S5P family. Mixer is responsible for merging images from three layers and passing result to the output. Drivers are using: - v4l2 framework - videobuf2 - runtime PM Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Marek Szyprowski <[email protected]> Reviewed-by: Sylwester Nawrocki <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: s5p-tv: add SDO driver for Samsung S5P platformTomasz Stanislawski4-0/+555
Add drivers for Standard Definition output (SDO) on Samsung platforms from S5P family. The driver provides control over streaming analog TV via Composite connector. Driver is using: - v4l2 framework - runtime PM Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Marek Szyprowski <[email protected]> Reviewed-by: Sylwester Nawrocki <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: s5p-tv: add drivers for HDMI on Samsung S5P platformTomasz Stanislawski7-0/+1436
Add drivers for HDMI outputs on Samsung platforms from S5P family. Drivers are using: - v4l2 framework - runtime PM Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Marek Szyprowski <[email protected]> Reviewed-by: Sylwester Nawrocki <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: add g_std_output callback to V4L2 subdevTomasz Stanislawski1-0/+4
Callback is used to acquire current analog TV standard from a subdev. It is used to avoid keeping current standard in top-level driver. Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: add g_dv_preset callback to V4L2 subdevTomasz Stanislawski1-0/+4
Callback is used to acquire current digital video preset from a subdev. It is used to avoid keeping dv preset in top-level driver. Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] v4l: add g_tvnorms_output callback to V4L2 subdevTomasz Stanislawski1-0/+4
Callback is used to acquire TV norms supported by a subdev. It is used to avoid having standards in top-level driver. Signed-off-by: Tomasz Stanislawski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] cx88: properly maintain decoder config when using MPEG encoderDevin Heitmueller2-7/+18
The cx88 driver would force core->input to always be zero when doing the the request_acquire(). While it wasn't actually changing the input register in the hardware, the driver makes decision based on the current input. In particular, it decides whether to do things like enabling the comb filter when on a composite input but disabling it on s-video. So for example, on the HVR-1300, using the s-video input with the MPEG encoder would end up with the video decoder core configured as though the input type were composite. In short, the driver state did not match the hardware state. This patch does two things: 1. It forces the input to zero only if actually switching to DVB mode. This prevents the input from changing when the blackbird driver opens the device. 2. Keep track of what the input was set to when switching to DVB, and reset it back when done. This eliminates a condition where for example the user had the analog side of the board set to capture on the s-video input, then he used DVB for a bit, then the analog input would unexpectedly be set to the tuner input. This work was sponsored by Anevia S.A. Signed-off-by: Devin Heitmueller <[email protected]> Cc: Florent Audebert <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] MFC: Add MFC 5.1 V4L2 driverKamil Debski23-0/+7639
Multi Format Codec 5.1 is a hardware video coding acceleration module found in the S5PV210 and Exynos4 Samsung SoCs. It is capable of handling a range of video codecs and this driver provides a V4L2 interface for video decoding and encoding. Signed-off-by: Kamil Debski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Cc: Jeongtae Park <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] redrat3: improve compat with lirc userspace decodeJarod Wilson1-19/+24
This is admittedly a bit of a hack, but if we change our timeout value to something longer and fudge our synthesized trailing space sample based on the initial pulse sample, rc-core decode continues to work just fine with both rc-6 and rc-5, and now lirc userspace decode shows proper repeats for both of those protocols as well. Also tested NEC successfully with both decode options. We do still need a reset timer callback using the hardware's timeout value to make sure we actually process samples correctly, regardless of our somewhat hacky timeout and synthesized trailer above. This also adds a missing del_timer_sync call to the module unload path. CC: Chris Dodge <[email protected]> CC: Andrew Vincer <[email protected]> CC: Stephen Cox <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] redrat3: cap duration in the right placeJarod Wilson1-3/+3
Trying to cap duration before multiplying it was obviously wrong. CC: Chris Dodge <[email protected]> CC: Andrew Vincer <[email protected]> CC: Stephen Cox <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] redrat3: sending extra trailing space was uselessJarod Wilson1-11/+1
We already add a trailing space, this wasn't doing anything useful, and actually confused lirc userspace a bit. Rip it out. CC: Chris Dodge <[email protected]> CC: Andrew Vincer <[email protected]> CC: Stephen Cox <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] rc-core support for Microsoft IR keyboard/mouseJarod Wilson7-1/+482
This is a custom IR protocol decoder, for the RC-6-ish protocol used by the Microsoft Remote Keyboard, apparently developed internally at Microsoft, and officially dubbed MCIR-2, per their March 2011 remote and transceiver requirements and specifications document, which also touches on this IR keyboard/mouse device. Its a standard keyboard with embedded thumb stick mouse pointer and mouse buttons, along with a number of media keys. The media keys are standard RC-6, identical to the signals from the stock MCE remotes, and will be handled as such. The keyboard and mouse signals will be decoded and delivered to the system by an input device registered specifically by this driver. Successfully tested with multiple mceusb-driven transceivers, as well as with fintek-cir and redrat3 hardware. Essentially, any raw IR hardware with enough sampling resolution should be able to use this decoder, nothing about it is at all receiver-hardware-specific. This work is inspired by lirc_mod_mce: The documentation there and code aided in understanding and decoding the protocol, but the bulk of the code is actually borrowed more from the existing in-kernel decoders than anything. I did recycle the keyboard keycode table, a few defines, and some of the keyboard and mouse data parsing bits from lirc_mod_mce though. Special thanks to James Meyer for providing the hardware, and being patient with me as I took forever to get around to writing this. callback routine to ensure we don't get any stuck keys, and used symbolic names for the keytable. Also cc'ing Florian this time, who I believe is the original mod-mce author... CC: Florian Demski <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: add support for Sveon STV22 [1b80:e401]Emilio David Diaus Lopez2-1/+10
Signed-off-by: Emilio David Diaus Lopez <[email protected]> Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: remove 2nd I2C-adapterAntti Palosaari2-76/+19
It is useless. There is only one physical I2C-adapter. 2nd adapter was added originally due to some plans for allowing only one demod to access bus at time. But I never implemented proper locking... Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: remove old FW based IR polling codeAntti Palosaari1-8/+0
Remove old code which is not used anymore since IR code is read directly from memory nowadays. Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: add more I2C msg checksAntti Palosaari1-0/+12
Return EOPNOTSUPP for too long messages. Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: small optimizationAntti Palosaari1-4/+4
Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: map remote for MSI DIGIVOX DuoAntti Palosaari1-0/+2
Reported-by: Jacek M. Holeczek <[email protected]> Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] af9015: setup rc keytable for LC-Power LC-USB-DVBTJuergen Lock1-0/+1
That's this tuner: The credit card sized remote more or less works if I set remote=4, so I added the hash to get it autodetected. (`more or less' there meaning sometimes buttons are `stuck on repeat', i.e. ir-keytable -t keeps repeating the same scancode until i press another button.) Signed-off-by: Juergen Lock <[email protected]> Signed-off-by: Antti Palosaari <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] media, Micronas dvb-t: Fix mem leaks, don't needlessly zero mem, fix ↵Jesper Juhl1-2/+4
spelling In drivers/media/dvb/frontends/drxd_hard.c::load_firmware() I see 3 small issues: 1) When the 'fw' variable goes out of scope we'll leak the memory allocated to it by request_firmware() by neglecting to call release_firmware(). 2) After a successful request_firmware() we allocate fw->size bytes of memory using kzalloc() only to immediately overwrite all that memory with memcpy(), so asking for zeroed memory seems like wasted effort - just use kmalloc(). 3) In one of the error messages "no memory" lacks a space and is written as "nomemory". This patch fixes all 3 issues. Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] rc-rc6-mce: minor keymap updatesJarod Wilson1-2/+1
Microsoft's Windows Media Center specification and requirements doc from 2011.03.18 now refers to the former Power Toggle button as the Sleep Toggle, and recommends using a new moon sleep icon for it. Its the same key, but its apparently always been meant to put the system to sleep, not power it off. Adjust accordingly. While we're here, lets also remove the duplicate KEY_PLAYPAUSE entry. Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drivers/media/video/cx231xx/cx231xx-cards.c: add missing kfreeJulia Lawall1-0/+3
Clear the cx231xx_devused variable and free dev in the error handling code, as done in the error handling code nearby. The semantic match that finds this problem is as follows: // <smpl> @r@ identifier x; @@ kfree(x) @@ identifier r.x; expression E1!=0,E2,E3,E4; statement S; @@ ( if (<+...x...+>) S | if (...) { ... when != kfree(x) when != if (...) { ... kfree(x); ... } when != x = E3 * return E1; } ... when != x = E2 if (...) { ... when != x = E4 kfree(x); ... return ...; } ) // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drivers/media/video: add missing kfreeJulia Lawall2-0/+2
Free the recently allocated qcam in each case. The semantic match that finds this problem is as follows: // <smpl> @r@ identifier x; @@ kfree(x) @@ identifier r.x; expression E1!=0,E2,E3,E4; statement S; @@ ( if (<+...x...+>) S | if (...) { ... when != kfree(x) when != if (...) { ... kfree(x); ... } when != x = E3 * return E1; } ... when != x = E2 if (...) { ... when != x = E4 kfree(x); ... return ...; } ) // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] TM6000: alsa: Clean up kernel coding style errorsAdam M. Dutko1-6/+6
There were several coding style errors as reported by checkpatch.pl. This patch should fix those errors with the single exception of the open square bracket issue on line 45. [[email protected]: Fix a merge conflict] Signed-off-by: Adam M. Dutko <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] tm6000: remove a check for NO_PCM_LOCKMauro Carvalho Chehab1-4/+0
This was likely used by some test. There's no sense on keeping it upstream. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] DVB: dvb_frontend: off by one in dtv_property_dump()Dan Carpenter1-1/+1
If the tvp->cmd == DTV_MAX_COMMAND then we read past the end of the array. Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] cx23885: added support for card 107d:6f39[email protected]3-0/+59
This patch, based on code by Mirek Slugen, implements support for the Leadtek WinFast PxDVR3200 H card with XC4000 tuner (107d:6f39). Signed-off-by: Istvan Varga <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drivers/media: static should be at beginning of declarationJesper Juhl1-1/+1
Make sure that the 'static' keywork is at the beginning of declaration for drivers/media/video/omap/omap_vout.c This gets rid of warnings like when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: clean up a couple of unused cam structure fieldsJonathan Corbet2-5/+0
Delete a couple of leftover fields whose time has passed. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: Allow selection of supported buffer modesJonathan Corbet3-59/+152
The Marvell camera core can support all three videobuf2 buffer modes, which is slick, but it also requires that all three modes be built and present, even though only one is likely to be used. This patch allows the supported modes to be selected at configuration time, reducing the footprint of the driver. Prior to this patch, the MMP camera driver looked like this: mmp_camera 19092 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_dma_contig 2188 1 mmp_camera videobuf2_vmalloc 1718 1 mmp_camera videobuf2_memops 2100 3 videobuf2_dma_sg,videobuf2_dma_contig,videobuf2_vmalloc Afterward, instead, with scatter/gather only configured: mmp_camera 16021 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_memops 2100 1 videobuf2_dma_sg The total goes from 43,813 bytes to 36,836. The emphasis has been on simplicity and minimal #ifdef use rather than on squeezing out every possible byte of code. For configuration, the driver simply looks at which videobuf2 modes have been configured in and supports them all; it's simplistic but should be good enough. The cafe driver is set to support vmalloc and dma-contig; mmp supports only dma-sg, since that's the only mode that really makes sense to use. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: power down mmp camera on registration failureJonathan Corbet1-1/+1
If registration does not work, we don't want to leave the sensor powered on. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: remove {min,max}_buffers parametersJonathan Corbet1-13/+0
Somewhere along the way the code stopped actually paying any attention to them, and I doubt anybody has ever made use of them. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: core code reorganizationJonathan Corbet1-404/+420
This code shows signs of having been mucked with over the last five years or so; things were kind of mixed up. This patch reorders functions into a more rational organization which, with luck, will facilitate making the buffer modes selectable at configuration time. Code movement only: no functional changes here. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] marvell-cam: delete struct mcam_sio_bufferJonathan Corbet1-11/+0
This structure got passed over in the videobuf2 conversion; it has no reason to exist now. Signed-off-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] tea5764: Fix module parameter permissionsJean Delvare1-1/+1
The third parameter of module_param is supposed to represent sysfs file permissions. A value of "1" leads to the following: $ ls -l /sys/module/radio_tea5764/parameters/ total 0 I am changing it to "0" to align with the other module parameters in this driver. Signed-off-by: Jean Delvare <[email protected]> Cc: Mauro Carvalho Chehab <[email protected]> Cc: Fabio Belavenuto <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] Make Compro VideoMate Vista T750F actually workCarlos Corbacho2-1/+37
Based on the work of John Newbigin, Davor Emard and others who contributed on the mailing lists. The previous 'support' for this card was a partial merge of John's changes that, as far as I can tell, never actually got the thing working (no DVB-T, analog tuner not initialised). Initialise the analog tuner properly and hook up the DVB tuner and demodulator. DVB-T and analog now work (though I can't tune every DVB channel, but I think there's an issue with the aerial and signal boosters here that is causing me problems). Signed-off-by: Carlos Corbacho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27tda18271c2dd: Fix compilation when module is not selectedMauro Carvalho Chehab1-1/+1
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] tda18271c2dd.h: Don't add the same symbol twiceMauro Carvalho Chehab1-3/+0
Should be folded with the next patch when sending upstream Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] dvb: don't cause missing symbols for drxk/tda18271c2ddMauro Carvalho Chehab2-0/+26
If those demods are unselected, but a bridge driver requires them, produce a runtime message, instead of missing symbols. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-07-27[media] drxk: remove a now unused variableMauro Carvalho Chehab1-1/+0
Signed-off-by: Mauro Carvalho Chehab <[email protected]>