projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
272aa39
)
V4L/DVB (11570): patch: s2255drv: fix race condition on set mode
author
Dean Anderson
<dean@sensoray.com>
Mon, 20 Apr 2009 22:07:44 +0000
(19:07 -0300)
committer
Mauro Carvalho Chehab
<mchehab@redhat.com>
Wed, 29 Apr 2009 18:41:14 +0000
(15:41 -0300)
set_modeready flag must be set before command sent to USB in
s2255_write_config.
Signed-off-by: Dean Anderson <dean@sensoray.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/s2255drv.c
patch
|
blob
|
history
diff --git
a/drivers/media/video/s2255drv.c
b/drivers/media/video/s2255drv.c
index 5202cadb2aaec3f114c33fca69a58d34b756591c..30f4698be90a5a9555426b2732f7dfc268256fbb 100644
(file)
--- a/
drivers/media/video/s2255drv.c
+++ b/
drivers/media/video/s2255drv.c
@@
-1237,6
+1237,7
@@
static int s2255_set_mode(struct s2255_dev *dev, unsigned long chn,
buffer[1] = (u32) chn_rev;
buffer[2] = CMD_SET_MODE;
memcpy(&buffer[3], &dev->mode[chn], sizeof(struct s2255_mode));
+ dev->setmode_ready[chn] = 0;
res = s2255_write_config(dev->udev, (unsigned char *)buffer, 512);
if (debug)
dump_verify_mode(dev, mode);
@@
-1245,7
+1246,6
@@
static int s2255_set_mode(struct s2255_dev *dev, unsigned long chn,
/* wait at least 3 frames before continuing */
if (mode->restart) {
- dev->setmode_ready[chn] = 0;
wait_event_timeout(dev->wait_setmode[chn],
(dev->setmode_ready[chn] != 0),
msecs_to_jiffies(S2255_SETMODE_TIMEOUT));