Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Jun 2010 09:28:09 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        "Marcelo/Porks" <marcelorossi@gmail.com>
Cc:        Garrett Cooper <yanefbsd@gmail.com>, freebsd-current@freebsd.org
Subject:   Re: Fwd: umodem (4) recognize a CDC-ACM device
Message-ID:  <201006040928.09768.hselasky@c2i.net>
In-Reply-To: <AANLkTikNX0D6u2kH8VkTklXsAgpl7aLZzD03gxZJhkdH@mail.gmail.com>
References:  <AANLkTinuhcIfsFvowzbsDJWy-gqob40oNxUPN-OvXc2E@mail.gmail.com> <201006031757.03341.hselasky@c2i.net> <AANLkTikNX0D6u2kH8VkTklXsAgpl7aLZzD03gxZJhkdH@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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 that
> >> > > > 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":
> >
> >        static const uint16_t bulk_min[USB_SPEED_MAX] = {
> >                [USB_SPEED_LOW] = 8,
> >                [USB_SPEED_FULL] = 8,
> >                [USB_SPEED_HIGH] = 512,
> >                [USB_SPEED_VARIABLE] = 512,
> >                [USB_SPEED_SUPER] = 1024,
> >        };
> > --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] = 0,    /* not supported */
> 
> To:
> [USB_SPEED_LOW] = 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}

                case UE_BULK:
                        if (udev->speed != USB_SPEED_LOW) {
                                ep->methods = &uhci_device_bulk_methods;
                        }
                        break;

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006040928.09768.hselasky>