q: USB_SET_TIMEOUT in ugen.

Weongyo Jeong weongyo.jeong at gmail.com
Wed Mar 18 01:00:20 PDT 2009


Hello,

During porting uath(4) to usb2 I found the following code failed to run:

	data = open("/dev/usb/0.2.2", O_WRONLY, 0);
	timeout = UATH_DATA_TIMEOUT;
	if (ioctl(data, USB_SET_TIMEOUT, &timeout) < 0)
		err(-1, "%s: USB_SET_TIMEOUT(%u)", datadev,
		    UATH_DATA_TIMEOUT);

and the error was:

	uathload: /dev/usb/0.2.2: USB_SET_TIMEOUT(1000): Invalid
        argument

It looks it's ok with calling ioctl(msg, USB_SET_TIMEOUT, ..) to
/dev/usb/0.2.1

And the behaviour of program isn't likely with usb1 that it worked well
in usb1.  After writing some data into msg and data pipe there was no
any response using read(2).  The problem source can be found at:.

	http://perforce.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/user/weongyo/wireless/src/usr.sbin/uathload&HIDEDEL=NO

Are there something I missed in here?

regards,
Weongyo Jeong



More information about the freebsd-usb mailing list