Re: [PATCH] Airprime driver improvements to allow full speed EvDOtransfers
From: Andy Gay
Date: Tue Jul 11 2006 - 14:54:25 EST
On Tue, 2006-07-11 at 22:31 +0400, Sergei Organov wrote:
> Andy Gay <andy@xxxxxxxxxxx> writes:
> > Adapted from an earlier patch by Greg KH <gregkh@xxxxxxx>.
> > That patch added multiple read urbs and larger transfer buffers to allow
> > data transfers at full EvDO speed.
>
> Below are two more problems with the patch, one of which existed in the
> original Greg's patch resulting in return with "Message too long"
> (EMSGSIZE) from driver's open() function.
>
> [...]
>
> > + /* something happened, so free up the memory for this urb /*
>
> There should be '*/' at the end of this line, not '/*', otherwise the
> driver even doesn't compile.
Sure. I posted an updated version including that fix -
http://lkml.org/lkml/2006/7/3/280
>
> [...]
> > +static int airprime_open(struct usb_serial_port *port, struct file *filp)
> > +{
> [...]
> > + usb_fill_bulk_urb(urb, serial->dev,
> > + usb_rcvbulkpipe(serial->dev,
> > + port->bulk_out_endpointAddress),
>
> Here, it should obviously be port->bulk_in_endpointAddress, not
> port->bulk_out_endpointAddress, otherwise devices that have endpoints
> numeration like, say 0x01-out, 0x82-in (unlike more usual usual
> 0x01-out, 0x81-in), won't work returning -EMSGSIZE from open().
Sounds correct. Good catch!
>
> After these fixes, I've been able to run the driver with my own USB
> device and achieved about 320 Kbytes/s read speed. That's still not very
> exciting as I have another driver here in development that seems to be
> able to do about 650 Kbytes/s with the same device.
>
Nice. That's over 5Mbits/sec!
Is that on an EvDO network? I didn't know they could go that fast. The
EvDO network I'm testing on can only manage about 1Mbit/sec at best.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/