Since card status updates appear to only occur every second, a delay
of 1000ms on startup may not be sufficient - change to 1500ms.
The long delay of 4000ms is likely to be related to the time required
for the ADSL line to come up - the driver should not need to do this.
Overall delay when loading firmware will change from 5000ms to 1500ms.
Signed-Off-By: Simon Arlott <[email protected]>
---
drivers/usb/atm/cxacru.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/usb/atm/cxacru.c b/drivers/usb/atm/cxacru.c
index 8d8a107..35308a8 100644
--- a/drivers/usb/atm/cxacru.c
+++ b/drivers/usb/atm/cxacru.c
@@ -931,9 +931,10 @@ static void cxacru_upload_firmware(struct cxacru_data *instance,
usb_err(usbatm, "Passing control to firmware failed: %d\n", ret);
return;
}
+ usb_info(usbatm, "started firmware\n");
/* Delay to allow firmware to start up. */
- msleep_interruptible(1000);
+ msleep(1500);
usb_clear_halt(usb_dev, usb_sndbulkpipe(usb_dev, CXACRU_EP_CMD));
usb_clear_halt(usb_dev, usb_rcvbulkpipe(usb_dev, CXACRU_EP_CMD));
@@ -947,7 +948,7 @@ static void cxacru_upload_firmware(struct cxacru_data *instance,
}
/* Load config data (le32), doing one packet at a time */
- if (cf)
+ if (cf) {
for (off = 0; off < cf->size / 4; ) {
u32 buf[CMD_PACKET_SIZE / 4 - 1];
int i, len = min_t(int, cf->size / 4 - off, CMD_PACKET_SIZE / 4 / 2 - 1);
@@ -963,8 +964,8 @@ static void cxacru_upload_firmware(struct cxacru_data *instance,
return;
}
}
-
- msleep_interruptible(4000);
+ usb_info(usbatm, "loaded config data\n");
+ }
}
static int cxacru_find_firmware(struct cxacru_data *instance,
--
1.5.0.1
--
Simon Arlott
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]