diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-11-10 20:21:01 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-01-25 16:02:06 -0500 |
commit | a3a048cea301baba5d451991074a85dc20a8f228 (patch) | |
tree | 4dc2f79f974c1e73b6809adaebc5d849686a91d0 /drivers/media/video/em28xx/em28xx.h | |
parent | 2c94a674e059e89252d58da655efa4e798be4d48 (diff) |
V4L/DVB (6582): Fix em28xx to allow multiple open
Allows shared access support for em28xx. Just one userspace application is
allowed to get stream. The other(s) application(s) can change V4L2 controls,
set video standards, etc.
This patch were splited from Markus Rechberger's tree and backported to 2.6.17
by Pádraig Brady.
The original patch were ported to the latest em28xx version and had CodingStyle
corrected to solve the issues pointed by scripts/checkpatch.pl.
Thanks to Pádraig Brady <P@draigBrady.com> for pointing this.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/em28xx/em28xx.h')
-rw-r--r-- | drivers/media/video/em28xx/em28xx.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index c2531da2e618..f8ad0f4ae6d2 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -258,6 +258,7 @@ struct em28xx { | |||
258 | int vscale; /* vertical scale factor (see datasheet) */ | 258 | int vscale; /* vertical scale factor (see datasheet) */ |
259 | int interlaced; /* 1=interlace fileds, 0=just top fileds */ | 259 | int interlaced; /* 1=interlace fileds, 0=just top fileds */ |
260 | int type; | 260 | int type; |
261 | unsigned int reader:1; | ||
261 | 262 | ||
262 | unsigned long hash; /* eeprom hash - for boards with generic ID */ | 263 | unsigned long hash; /* eeprom hash - for boards with generic ID */ |
263 | unsigned long i2c_hash; /* i2c devicelist hash - for boards with generic ID */ | 264 | unsigned long i2c_hash; /* i2c devicelist hash - for boards with generic ID */ |
@@ -294,6 +295,11 @@ struct em28xx { | |||
294 | int (*em28xx_read_reg_req) (struct em28xx * dev, u8 req, u16 reg); | 295 | int (*em28xx_read_reg_req) (struct em28xx * dev, u8 req, u16 reg); |
295 | }; | 296 | }; |
296 | 297 | ||
298 | struct em28xx_fh { | ||
299 | struct em28xx *dev; | ||
300 | unsigned int reader:1; | ||
301 | }; | ||
302 | |||
297 | /* Provided by em28xx-i2c.c */ | 303 | /* Provided by em28xx-i2c.c */ |
298 | 304 | ||
299 | void em28xx_i2c_call_clients(struct em28xx *dev, unsigned int cmd, void *arg); | 305 | void em28xx_i2c_call_clients(struct em28xx *dev, unsigned int cmd, void *arg); |