umodem (4) recognize a CDC-ACM device

From: Marcelo/Porks <marcelorossi_at_gmail.com>
Date: Tue, 1 Jun 2010 21:41:32 -0300
Hi guys. I have a device[1] that is recognized on Linux by the generic
CDC-ACM driver and I'm trying to do the same on FreeBSD current with
umodem (4). But, as you can see, I had no success:

Jun  1 20:00:54 BARAD-DUR kernel: uhub_reattach_port: port 1 reset
failed, error=USB_ERR_TIMEOUT
Jun  1 20:00:54 BARAD-DUR kernel: uhub_reattach_port: device problem
(USB_ERR_TIMEOUT), disabling port 1
Jun  1 20:00:55 BARAD-DUR kernel: ugen0.3: <www.recursion.jp> at usbus0
Jun  1 20:00:55 BARAD-DUR kernel: umodem0: <www.recursion.jp USB-232,
class 2/0, rev 1.10/1.00, addr 3> on usbus0
Jun  1 20:00:55 BARAD-DUR kernel: umodem0: data interface 1, has CM
over data, has no break
Jun  1 20:00:55 BARAD-DUR kernel: device_attach: umodem0 attach returned 6
Jun  1 20:00:55 BARAD-DUR kernel: umodem0: <www.recursion.jp USB-232,
class 2/0, rev 1.10/1.00, addr 3> on usbus0
Jun  1 20:00:55 BARAD-DUR kernel: umodem0: data interface 1, has CM
over data, has no break
Jun  1 20:00:55 BARAD-DUR kernel: device_attach: umodem0 attach returned 6

Have you some tip for me to make this work on FreeBSD?

I had put some 'printf' at the source code and noticed that
umodem_attach() failed at line 378 [2]. The main reason is basically
that the usbd_transfer_setup() got an endpoint [3] with 'ep->methods
== NULL' [4] and this leads to "USB_ERR_NO_PIPE" on [5].

Thanks.

[1] http://www.recursion.jp/avrcdc/driver.html#linux
[2] http://fxr.watson.org/fxr/source/dev/usb/serial/umodem.c#L378
[3] http://fxr.watson.org/fxr/source/dev/usb/usb_transfer.c#L877
[4] http://fxr.watson.org/fxr/source/dev/usb/usb_transfer.c#L880
[5] http://fxr.watson.org/fxr/source/dev/usb/usb_transfer.c#L886

-- 
Marcelo Rossi
"This e-mail is provided "AS IS" with no warranties, and confers no rights."
Received on Tue Jun 01 2010 - 22:41:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:04 UTC