On Wed, Sep 19, 2001, Edouard Gomez <[EMAIL PROTECTED]> wrote:
>     I'm currently developing an user space driver for Speedtouch USB
> modem (You might have heard of Benoit's Papillault's drivers).
> 
>     I'll try to explain briefly my problem...
> 
> Our driver consists of 2 parts : a firmware loader (modem_run) and a
> pppd pty slave (pppoa).
> 
>    The problem is that we can initialize the modem once, but when we try 
> to reinitialize it, modem_run hangs.
>    So, to avoid this kind of problem we decided to reset the usb modem 
> using this simple ioctl call before reinitializing it:
> 
> ioctl(fd, USBDEVFS_RESET, NULL);
> 
> After that call, the modem disapear from the usbdevfs "devices" file.
> 
> Is this the normal behaviour of usb kernel implementation ?

Absolutely. USBDEVFS_RESET sends a reset down the port that device is
connected to. This should reset the device completely and cause it to
reenumerate.

When it reenumerates, it will have a different device id and thusly, you
need to find it again and open a different filename.

> And what can i do to make the device reappears in the usbdevfs "devices"
> file ?

Well, it should be in there, just at a different id. Take a look at the
system log (run 'dmesg') and see if there are any errors when it
reenumerates.

JE


_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to