aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/atm/usbatm.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/atm/usbatm.h')
-rw-r--r--drivers/usb/atm/usbatm.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/usb/atm/usbatm.h b/drivers/usb/atm/usbatm.h
index ebb79da4cb15..b29eb807f203 100644
--- a/drivers/usb/atm/usbatm.h
+++ b/drivers/usb/atm/usbatm.h
@@ -84,6 +84,11 @@
84#endif 84#endif
85 85
86 86
87/* flags, set by mini-driver in bind() */
88
89#define UDSL_SKIP_HEAVY_INIT (1<<0)
90
91
87/* mini driver */ 92/* mini driver */
88 93
89struct usbatm_data; 94struct usbatm_data;
@@ -99,12 +104,9 @@ struct usbatm_driver {
99 104
100 const char *driver_name; 105 const char *driver_name;
101 106
102 /* 107 /* init device ... can sleep, or cause probe() failure */
103 * init device ... can sleep, or cause probe() failure. Drivers with a heavy_init
104 * method can avoid having it called by setting need_heavy_init to zero.
105 */
106 int (*bind) (struct usbatm_data *, struct usb_interface *, 108 int (*bind) (struct usbatm_data *, struct usb_interface *,
107 const struct usb_device_id *id, int *need_heavy_init); 109 const struct usb_device_id *id);
108 110
109 /* additional device initialization that is too slow to be done in probe() */ 111 /* additional device initialization that is too slow to be done in probe() */
110 int (*heavy_init) (struct usbatm_data *, struct usb_interface *); 112 int (*heavy_init) (struct usbatm_data *, struct usb_interface *);
@@ -152,6 +154,7 @@ struct usbatm_data {
152 struct usbatm_driver *driver; 154 struct usbatm_driver *driver;
153 void *driver_data; 155 void *driver_data;
154 char driver_name[16]; 156 char driver_name[16];
157 unsigned int flags; /* set by mini-driver in bind() */
155 158
156 /* USB device */ 159 /* USB device */
157 struct usb_device *usb_dev; 160 struct usb_device *usb_dev;