diff options
Diffstat (limited to 'drivers/media/video/saa7164')
-rw-r--r-- | drivers/media/video/saa7164/saa7164-cmd.c | 6 | ||||
-rw-r--r-- | drivers/media/video/saa7164/saa7164-core.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/video/saa7164/saa7164-cmd.c b/drivers/media/video/saa7164/saa7164-cmd.c index 171ef116f078..cd3af4d4364f 100644 --- a/drivers/media/video/saa7164/saa7164-cmd.c +++ b/drivers/media/video/saa7164/saa7164-cmd.c | |||
@@ -234,6 +234,12 @@ int saa7164_cmd_wait(struct saa7164_dev *dev, u8 seqno) | |||
234 | __func__, seqno, dev->cmds[seqno].signalled); | 234 | __func__, seqno, dev->cmds[seqno].signalled); |
235 | 235 | ||
236 | /* Wait for signalled to be flagged or timeout */ | 236 | /* Wait for signalled to be flagged or timeout */ |
237 | /* In a highly stressed system this can easily extend | ||
238 | * into multiple seconds before the deferred worker | ||
239 | * is scheduled, and we're woken up via signal. | ||
240 | * We typically are signalled in < 50ms but it can | ||
241 | * take MUCH longer. | ||
242 | */ | ||
237 | wait_event_timeout(*q, dev->cmds[seqno].signalled, (HZ * waitsecs)); | 243 | wait_event_timeout(*q, dev->cmds[seqno].signalled, (HZ * waitsecs)); |
238 | r = time_before(jiffies, stamp + (HZ * waitsecs)); | 244 | r = time_before(jiffies, stamp + (HZ * waitsecs)); |
239 | if (r) | 245 | if (r) |
diff --git a/drivers/media/video/saa7164/saa7164-core.c b/drivers/media/video/saa7164/saa7164-core.c index 06dab7cbcaac..da6dbe579624 100644 --- a/drivers/media/video/saa7164/saa7164-core.c +++ b/drivers/media/video/saa7164/saa7164-core.c | |||
@@ -49,7 +49,7 @@ unsigned int debug; | |||
49 | module_param(debug, int, 0644); | 49 | module_param(debug, int, 0644); |
50 | MODULE_PARM_DESC(debug, "enable debug messages"); | 50 | MODULE_PARM_DESC(debug, "enable debug messages"); |
51 | 51 | ||
52 | unsigned int waitsecs = 1; | 52 | unsigned int waitsecs = 10; |
53 | module_param(waitsecs, int, 0644); | 53 | module_param(waitsecs, int, 0644); |
54 | MODULE_PARM_DESC(debug, "timeout on firmware messages"); | 54 | MODULE_PARM_DESC(debug, "timeout on firmware messages"); |
55 | 55 | ||