This patch shows how many configurations a device has,
which will be important for eventual user mode tools
that manage configurations.

- Dave
--- ./drivers/usb-dist/core/driverfs.c  Mon Nov 11 06:37:46 2002
+++ ./drivers/usb/core/driverfs.c       Tue Nov 12 08:11:54 2002
@@ -149,4 +149,5 @@
 usb_descriptor_attr (bDeviceSubClass, "%02x\n")
 usb_descriptor_attr (bDeviceProtocol, "%02x\n")
+usb_descriptor_attr (bNumConfigurations, "%d\n")
 
 
@@ -155,8 +156,11 @@
        struct device *dev = &udev->dev;
 
+       /* current configuration's attributes */
        device_create_file (dev, &dev_attr_bNumInterfaces);
        device_create_file (dev, &dev_attr_bConfigurationValue);
        device_create_file (dev, &dev_attr_bmAttributes);
        device_create_file (dev, &dev_attr_bMaxPower);
+
+       /* device attributes */
        device_create_file (dev, &dev_attr_idVendor);
        device_create_file (dev, &dev_attr_idProduct);
@@ -165,5 +169,9 @@
        device_create_file (dev, &dev_attr_bDeviceSubClass);
        device_create_file (dev, &dev_attr_bDeviceProtocol);
+       device_create_file (dev, &dev_attr_bNumConfigurations);
+
+       /* speed varies depending on how you connect the device */
        device_create_file (dev, &dev_attr_speed);
+       // FIXME iff there are other speed configs, show how many
 
        if (udev->descriptor.iManufacturer)

Reply via email to