USB: fix locking in idmouse
[safe/jmp/linux-2.6] / drivers / usb / atm / usbatm.h
index 0e2caa0..ff8551e 100644 (file)
@@ -34,6 +34,7 @@
 #include <linux/list.h>
 #include <linux/stringify.h>
 #include <linux/usb.h>
+#include <linux/mutex.h>
 
 /*
 #define VERBOSE_DEBUG
@@ -88,6 +89,7 @@
 
 #define UDSL_SKIP_HEAVY_INIT   (1<<0)
 #define UDSL_USE_ISOC          (1<<1)
+#define UDSL_IGNORE_EILSEQ     (1<<2)
 
 
 /* mini driver */
@@ -170,7 +172,7 @@ struct usbatm_data {
         ********************************/
 
        struct kref refcount;
-       struct semaphore serialize;
+       struct mutex serialize;
        int disconnected;
 
        /* heavy init */
@@ -187,6 +189,13 @@ struct usbatm_data {
        struct sk_buff_head sndqueue;
        struct sk_buff *current_skb;    /* being emptied */
 
+       struct usbatm_vcc_data *cached_vcc;
+       int cached_vci;
+       short cached_vpi;
+
+       unsigned char *cell_buf;        /* holds partial rx cell */
+       unsigned int buf_usage;
+
        struct urb *urbs[0];
 };