On Fri, Jan 07, 2011 at 11:27:18AM +0000, Russell King - ARM Linux wrote: > I've not been able to characterize whether it's the TX or RX at fault, > and until I have the OMAP4 device to which the ftdi_sio driver up and > running, that's impossible for me to do. It appears to be the RX side which is getting wedged. Now that my OMAP4 platform boots to a prompt, I've been able to test various things. If I type 'dmesg' then I see it sometimes stop at a random point in the output. If I then exit minicom, I get: ftdi_sio ttyUSB2: ftdi_set_termios FAILED to set databits/stopbits/parity ftdi_sio ttyUSB2: ftdi_set_termios urb failed to set baudrate ftdi_sio ttyUSB2: urb failed to clear flow control ftdi_sio ttyUSB2: error from flowcontrol urb before minicom finally exits and I get a prompt back. If I then restart minicom: qh is 0 ftdi_sio ttyUSB2: ftdi_set_termios FAILED to set databits/stopbits/parity but it appears to be working again. Next time around, I enabled debugging in ftdi_sio. This is everything that remains in the kernel message buffer: o.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_process_packet - port 2 drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET === this is where stuff goes awol === drivers/usb/serial/ftdi_sio.c: ftdi_tiocmget TIOCMGET drivers/usb/serial/ftdi_sio.c: ftdi_ioctl cmd 0x5402 drivers/usb/serial/ftdi_sio.c: ftdi_ioctl arg not supported - it was 0x5402 - check /usr/include/asm/ioctls.h drivers/usb/serial/ftdi_sio.c: ftdi_set_termios drivers/usb/serial/ftdi_sio.c: Setting CS8 ftdi_sio ttyUSB2: ftdi_set_termios FAILED to set databits/stopbits/parity drivers/usb/serial/ftdi_sio.c: get_ftdi_divisor - tty_get_baud_rate reports speed 9600 drivers/usb/serial/ftdi_sio.c: get_ftdi_divisor - Baud rate set to 9600 (divisor 0x204E2) on chip FT4232H ftdi_sio ttyUSB2: ftdi_set_termios urb failed to set baudrate drivers/usb/serial/ftdi_sio.c: ftdi_set_termios Turning off hardware flow control ftdi_sio ttyUSB2: urb failed to clear flow control drivers/usb/serial/ftdi_sio.c: ftdi_ioctl cmd 0x5401 drivers/usb/serial/ftdi_sio.c: ftdi_ioctl arg not supported - it was 0x5401 - check /usr/include/asm/ioctls.h drivers/usb/serial/ftdi_sio.c: ftdi_tiocmset TIOCMSET drivers/usb/serial/ftdi_sio.c: update_mctrl Error from MODEM_CTRL urb: DTR HIGH, RTS HIGH ftdi_sio ttyUSB2: error from flowcontrol urb drivers/usb/serial/ftdi_sio.c: update_mctrl Error from MODEM_CTRL urb: DTR LOW, RTS LOW drivers/usb/serial/ftdi_sio.c: ftdi_close -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html