On 01/10/2010 03:31, Chris Frey wrote: > On Thu, Sep 30, 2010 at 02:16:32PM +0100, Toby Gray wrote: >> 2) Change the probing code in src/probe.cc so that it tries probing the >> end points without a call to SET INTERFACE and then, if those probes >> fail, calls SET INTERFACE and probes again. I think it's probably best >> to probe all the end points and then call SET INTERFACE, rather than >> doing a probe, SET INTERFACE, and then a re-probe for each end point in >> turn. This would still have the usb-storage issue, but only for users >> where calling SET INTERFACE is necessary. > >> 4) Removing the calls to ClearHalt in Probe::PairProbe() and >> Controller::SetupUsb() also fixes this issue without needing to call SET >> INTERFACE. However the calls to ClearHalt are there to support the 8830 >> which does need them, so I'd suggest having the Probe::PairProbe() try >> to probe without clearing halt and then, if that fails, retrying after >> clearing halt. The ProbeResult would then contain whether clearing halt >> was necessary or not for that device, which would be used by >> Controller::SetupUsb() to determine if ClearHalt should be called. >> >> What's your feeling on which of these options is best? I would >> personally favour 4 as it seems to work nicely on the range of >> BlackBerry devices that I've tried. > Options 2 and 4 sound like the smartest options. Am I correct in assuming > that option #4 would fix the usb-storage problem as well? Yes. Sorry, I missed out that rather essential bit of information :) Option #4 fixes both the time out issue on some machines (which was previously fixed by SET INTERFACE) and the usb-storage issue (which is caused by SET INTERFACE). > I'd pick 4, with lots of comments in the code to explain why. :-) I was hoping you'd say go for 4. I've submitted it to my github branch as c869133cae5f3b27b321. I've tested it with a range of OS v4 and OS v5 devices inside and outside of a VM and it works nicely.
I'm half tempted to add in option 2 as well, just to be sure that Barry tries as hard as possible to work, even if it causes some issues with usb-storage. What do you think? Regards, Toby ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel