On Friday 03 August 2007, gutian abei wrote: > I am trying to develop a USB device driver in Linux platform. > Our device has the ability of re-enumeration.
Like the Cypress chips, which use one device ID before the firmware is loaded and then another one later after it restarts with that new firmware? The "fxload" tool can be used to put new firmware into those devices. > That is when our device plug > into host PC it reports a vid/pid, for example 0xaaaa/0xbbbb, after 10 > seconds it changes the state of D+ and D- to let PC enumerate it > again, and it reports a new vid/pid, for example 0xcccc/0xdddd. > Then our device uses 0xcccc/0xdddd to play with host PC. So the question is: Why doesn't it come up as cccc/dddd in the first place? If it just randomly decides to switch IDs, it sounds like "broken by design" hardware. But I suspect there's actually a purpose to it ... one which you don't yet understand. > But in my Fedora 7 system(I install it today, not update yet!), it doesn't > enumerate the second vid/pid. It just enumerate the first > vid/pid(0xaaaa/0xbbbb). I use usbview tool to test my device. > Does anyone have experience to resolve it? So this question doesn't have even the least bit to do with selective suspend, then. Use accurate $SUBJECT lines. ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel