aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usb.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/usb.h')
-rw-r--r--include/linux/usb.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/usb.h b/include/linux/usb.h
index f3b21636c9df..3cb9285df2d1 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -476,6 +476,8 @@ extern void usb_driver_release_interface(struct usb_driver *driver,
476 struct usb_interface *iface); 476 struct usb_interface *iface);
477const struct usb_device_id *usb_match_id(struct usb_interface *interface, 477const struct usb_device_id *usb_match_id(struct usb_interface *interface,
478 const struct usb_device_id *id); 478 const struct usb_device_id *id);
479extern int usb_match_one_id(struct usb_interface *interface,
480 const struct usb_device_id *id);
479 481
480extern struct usb_interface *usb_find_interface(struct usb_driver *drv, 482extern struct usb_interface *usb_find_interface(struct usb_driver *drv,
481 int minor); 483 int minor);
@@ -724,11 +726,21 @@ static inline int usb_endpoint_is_isoc_out(const struct usb_endpoint_descriptor
724 726
725/* ----------------------------------------------------------------------- */ 727/* ----------------------------------------------------------------------- */
726 728
729/* Stuff for dynamic usb ids */
727struct usb_dynids { 730struct usb_dynids {
728 spinlock_t lock; 731 spinlock_t lock;
729 struct list_head list; 732 struct list_head list;
730}; 733};
731 734
735struct usb_dynid {
736 struct list_head node;
737 struct usb_device_id id;
738};
739
740extern ssize_t usb_store_new_id(struct usb_dynids *dynids,
741 struct device_driver *driver,
742 const char *buf, size_t count);
743
732/** 744/**
733 * struct usbdrv_wrap - wrapper for driver-model structure 745 * struct usbdrv_wrap - wrapper for driver-model structure
734 * @driver: The driver-model core driver structure. 746 * @driver: The driver-model core driver structure.