summaryrefslogtreecommitdiffstats
path: root/drivers/usb/usb-debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/usb-debug.c')
-rw-r--r--drivers/usb/usb-debug.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/drivers/usb/usb-debug.c b/drivers/usb/usb-debug.c
index 86d08cd78..084afcf14 100644
--- a/drivers/usb/usb-debug.c
+++ b/drivers/usb/usb-debug.c
@@ -24,11 +24,18 @@ static void usb_show_interface(struct usb_interface_descriptor *interface)
static void usb_show_config(struct usb_config_descriptor *config)
{
- int i;
-
- usb_show_config_descriptor(config);
- for (i = 0 ; i < config->bNumInterfaces; i++)
- usb_show_interface(config->interface + i);
+ int i, j;
+ struct usb_alternate_setting *as;
+
+ usb_show_config_descriptor(config);
+ for (i = 0; i < config->num_altsetting; i++) {
+ as = config->altsetting + i;
+ if ((as) == NULL)
+ break;
+ printk("\n Alternate Setting: %d\n", i);
+ for (j = 0 ; j < config->bNumInterfaces; j++)
+ usb_show_interface(as->interface + j);
+ }
}
void usb_show_device(struct usb_device *dev)
@@ -124,4 +131,8 @@ void usb_show_hub_descriptor(struct usb_hub_descriptor * desc)
printk("\n");
}
-
+void usb_show_string(struct usb_device* dev, char *id, int index)
+{
+ if (index <= dev->maxstring && dev->stringindex && dev->stringindex[index])
+ printk("%s: %s\n", id, dev->stringindex[index]);
+}