linux_old1/drivers/media/video/cx88
Darron Broad 59b1842da1 V4L/DVB (9227): MFE: Add multi-frontend mutual exclusion
This add frontend R/W mutual exclusion.
Prior to this point in time it was possible to open both
frontends simultaneously which an MFE card cannot support.

In order to stop this, a delayed open is performed which
has the following function:

-  Return EBUSY after a configurable amount of time
   if a frontend is unavailable due to the other being
   in use.

-  Only allow opening of a frontend if the kernel thread
   of the other has stopped.

This solution was chosen to allow switching between
frontends to work as seamlessly as possible. When both
frontends are actually opened simultaneously then one
will only open, but if quick switching is performed
between one of many then the new open will succeed in
a clean fashion rather than interrupting a kernel
thread.

Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-10-17 17:24:15 -03:00
..
Kconfig V4L/DVB (9026): Add support for ST STV0288 demodulator and cards with it. 2008-10-12 09:37:07 -02:00
Makefile V4L/DVB(7767): Move tuners to common/tuners 2008-04-29 18:41:37 -03:00
cx88-alsa.c v4l-dvb: remove legacy checks to allow support for kernels < 2.6.10 2008-07-20 07:17:52 -03:00
cx88-blackbird.c V4L/DVB (8904): cx88: add missing unlock_kernel 2008-10-12 09:37:14 -02:00
cx88-cards.c V4L/DVB (9226): MFE: cx88: Reset cx22702 on hvr-3000/4000 2008-10-17 17:23:34 -03:00
cx88-core.c V4L/DVB (8430): videodev: move some functions from v4l2-dev.h to v4l2-common.h or v4l2-ioctl.h 2008-07-23 19:00:17 -03:00
cx88-dvb.c V4L/DVB (9227): MFE: Add multi-frontend mutual exclusion 2008-10-17 17:24:15 -03:00
cx88-i2c.c V4L/DVB (9225): MFE: Add configurable gate control 2008-10-17 17:23:28 -03:00
cx88-input.c V4L/DVB (9223): MFE: Fix a number of bugs and some tidying up 2008-10-17 17:23:15 -03:00
cx88-mpeg.c V4L/DVB (9222): S2API: Add Multiple-frontend on a single adapter support. 2008-10-17 17:23:10 -03:00
cx88-reg.h V4L/DVB (6066): cx88-alsa: Change order of interrupt enabling, fix spurious IRQs 2007-10-09 22:05:55 -03:00
cx88-tvaudio.c V4L/DVB (7521): media/video/cx88 replace remaining __FUNCTION__ occurrences 2008-04-24 14:07:59 -03:00
cx88-vbi.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
cx88-video.c V4L/DVB (9069): cx88: Bugfix: all client disconnects put the frontend to sleep. 2008-10-12 09:37:11 -02:00
cx88-vp3054-i2c.c v4l-dvb: remove legacy checks to allow support for kernels < 2.6.10 2008-07-20 07:17:52 -03:00
cx88-vp3054-i2c.h V4L/DVB (5629): Cx88: VP3054 support can't be a module when cx88 is compiled in 2007-07-18 14:23:11 -03:00
cx88.h V4L/DVB (9222): S2API: Add Multiple-frontend on a single adapter support. 2008-10-17 17:23:10 -03:00