aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2011-03-22[media] lirc_zilog: Remove unneeded rx->buf_lockAndy Walls1-14/+9
Remove the rx->buf_lock that protected the rx->buf lirc_buffer. The underlying operations on the objects within the lirc_buffer are already protected by spinlocks, or the objects are constant (e.g. chunk_size). Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Don't acquire the rx->buf_lock in the poll() functionAndy Walls1-7/+14
There is no need to take the rx->buf_lock in the the poll() function as all the underling calls made on objects in the rx->buf lirc_buffer object are protected by spinlocks. Corrected a bad error return value in poll(): return POLLERR instead of -ENODEV. Added some comments to poll() for when, in the future, I forget what poll() and poll_wait() are supposed to do. [Jarod: minor debug spew fix] Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Use kernel standard methods for marking device non-seekableAndy Walls1-7/+2
lirc_zilog had its own llseek stub that returned -ESPIPE. Get rid of it and use the kernel's no_llseek() and nonseekable_open() functions instead. Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Convert the instance open count to an atomic_tAndy Walls1-10/+5
The open count is simply used for deciding if the Rx polling thread needs to poll the IR chip for userspace. Simplify the manipulation of the open count by using an atomic_t and not requiring a lock The polling thread errantly didn't try to take the lock anyway. Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Convert ir_device instance array to a linked listAndy Walls1-28/+31
Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Remove broken, ineffective reference countingAndy Walls1-31/+1
The set_use_inc() and set_use_dec() functions tried to lock the underlying bridge driver device instance in memory by changing the use count on the device's i2c_clients. This worked for PCI devices (ivtv, cx18, bttv). It doesn't work for hot-pluggable usb devices (pvrusb2 and hdpvr). With usb device instances, the driver may get locked into memory, but the unplugged hardware is gone. The set_use_inc() set_use_dec() functions also tried to have lirc_zilog change its own module refernce count, which is racy and not guaranteed to work. The lirc_dev module does actually perform proper module ref count manipulation on the lirc_zilog module, so there is need for lirc_zilog to attempt a buggy module get on itself anyway. lirc_zilog also errantly called these functions on itself in open() and close(), but lirc_dev did that already too. So let's just gut the bodies of the set_use_*() functions, and remove the extra calls to them from within lirc_zilog. Proper reference counting of the struct IR, IR_rx, and IR_tx objects -- to handle the case when the underlying bttv, ivtv, cx18, hdpvr, or pvrusb2 bridge driver module or device instance goes away -- will be added in subsequent patches. Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc_zilog: Restore checks for existence of the IR_tx objectAndy Walls1-7/+20
This reverts commit 8090232a237ab62e22307fc060097da1a283dd66 and adds an additional check for ir->tx == NULL. The user may need us to handle an RX only unit. Apparently there are TV capture units in existence with Rx only wiring and/or RX only firmware for the on-board Zilog Z8 IR unit. Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] hdpvr: i2c master enhancementsJarod Wilson1-17/+50
Make the hdpvr's i2c master implementation more closely mirror that of the pvrusb2 driver. Currently makes no significant difference in IR reception behavior with ir-kbd-i2c (i.e., it still sucks). Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] imon: add more panel scancode mappingsJarod Wilson1-1/+10
Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] tm6000: fix s-video inputDmitri Belimov4-24/+43
Add compatibility for composite and s-video inputs. Some TV cards hasn't it. Fix S-Video input, the s-video cable has only video signals no audio. Call the function of audio configure kill chroma in signal. only b/w video. Known bugs: - after s-video the audio for radio didn't work, TV crashed hardly - after composite TV crashed hardly too. P.S. After this patch I'll want to rework the procedure of configure video. Now it has a lot of junk and dubles. With my best regards, Dmitry. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] lirc: remove staging lirc_it87 and lirc_ite8709 driversJuan J. Garcia de Soria5-1699/+0
Remove older drivers lirc_it87 and lirc_ite8709 from the LIRC staging area, since they're now superceded by ite-cir. Signed-off-by: Juan J. Garcia de Soria <[email protected]> Tested-by: Stephan Raue <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] ite-cir: Fix some CodingStyle issuesMauro Carvalho Chehab2-24/+29
Cc: Juan J. Garcia de Soria <[email protected]> Cc: Stephan Raue <[email protected]> Cc: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] rc: New rc-based ite-cir driver for several ITE CIRsJuan J. Garcia de Soria4-0/+2226
This is a second version of an rc-core based driver for the ITE Tech IT8712F CIR and now for a pair of other variants of the IT8512 CIR too. This driver should replace the lirc_it87 and lirc_ite8709 currently living in the LIRC staging directory. The driver should support the ITE8704, ITE8713, ITE8708 and ITE8709 (this last one yet untested) PNP ID's. The code doesn'te reuse code from the pre-existing LIRC drivers, but has been written from scratch using the nuvoton.cir driver as a skeleton. This new driver shouldn't exhibit timing problems when running under load (or with interrupts disabled for relatively long times). It works OOTB with the RC6 MCE remote bundled with the ASUS EEEBox. TX support is implemented, but I'm unable to test it since my hardware lacks TX capability. Signed-off-by: Juan J. Garcia de Soria <[email protected]> Tested-by: Stephan Raue <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] drivers/media/rc/Kconfig: use tabs, instead of spacesMauro Carvalho Chehab1-11/+11
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] saa7134: Fix strange kconfig dependency on RC_CORESteven Rostedt1-0/+1
As the code in saa7134-input is not a module, but the config for it is set as a boolean instead of a tristate, this causes a strange dependency on RC_CORE. VIDEO_SAA7134_RC (which determines if saa7134-input.o is built) depends on RC_CORE and VIDEO_SAA7134. If VIDEO_SAA7134 is compiled as 'y' but RC_CORE is compiled as 'm' VIDEO_SAA7134_RC can still be set to 'y' which causes undefined symbols that it needs from RC_CORE. The simplest solution is to not allow VIDEO_SAA7134_RC be enabled if RC_CORE compiled as a module (m) and VIDEO_SA7134 is compiled into the kernel (y). Suggested-by: Mauro Carvalho Chehab <[email protected]> Cc: Michal Marek <[email protected]> Cc: linux-kbuild <[email protected]> Signed-off-by: Steven Rostedt <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] STV0288 added full frontend statusMalcolm Priestley1-2/+5
status now returns FE_HAS_CARRIER FE_HAS_SIGNAL FE_HAS_VITERBI Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - zc3xx: Add exposure control for sensor hv7131rJean-François Moine1-7/+69
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - main: Add endpoint direction test in alt_xferPatrice Chotard1-1/+2
This patch fixes a bug in gspca, more precisely in alt_xfer(). This function looks for an input transfer endpoint in an alternate setting. By default it returns the first endpoint corresponding to the transfer type indicated in parameter. But with some USB devices, the first endpoint corresponding to the transfer type is not always an INPUT endpoint but an OUTPUT one. This patch adds the endpoint direction test to be sure to return an INPUT endpoint Signed-off-by: Patrice CHOTARD <[email protected]> Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Fix exposure for some webcamsJean-François Moine1-0/+3
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Get the sensor ID when bridge et31x110Jean-François Moine1-0/+20
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Fix some image resolutionsJean-François Moine1-3/+13
No 352x288 for Ds3303 and no 320x240 for Generic802. Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Check the bridge from the webcam typeJean-François Moine1-68/+78
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Fix the gain, exposure and autogainJean-François Moine1-89/+46
The autogain now uses common functions. Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Do some initialization at probe timeJean-François Moine1-30/+55
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: The webcam dsb-c110 is the same as the twinkleJean-François Moine1-181/+1
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] gspca - nw80x: Cleanup sourceJean-François Moine1-208/+65
Signed-off-by: Jean-François Moine <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2: use new flag to enable core priority handlingHans Verkuil6-13/+18
Rather than guess which driver supports core priority handling, require drivers that do to explicitly set the V4L2_FL_USE_FH_PRIO flag in video_device. Updated the core prio handling accordingly and set the flag in the three drivers that do. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] ivtv: replace ugly casts with a proper container_ofHans Verkuil1-50/+50
ivtv-ioctl cast the 'void *fh' directly to 'ivtv_open_id *'. This should be done properly with a contained_of since the 'void *fh' is really a 'struct v4l2_fh *'. It worked because the v4l2_fh field is also the first field in the ivtv_open_id struct, but it is not clean code. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] ivtv: add missing v4l2_fh_exitHans Verkuil1-0/+1
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] vivi: convert to core priority handlingHans Verkuil1-13/+4
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] dsbr100: ensure correct disconnect sequenceHans Verkuil1-47/+12
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] dsbr100: convert to unlocked_ioctlHans Verkuil1-48/+31
Use core-assisted locking so .ioctl can be replaced by .unlocked_ioctl. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2-device: add kref and a release functionHans Verkuil2-0/+26
The video_device struct has proper ref counting and its release function will be called when the last user releases it. But no such support was available for struct v4l2_device. This made it hard to determine when a USB driver can release the device if it has multiple device nodes. With one device node it is easy of course, since when the device node is released, the whole device can be released. This patch adds refcounting to v4l2_device. When registering device nodes the v4l2_device refcount will be increased, when releasing device nodes it will be decreased. The (optional) release function will be called when the last device node was released. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] cx18: use core priority handlingHans Verkuil3-61/+0
VIDIOC_S/G_PRIORITY handling is now done by the v4l2 core framework. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] cx18: use v4l2_fh as preparation for adding core priority supportHans Verkuil3-41/+61
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] ivtv: convert to core priority handlingHans Verkuil3-45/+15
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2-ioctl: add priority handling supportHans Verkuil9-15/+72
Drivers that use v4l2_fh can now use the core framework support of g/s_priority. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2-fh: add v4l2_fh_is_singularHans Verkuil1-0/+14
Several drivers need to do something when the first filehandle is opened or the last filehandle is closed. Most implement some use count mechanism, but if they use v4l2_fh, then you can also just check if this is the only filehandle for the device node. A simple helper function can do this. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2-fh: add v4l2_fh_open and v4l2_fh_release helper functionsHans Verkuil1-0/+28
Add two new functions: v4l2_fh_open allocates and initializes a struct v4l2_fh based on a struct file pointer and v4l2_fh_release releases and frees a struct v4l2_fh. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2-fh: implement v4l2_priority supportHans Verkuil1-0/+4
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2: add v4l2_prio_state to v4l2_device and video_deviceHans Verkuil2-0/+7
Integrate the v4l2_prio_state into the core, ready for use. One struct v4l2_prio_state is added to v4l2_device and a pointer to a prio state is added to video_device. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v4l2_prio: move from v4l2-common to v4l2-devHans Verkuil2-63/+64
We are going to move priority handling into the v4l2 core. As a consequence the v4l2_prio helper functions need to be moved into the core videodev module as well to prevent circular dependencies. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] saa7134-input: key up events not sent after suspend/resumeVadim Solomin1-10/+39
On my AverMedia AverTV Studio 507, key up events are no longer sent after a suspend-to-disk/resume cycle, resulting in "stuck" keys. Apparently, for key up events to be generated, a certain GPIO pin must be set. Currently it's set in saa7134_input_init1(), but that function is not called on device resume. I suggest that code be moved to __saa7134_ir_start(), which is called both on init and resume. Signed-off-by: Vadim Solomin <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] stv0367: typo in function parameterDan Carpenter1-1/+1
The CellsCoeffs arrays are [3][6][5] not [2][6][5]. Signed-off-by: Dan Carpenter <[email protected]> Cc: Igor M. Liplianin <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] stv0367: signedness bug in stv0367_get_tuner_freq()Dan Carpenter1-2/+2
We use err to store negative error codes so it should be signed. And if we return an error from stv0367_get_tuner_freq() that needs to be handled properly as well. (param->frequency is a u32). Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] via-camera: Fix OLPC serial checkDaniel Drake1-46/+37
The code that checks the OLPC serial port is never built at the moment, because CONFIG_OLPC_XO_1_5 doesn't exist and probably won't be added. Fix it so that it gets compiled in, only executes on OLPC laptops, and move the check into the probe routine. The compiler is smart enough to eliminate this code when CONFIG_OLPC=n (due to machine_is_olpc() always returning false). Signed-off-by: Daniel Drake <[email protected]> Acked-by: Jonathan Corbet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] Change to 32 bit and add other remote controls for lme2510Malcolm Priestley1-27/+69
These bubble button remote controls appear to be generic from China. These are the three variants known to be supplied with DM04/QQBOX DVB-S They could well be supplied with other devices from the region. Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] DM04/QQBOX Update V1.76 - use 32 bit remote decodingMalcolm Priestley1-2/+3
Use 32 bit decoding to add support for more than one variant of remote control. Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22[media] v180 - DM04/QQBOX added support for BS2F7HZ0194 versionsMalcolm Priestley1-60/+170
Old versions of these boxes have the BS2F7HZ0194 tuner module on both the LME2510 and LME2510C. Firmware dvb-usb-lme2510-s0194.fw and/or dvb-usb-lme2510c-s0194.fw files are required. See Documentation/dvb/lmedm04.txt Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-22rbd: use watch/notify for changes in rbd headerYehuda Sadeh1-26/+335
Send notifications when we change the rbd header (e.g. create a snapshot) and wait for such notifications. This allows synchronizing the snapshot creation between different rbd clients/rools. Signed-off-by: Yehuda Sadeh <[email protected]> Signed-off-by: Sage Weil <[email protected]>