aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Toth <stoth@kernellabs.com>2009-05-11 20:42:03 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-19 00:14:52 -0300
commitf4a6adf1e54324756917459c52ec7bfdc28d6e7f (patch)
tree1407e33eb80bcf03b4491a04a9b308853871eb72
parent1a6450d4d43a4d4caecaa3ca7796cbe8c7cfbba3 (diff)
V4L/DVB (12928): SAA7164: Increase firmware load tolerance
It's timing out and aborting firmware load too quickly on some platforms, this increases the upper limit. Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/video/saa7164/saa7164-fw.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/media/video/saa7164/saa7164-fw.c b/drivers/media/video/saa7164/saa7164-fw.c
index 6595dd67c5c..ee0af3534ed 100644
--- a/drivers/media/video/saa7164/saa7164-fw.c
+++ b/drivers/media/video/saa7164/saa7164-fw.c
@@ -40,14 +40,13 @@ int saa7164_dl_wait_ack(struct saa7164_dev *dev, u32 reg)
{
u32 timeout = SAA_DEVICE_TIMEOUT;
while ((saa7164_readl(reg) & 0x01) == 0) {
- timeout -= 5;
+ timeout -= 10;
if (timeout == 0) {
printk(KERN_ERR "%s() timeout (no d/l ack)\n",
__func__);
return -EBUSY;
}
- /* TODO: Review this for efficiency, f/w load is slow */
- msleep(1);
+ msleep(100);
}
return 0;
@@ -57,14 +56,13 @@ int saa7164_dl_wait_clr(struct saa7164_dev *dev, u32 reg)
{
u32 timeout = SAA_DEVICE_TIMEOUT;
while (saa7164_readl(reg) & 0x01) {
- timeout -= 5;
+ timeout -= 10;
if (timeout == 0) {
printk(KERN_ERR "%s() timeout (no d/l clr)\n",
__func__);
return -EBUSY;
}
- /* TODO: Review this for efficiency, f/w load is slow */
- msleep(1);
+ msleep(100);
}
return 0;