[PATCH] eagle bulk mode bugfix

Duncan Sands duncan.sands at math.u-psud.fr
Fri Nov 18 09:11:46 EST 2005


Applied with some small changes.  I dropped this bit because
I couldn't see the point of it:

@@ -965,7 +1004,17 @@ static int usbatm_heavy_init(struct usba

 static void usbatm_tasklet_schedule(unsigned long data)
 {
-       tasklet_schedule((struct tasklet_struct *) data);
+       struct usbatm_channel *channel = (struct usbatm_channel *) data;
+
+       if (usb_pipein(channel->endpoint)) {
+               /* when some error occures on urb
+                * don't use old incoming atm cells order */
+               tasklet_disable(&channel->tasklet);
+               channel->usbatm->cell_len = 0;
+               tasklet_enable(&channel->tasklet);
+       }
+
+       tasklet_schedule(&channel->tasklet);
 }

 static inline void usbatm_init_channel(struct usbatm_channel *channel)

Ciao,

D.



More information about the Usbatm mailing list