Re: 2.4.30 - USB serial problem

From: Ian Abbott
Date: Tue Jun 07 2005 - 04:10:11 EST


On 07/06/2005 09:28, Ian Leonard wrote:
I finally got to the bottom of this problem (with Ian Abbotts help). I had the wrong usb host module loaded, ubci not usb_uhci (in fact it was compiled in to the kernel). The write call to the usbserial device was blocking. This seemed to happen when a data packet of more than 8 bytes was written.

It's actually a problem with queuing more than one bulk URB in the uhci driver. (The TTY line discipline is probably splitting your single write into two or more writes, and the ftdi_sio driver queues an URB for each of these individual writes.)

Having two drivers, one which works sometimes seems to be a bit of an elephant trap.

The recommended advice (from David Brownell) seems to be to avoid queueing more than one bulk URB, though the "alternate" UHCI driver (uhci.o) seems to be the only one with this problem as far as I can tell.

I'll probably implement a different write implementation for the ftdi_sio driver to avoid the problem when I get a bit of free time.

This was an error that occurred when I was preparing the new config file. I would guess I left the usb as the default. It might me better to have no defaults in the config, that way you are forced to make the correct selection.

What is the recommended way of transferring .config files between kernel versions? I see there are always a lot of changes. Can you safely just copy the existing file and then run xconfig to include any new options?

Copy the previous .config across and run 'make oldconfig'.

--
-=( Ian Abbott @ MEV Ltd. E-mail: <abbotti@xxxxxxxxx> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-
-
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/