diff options
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/ipxe/usb.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/include/ipxe/usb.h b/src/include/ipxe/usb.h index 50d8a6fd8..d326678c8 100644 --- a/src/include/ipxe/usb.h +++ b/src/include/ipxe/usb.h @@ -916,6 +916,8 @@ struct usb_bus { /** Root hub */ struct usb_hub *hub; + /** List of USB buses */ + struct list_head list; /** List of devices */ struct list_head devices; /** List of hubs */ @@ -999,6 +1001,10 @@ usb_poll ( struct usb_bus *bus ) { bus->host->poll ( bus ); } +/** Iterate over all USB buses */ +#define for_each_usb_bus( bus ) \ + list_for_each_entry ( (bus), &usb_buses, list ) + /** * Complete transfer (without error) * @@ -1182,6 +1188,8 @@ usb_set_interface ( struct usb_device *usb, unsigned int interface, NULL, 0 ); } +extern struct list_head usb_buses; + extern struct usb_interface_descriptor * usb_interface_descriptor ( struct usb_configuration_descriptor *config, unsigned int interface, unsigned int alternate ); |
