Date: Fri, 4 Jun 2010 12:32:58 -0300 From: "Marcelo/Porks" <marcelorossi@gmail.com> To: Hans Petter Selasky <hselasky@c2i.net> Cc: Garrett Cooper <yanefbsd@gmail.com>, freebsd-current@freebsd.org Subject: Re: Fwd: umodem (4) recognize a CDC-ACM device Message-ID: <AANLkTildmORfr1xk2n1V2mEc4ZvDMxk9J1R1zmWiD5J9@mail.gmail.com> In-Reply-To: <201006040928.09768.hselasky@c2i.net> References: <AANLkTinuhcIfsFvowzbsDJWy-gqob40oNxUPN-OvXc2E@mail.gmail.com> <201006031757.03341.hselasky@c2i.net> <AANLkTikNX0D6u2kH8VkTklXsAgpl7aLZzD03gxZJhkdH@mail.gmail.com> <201006040928.09768.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 4, 2010 at 4:28 AM, Hans Petter Selasky <hselasky@c2i.net> wrot= e: > On Friday 04 June 2010 03:02:52 Marcelo/Porks wrote: >> On Thu, Jun 3, 2010 at 12:57 PM, Hans Petter Selasky <hselasky@c2i.net> > wrote: >> > On Thursday 03 June 2010 17:54:17 Hans Petter Selasky wrote: >> >> On Thursday 03 June 2010 17:50:08 Hans Petter Selasky wrote: >> >> > On Thursday 03 June 2010 16:22:33 Marcelo/Porks wrote: >> >> > > On Wed, Jun 2, 2010 at 1:25 PM, Hans Petter Selasky >> >> > > <hselasky@c2i.net> >> >> > >> >> > wrote: >> >> > > > Hi, >> >> > > > >> >> > > > The problem is that LOW speed does not support BULK transfers >> >> > > > according to the USB specification. I guess we could switch tha= t >> >> > > > support on, though I'd rather stick with the spec. >> >> > > > >> >> > > > Try changing this line in: >> >> > > > >> >> > > > src/sys/dev/usb/usb_transfer.c >> > >> > Hi, >> > >> > Should be like this: Note the structure is called "bulk_min": >> > >> > =A0 =A0 =A0 =A0static const uint16_t bulk_min[USB_SPEED_MAX] =3D { >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[USB_SPEED_LOW] =3D 8, >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[USB_SPEED_FULL] =3D 8, >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[USB_SPEED_HIGH] =3D 512, >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[USB_SPEED_VARIABLE] =3D 512, >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[USB_SPEED_SUPER] =3D 1024, >> > =A0 =A0 =A0 =A0}; >> > --HPS >> >> Hi, This was what I changed at first. I tried in a FreeBSD current >> (Jun 3) and at 8.0-p3. >> >> At FreeBSD current I changed the line 3062. >> >> From: >> [USB_SPEED_LOW] =3D 0, =A0 =A0/* not supported */ >> >> To: >> [USB_SPEED_LOW] =3D 8, >> >> >> Like you suggested I'll try to talk with you in #bsdusb at efnet >> >> Thank you! > > Ok, > > I think you also need to remove the check for LOW speed in the EHCI/OHCI/= UHCI > controller drivers too. See usb/controller/{ehci.c,uhci.c,ohci.c} > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0case UE_BULK: > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if (udev->speed !=3D USB_S= PEED_LOW) { > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0ep->method= s =3D &uhci_device_bulk_methods; > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0} > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0break; > > --HPS > Hia Hans! It seems to work now or at least it was recognized. I'll make more tests on Monday and post the results. Thank you so much. again! BARAD-DUR# uname -a FreeBSD BARAD-DUR.BUTECO 9.0-CURRENT FreeBSD 9.0-CURRENT #1 r208760M: Fri Jun 4 12:16:35 BRT 2010 porks@BARAD-DUR.BUTECO:/usr/obj/mnt/ad2s1d/data/src/sys/BARAD-DUR i386 BARAD-DUR# kldload umodem BARAD-DUR# kldstat Id Refs Address Size Name 1 29 0xc0400000 757368 kernel 2 1 0xc0b58000 5ad4 snd_cmi.ko 3 3 0xc0b5e000 574a4 sound.ko 4 1 0xc0bb6000 4dfa90 nvidia.ko 5 3 0xc1096000 2eacc linux.ko 6 1 0xc4407000 8000 linprocfs.ko 7 1 0xc474f000 3000 logo_saver.ko 8 1 0xc4d54000 4000 umodem.ko < DEVICE PLUGGED ON USB PORT > BARAD-DUR# tail -f /var/log/messages Jun 4 12:27:14 BARAD-DUR kernel: uhub_reattach_port: port 1 reset failed, error=3DUSB_ERR_TIMEOUT Jun 4 12:27:14 BARAD-DUR kernel: uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 1 Jun 4 12:27:15 BARAD-DUR kernel: ugen0.3: <www.recursion.jp> at usbus0 Jun 4 12:27:15 BARAD-DUR kernel: umodem0: <www.recursion.jp USB-232, class 2/0, rev 1.10/1.00, addr 3> on usbus0 Jun 4 12:27:15 BARAD-DUR kernel: umodem0: data interface 1, has CM over data, has no break BARAD-DUR# ls -lah /dev/cuaU* crw-rw---- 1 uucp dialer 0, 114 Jun 4 12:27 /dev/cuaU0 crw-rw---- 1 uucp dialer 0, 115 Jun 4 12:27 /dev/cuaU0.init crw-rw---- 1 uucp dialer 0, 116 Jun 4 12:27 /dev/cuaU0.lock < DEVICE PLUGED OFF USB PORT> BARAD-DUR# tail -f /var/log/messages Jun 4 12:30:15 BARAD-DUR kernel: ugen0.3: <www.recursion.jp> at usbus0 (disconnected) Jun 4 12:30:15 BARAD-DUR kernel: umodem0: at uhub0, port 1, addr 3 (disconnected) BARAD-DUR# ls -lah /dev/cuaU* zsh: no matches found: /dev/cuaU* --=20 Marcelo Rossi "This e-mail is provided "AS IS" with no warranties, and confers no rights.= "
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTildmORfr1xk2n1V2mEc4ZvDMxk9J1R1zmWiD5J9>