On Tue, 2012-04-24 at 10:16 +0800, Wang YanQing wrote: > On Mon, Apr 23, 2012 at 11:13:06AM -0400, Alan Stern wrote: > > The port numbers are determined by the hardware -- each set of wires > > has its own port number. The numbers have nothing to do with > > bandwidth. > Could you figure out the codes in kernel that read out the port number from > hub, if there is a piece of codes do that things? The USB specification Table 11-13 describes the hub descriptor in detail. The following data structure struct usb_hub_descriptor defined in "drivers/usb/core/hub.h" of Linux Kernel source contains information about the hub descriptor, struct usb_hub_descriptor { _u8 bDescLength; _u8 bDescriptorType; _u8 bNbrPorts; _le16 wHubCharacteristics; _u8 bPwrOn2PwrGood; _u8 bHubContrCurrent; } The bNbrPorts member contains information on the number of downstream-facing ports the hub supports. The structure which i have provided is in reference to Linux Kernel Version 2.6 series for Linux Kernel Version 3.0+, Please consult an expert. Is this information you wanted? Regards Anil Nair -- -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html