On Thu, Aug 2, 2012 at 1:07 AM, Pete Batard <p...@akeo.ie> wrote: > Hi Casey, > > On 2012.07.31 04:12, Casey Bajema wrote: >> I'm trying to use a USB device over a Belkin network hub >> <http://www.belkin.com/networkusbhub/> > > That's an interesting device... > >> * The problem seems to be that the network hub doesn't provide a valid >> port number (in the device manager it lists the location as >> "Location 0 (/Device-Name/)" instead of something like >> "Port_#0001.Hub_#0005"). > > Well, the issue is that the hub doesn't provide an SPDRP_ADDRESS when > queried with SetupDiGetDeviceRegistryProperty(), which all USB devices > on Windows are supposed to provide. > > As a matter of fact, returning an invalid port number was identified as > a bug with early NEC USB 3.0 drivers by Microsoft themselves [1]. > Therefore, we can probably qualify this issue as a bug with the Belkin > network hub driver. > > I would strongly suggest then that you contact Belkin support to see if > they can fix this issue. > >> libusbx debug message: >> [ 0.000000] [00001034] libusbx: warning [windows_get_device_list] could >> not retrieve port number for device >> '\\.\USB#VID_04D8&PID_0204#1&79F5D87&0&0000', skipping: [13] The data is >> invalid. >> >> >> This is probably not how libusbx is typically used but is there an easy >> fix or could it be added to a future release? >> >> * Could the lack of a port number be ignored? or the full address >> string be used instead? > > We need a port number here so the full address won't do. I guess we > could force the port number to 1 and try to continue, though there's a > possibility it could create problems down the line. > > Right now my preference would be to see whether Belkin are going to be > responsive in trying to fix their driver (since a virtual USB device > should provide the same attributes as a regular one). If not, then we > can try adding a workaround in libusbx and forcing a port number. > > Regards, > > /Pete > > [1] > http://www.winvistatips.com/spdrp_address-cm_drp_address-returns-0-usb-3-0-controller-t816181.html
This is an old thread. But I just read from OSR nttalk list that Renesas USB 3.0 controller may have similar behavior. Ref: http://www.osronline.com/showthread.cfm?link=239512 USB 2.0 port: USB Composite Device Properties > General Tab > Location = Port_#0001.Hub#0001 USB Composite Device Properties > Details > Location Information = Port_#0001.Hub#0001 USB 3.0 port: USB Composite Device Properties > General Tab > Location = Location 0 (Port_#0004.Hub_#0001) USB Composite Device Properties > Details > Location Information = Port_#0004.Hub_#0001 There is an extra "Location 0" in front for USB 3.0 hub. And Hub #0001 can be refer to the USB 2.0 hub or the USB 3.0 hub. Not so sure how to deal with this issue. One simple solution is to treat them as error but that will disadvantage users of Windows 7 and below who are using the vendor driver. The other solution is to treat Hub Number as a string (Location 0, #001 for the USB 3.0 hub). -- Xiaofan ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel