From 1fcec6d4057b6d269394630e7ed4dc7b5e377948 Mon Sep 17 00:00:00 2001 From: matthieu castet Date: Sun, 2 Apr 2006 18:44:20 +0200 Subject: [PATCH] --- yaml --- r: 25739 b: refs/heads/master c: 22fcceb546227a4c557d1844c1796c13a5086c9f h: refs/heads/master i: 25737: 7081a68363d80be2e13b43cea987fc5af38ccd44 25735: a5cf96b5c1bd0d3da4e7c2a6850e992a6b3eeba2 v: v3 --- [refs] | 2 +- trunk/drivers/usb/atm/ueagle-atm.c | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 2684bbdec47f..d9110a44c791 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2a99b50719d3bff0a090fa8daf56d519c338296c +refs/heads/master: 22fcceb546227a4c557d1844c1796c13a5086c9f diff --git a/trunk/drivers/usb/atm/ueagle-atm.c b/trunk/drivers/usb/atm/ueagle-atm.c index 8ec9e031e0d1..602be5488c9d 100644 --- a/trunk/drivers/usb/atm/ueagle-atm.c +++ b/trunk/drivers/usb/atm/ueagle-atm.c @@ -243,7 +243,7 @@ enum { #define BULK_TIMEOUT 300 #define CTRL_TIMEOUT 1000 -#define ACK_TIMEOUT msecs_to_jiffies(1500) +#define ACK_TIMEOUT msecs_to_jiffies(3000) #define UEA_INTR_IFACE_NO 0 #define UEA_US_IFACE_NO 1 @@ -1079,7 +1079,13 @@ static int uea_start_reset(struct uea_softc *sc) uea_enters(INS_TO_USBDEV(sc)); uea_info(INS_TO_USBDEV(sc), "(re)booting started\n"); + /* mask interrupt */ sc->booting = 1; + /* We need to set this here because, a ack timeout could have occured, + * but before we start the reboot, the ack occurs and set this to 1. + * So we will failed to wait Ready CMV. + */ + sc->cmv_ack = 0; UPDATE_ATM_STAT(signal, ATM_PHY_SIG_LOST); /* reset statistics */ @@ -1105,6 +1111,7 @@ static int uea_start_reset(struct uea_softc *sc) msleep(1000); sc->cmv_function = MAKEFUNCTION(ADSLDIRECTIVE, MODEMREADY); + /* demask interrupt */ sc->booting = 0; /* start loading DSP */