aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usb/composite.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/usb/composite.h')
-rw-r--r--include/linux/usb/composite.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/usb/composite.h b/include/linux/usb/composite.h
index 738ea1a691cb..617068134ae8 100644
--- a/include/linux/usb/composite.h
+++ b/include/linux/usb/composite.h
@@ -247,6 +247,7 @@ int usb_add_config(struct usb_composite_dev *,
247 * value; it should return zero on successful initialization. 247 * value; it should return zero on successful initialization.
248 * @unbind: Reverses @bind(); called as a side effect of unregistering 248 * @unbind: Reverses @bind(); called as a side effect of unregistering
249 * this driver. 249 * this driver.
250 * @disconnect: optional driver disconnect method
250 * @suspend: Notifies when the host stops sending USB traffic, 251 * @suspend: Notifies when the host stops sending USB traffic,
251 * after function notifications 252 * after function notifications
252 * @resume: Notifies configuration when the host restarts USB traffic, 253 * @resume: Notifies configuration when the host restarts USB traffic,
@@ -276,6 +277,8 @@ struct usb_composite_driver {
276 int (*bind)(struct usb_composite_dev *); 277 int (*bind)(struct usb_composite_dev *);
277 int (*unbind)(struct usb_composite_dev *); 278 int (*unbind)(struct usb_composite_dev *);
278 279
280 void (*disconnect)(struct usb_composite_dev *);
281
279 /* global suspend hooks */ 282 /* global suspend hooks */
280 void (*suspend)(struct usb_composite_dev *); 283 void (*suspend)(struct usb_composite_dev *);
281 void (*resume)(struct usb_composite_dev *); 284 void (*resume)(struct usb_composite_dev *);
@@ -326,6 +329,7 @@ struct usb_composite_dev {
326 329
327 /* private: */ 330 /* private: */
328 /* internals */ 331 /* internals */
332 unsigned int suspended:1;
329 struct usb_device_descriptor desc; 333 struct usb_device_descriptor desc;
330 struct list_head configs; 334 struct list_head configs;
331 struct usb_composite_driver *driver; 335 struct usb_composite_driver *driver;
@@ -341,6 +345,10 @@ struct usb_composite_dev {
341}; 345};
342 346
343extern int usb_string_id(struct usb_composite_dev *c); 347extern int usb_string_id(struct usb_composite_dev *c);
348extern int usb_string_ids_tab(struct usb_composite_dev *c,
349 struct usb_string *str);
350extern int usb_string_ids_n(struct usb_composite_dev *c, unsigned n);
351
344 352
345/* messaging utils */ 353/* messaging utils */
346#define DBG(d, fmt, args...) \ 354#define DBG(d, fmt, args...) \