A few days back, I reported that my Anydata ADU-E100A CDMA/EV-DO modem works better with the option driver than with the anydata driver. I now understand better why.
Using the option driver fixed a bug which forced me to cycle power between closing a ppp connection and opening it again. It also had better througput than anydata, even with buffer_size=4096 for anydata. The reason that repeated connections work is that option implements TIOCMSET for RTS and DTR, in a way which works for the Anydata modem. I was able to make the anydata driver close and open connections properly by copying the TIOCMSET handler and the necessary state data from the option driver. As another experiment, I added the TIOCMSET handler to the airprime_major_update patch. airprime was now able to handle the Anydata modem and close and open connections properly. option implements TIOCMSET be sending an usb_control_msg with the same request and requesttype as the pl2303 driver uses. Perhaps there is a PL2303 inside these devices. As for throughput, option is best, followed by airprime, anydata with buffer_size=4096 and in last place anydata with default buffers. I've proposed removing the anydata driver and letting the option driver handle Anydata modems. I still stand by the proposal. See Matthias Urlichs's patch from July 12. I've also speculated about whether the airprime and option drivers ought to be merged, but I don't know whether that makes sense. Do the devices which airprime handles also need modem control line handling? ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel